Forum: RSpec Rspec 2, Rails 3 and Webrat

1a1551a3a11e750cd46e5699cb175941?d=identicon&s=25 Rodrigo Rosenfeld Rosas (Guest)
on 2010-06-11 04:46
(Received via mailing list)
Hi guys,

I'm trying to port an application to Rails 3 but can't get my
integration tests to run.

I can't call the Webrat's method (yields 'undefined method `visit`', for
instance). I don't use Cucumber.

Is there any instructions about how to configure Rspec 2 with Webrat on
Rails 3?

I also have a custom helper that is not working:

"config.include MyApp::IntegrationHelper, :type => :integration" (the
methods defined in this module are not available in the specs)

Any ideas?

Thanks,

Rodrigo.

__________________________________________________
Faça ligações para outros computadores com o novo Yahoo! Messenger
http://br.beta.messenger.yahoo.com/
5d38ab152e1e3e219512a9859fcd93af?d=identicon&s=25 David Chelimsky (Guest)
on 2010-06-11 06:35
(Received via mailing list)
Change the directory name to requests  (a la merb)

Sent from my iPhone

On Jun 10, 2010, at 10:35 PM, Rodrigo Rosenfeld Rosas
<lbocseg@yahoo.com.br
1a1551a3a11e750cd46e5699cb175941?d=identicon&s=25 Rodrigo Rosenfeld Rosas (Guest)
on 2010-06-11 19:39
(Received via mailing list)
Now I'm getting:

no such file to load -- action_controller/integration

Am I missing something?

Thanks,

Rodrigo.

P.S.: Sorry if this was sent twice...

Em 11-06-2010 01:10, David Chelimsky escreveu:
1a1551a3a11e750cd46e5699cb175941?d=identicon&s=25 Rodrigo Rosenfeld Rosas (Guest)
on 2010-06-11 19:48
(Received via mailing list)
Also, changing the directory name didn't affect the custom
IntegrationHelper issue...

Rodrigo.

Em 11-06-2010 01:10, David Chelimsky escreveu:
3203ed0e608d3bfae1e31282e629ffa2?d=identicon&s=25 Peter Fitzgibbons (Guest)
on 2010-06-11 19:48
(Received via mailing list)
remove the :type key from your describe line (it's no longer needed).

Peter Fitzgibbons
(847) 859-9550
peter.fitzgibbons@gmail.com
IM GTalk: peter.fitzgibbons
IM AOL: peter.fitzgibbons@gmail.com
1a1551a3a11e750cd46e5699cb175941?d=identicon&s=25 Rodrigo Rosenfeld Rosas (Guest)
on 2010-06-11 19:51
(Received via mailing list)
Now I'm getting:

no such file to load -- action_controller/integration

Am I missing something?

Thanks,

Rodrigo.

Em 11-06-2010 01:10, David Chelimsky escreveu:
5d38ab152e1e3e219512a9859fcd93af?d=identicon&s=25 David Chelimsky (Guest)
on 2010-06-11 20:29
(Received via mailing list)
Sent from my iPhone

On Jun 11, 2010, at 1:30 PM, Rodrigo Rosenfeld Rosas
<lbocseg@yahoo.com.br
 > wrote:

> Now I'm getting:
>
> no such file to load -- action_controller/integration

Backtrace, please
1a1551a3a11e750cd46e5699cb175941?d=identicon&s=25 Rodrigo Rosenfeld Rosas (Guest)
on 2010-06-12 05:15
(Received via mailing list)
Thank you, Peter.

Rodrigo.

Em 11-06-2010 14:45, Peter Fitzgibbons escreveu:
1a1551a3a11e750cd46e5699cb175941?d=identicon&s=25 Rodrigo Rosenfeld Rosas (Guest)
on 2010-06-12 05:19
(Received via mailing list)
Apparently Webrat is not yet compatible with Rails 3:

http://github.com/brynary/webrat/blob/master/lib/w...

line 2: require "action_controller/integration"

action_controller/integration.rb does exist in Rails 2 but not in Rails
3, but I didn't find any branch for Rails 3 in webrat's repository.

I'll give Capybara another try. I had already tried it before but didn't
change to it because I couldn't get the Drag & Drop javascript test to
work anyway, but it seems to be a good replacement to Webrat's and there
seems to be plans to merge them...

Does anyone here use Capybara with Rspec2 and Rails 3 without Cucumber
to write integration tests successfully?

Thanks,

Rodrigo.

Em 11-06-2010 14:44, David Chelimsky escreveu:
5d38ab152e1e3e219512a9859fcd93af?d=identicon&s=25 David Chelimsky (Guest)
on 2010-06-17 16:22
(Received via mailing list)
On Jun 11, 2010, at 10:17 PM, Rodrigo Rosenfeld Rosas wrote:

> Apparently Webrat is not yet compatible with Rails 3:

This is incorrect. It's just that webrat needs to be configured for
:rack instead of :rails:

      Webrat.configure do |config|
        config.mode = :rack
      end

Since you're porting an app, there is probably some code somewhere that
says this instead

      # DO NOT DO THIS WITH RAILS 3
      Webrat.configure do |config|
        config.mode = :rails
      end

Get rid of that and you should be fine.
F91e2e6dd3f18dd4439ecee9382dbf9a?d=identicon&s=25 Miriam (Guest)
on 2010-06-25 04:00
(Received via mailing list)
I'm having the same problem the OP mentions -- undefined method
"visit"

Trying to upgrade from Rails 2.3 to Rails 3.0.beta4

My test stack:
webrat (0.7.1)
cucumber (0.8.3)
pickle (0.2.1)
factory_girl (1.3.0)
factory_girl_rails (1.0)

I changed config.mode = :rack, as suggested, but I"m still getting the
error.

This is what I have in features/support/env.rb:

require 'webrat'
require 'webrat/core/matchers'

Webrat.configure do |config|
  config.mode = :rack
  config.open_error_files = false # Set to true if you want error
pages to pop up in the browser
end

This is the error I'm getting:

    Given I am logged in as a
buyer                                                      # features/
step_definitions/user_steps.rb:15
      undefined method `visit' for #<Cucumber::Rails::World:0xd2f8a2>
(NoMethodError)
      ./features/step_definitions/user_steps.rb:6:in `log_out'
      ./features/step_definitions/user_steps.rb:37:in `do_login'
      ./features/step_definitions/user_steps.rb:17:in `/^I\ am\ logged
\ in\ as\ a\ (.*)$/'
      features/buyer_account.feature:7:in `Given I am logged in as a
buyer'
5d38ab152e1e3e219512a9859fcd93af?d=identicon&s=25 David Chelimsky (Guest)
on 2010-06-25 04:14
(Received via mailing list)
On Jun 22, 2010, at 11:10 AM, Miriam wrote:

> factory_girl_rails (1.0)
>  config.mode = :rack
> (NoMethodError)
>      ./features/step_definitions/user_steps.rb:6:in `log_out'
>      ./features/step_definitions/user_steps.rb:37:in `do_login'
>      ./features/step_definitions/user_steps.rb:17:in `/^I\ am\ logged
> \ in\ as\ a\ (.*)$/'
>      features/buyer_account.feature:7:in `Given I am logged in as a
> buyer'

Up until now, this thread has been about an issue with RSpec. You are
having an issue with Cucumber. I'd recommend posting it to the Cucumber
google group:

http://groups.google.com/group/cukes

I'm sure someone there can advise.

Cheers,
David
Bf692152efd523ca6ede90c4cd220804?d=identicon&s=25 Ruben C. (ruben_c)
on 2010-11-12 16:23
I did this with webrat 0.7.2, rails 3.0.1, test-unit 2.1.1:

require "webrat"
require 'webrat/core/matchers'
include Webrat::Methods

Webrat.configure do |config|
  config.mode = :rack
end

and for now I can run tests like this:

test "testing_webrat_visit" do
  visit 'home/index'
end

maybe some methods from webrat won't work, but I haven't found them yet.
This topic is locked and can not be replied to.