[wtr-general] Re: Watir-rspec still requires browser variables when executing browser methods?

2014-03-22 Thread Jarmo Pertman
I'd recommend you to move your browser-based specs to requests/integration 
directory instead, because this is what rspec-rails expects and gives you 
some additional helpers. Here's the relevant code:
https://github.com/rspec/rspec-rails/blob/master/lib/rspec/rails/example.rb#L46-L51

Also, in that way you don't have to change the watir-rspec config as well.

Jarmo

On Thursday, March 20, 2014 3:27:19 PM UTC+2, Arjen Ruiterkamp wrote:

 Ok, the problem apparently was with the tests being in 
 the/spec/acceptancefolder. The Rspec configuration isn't loaded for custom 
 folders by default..

 Basically I had to change all the config.include lines in spec_helper.rbfrom:
 config.include Watir::RSpec::Helper, :type = :request
 to
 config.include Watir::RSpec::Helper, :type = :acceptance 

 and in google_spec.rb change:
 describe Google do
 to
 describe Google, :type = :acceptance do

 On Wednesday, March 19, 2014 2:18:35 PM UTC+1, Arjen Ruiterkamp wrote:

 Hello,

 I am fairly new to Ruby and trying to setup some acceptance tests using 
 the watir-rspec gem.

 Now https://github.com/watir/watir-rspec states:

- No need to use the @browser or $browser variables when executing 
browser methods.

 However, this doesn't seem to work for me.

 What I've done so far:
 rails new hello_world

 Then added to the gemfile:
 group :test do
   gem rspec-rails
   gem watir-rspec
   gem watir-rails
 end

 Execute:
 bundle install
 rails generate rspec:install
 watir-rspec install

 This all seems to work fine so far

 Now I created a file in the spec folder: /spec/acceptance/google_spec.rband 
 added the watir-rspec example:

 require spec_helper
 describe Google do
   before { goto http://google.com; }

   it has search box do
 text_field(:name = q).should be_present
   end

   it allows to search do
 text_field(:name = q).set watir
 button(:id = gbqfb).click
 results = div(:id = ires)
 results.should be_present.within(2)
 results.lis(:class = g).map(:text).should be_any { |text| text =~ 
 /watir/ }
 results.should be_present.during(1)
   endend

 Now when I run rspec I get the following output:

 Results will be saved to tmp/spec-results/index.html
 FF

 Failures:

   1) Google has search box
  Failure/Error: before { goto http://google.com; }
  NoMethodError:
undefined method `goto' for 
 #RSpec::Core::ExampleGroup::Nested_1:0x5715a50
  # ./spec/acceptance/google_spec.rb:6:in `block (2 levels) in top 
 (required)'

   2) Google allows to search
  Failure/Error: before { goto http://google.com; }
  NoMethodError:
undefined method `goto' for 
 #RSpec::Core::ExampleGroup::Nested_1:0x57c86d0
  # ./spec/acceptance/google_spec.rb:6:in `block (2 levels) in top 
 (required)'

 Finished in 0.051 seconds
 2 examples, 2 failures

 Failed examples:

 rspec ./spec/acceptance/google_spec.rb:8 # Google has search box
 rspec ./spec/acceptance/google_spec.rb:12 # Google allows to search

 Obviously this can be solved by adding the browser variables but it 
 should be possible without.. right?

 Relevant gem versions:
 Using rspec-core (2.14.8)
 Using rspec-expectations (2.14.5)
 Using rspec-mocks (2.14.6)
 Using rspec (2.14.1)
 Using rspec-rails (2.14.1)
 Using watir-classic (4.0.1)
 Using watir-webdriver (0.6.8)
 Using watir (5.0.0)
 Using watir-rails (1.0.3)
 Using watir-rspec (1.1.2)

 Regards,
 Arjen



-- 
-- 
Before posting, please read http://watir.com/support. In short: search before 
you ask, be nice.

watir-general@googlegroups.com
http://groups.google.com/group/watir-general
watir-general+unsubscr...@googlegroups.com

--- 
You received this message because you are subscribed to the Google Groups 
Watir General group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to watir-general+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[wtr-general] Re: Watir-rspec still requires browser variables when executing browser methods?

2014-03-20 Thread Arjen Ruiterkamp
Ok, the problem apparently was with the tests being in the 
/spec/acceptancefolder. The Rspec configuration isn't loaded for custom folders 
by default..

Basically I had to change all the config.include lines in spec_helper.rbfrom:
config.include Watir::RSpec::Helper, :type = :request
to
config.include Watir::RSpec::Helper, :type = :acceptance 

and in google_spec.rb change:
describe Google do
to
describe Google, :type = :acceptance do

On Wednesday, March 19, 2014 2:18:35 PM UTC+1, Arjen Ruiterkamp wrote:

 Hello,

 I am fairly new to Ruby and trying to setup some acceptance tests using 
 the watir-rspec gem.

 Now https://github.com/watir/watir-rspec states:

- No need to use the @browser or $browser variables when executing 
browser methods.

 However, this doesn't seem to work for me.

 What I've done so far:
 rails new hello_world

 Then added to the gemfile:
 group :test do
   gem rspec-rails
   gem watir-rspec
   gem watir-rails
 end

 Execute:
 bundle install
 rails generate rspec:install
 watir-rspec install

 This all seems to work fine so far

 Now I created a file in the spec folder: /spec/acceptance/google_spec.rband 
 added the watir-rspec example:

 require spec_helper
 describe Google do
   before { goto http://google.com; }

   it has search box do
 text_field(:name = q).should be_present
   end

   it allows to search do
 text_field(:name = q).set watir
 button(:id = gbqfb).click
 results = div(:id = ires)
 results.should be_present.within(2)
 results.lis(:class = g).map(:text).should be_any { |text| text =~ 
 /watir/ }
 results.should be_present.during(1)
   endend

 Now when I run rspec I get the following output:

 Results will be saved to tmp/spec-results/index.html
 FF

 Failures:

   1) Google has search box
  Failure/Error: before { goto http://google.com; }
  NoMethodError:
undefined method `goto' for 
 #RSpec::Core::ExampleGroup::Nested_1:0x5715a50
  # ./spec/acceptance/google_spec.rb:6:in `block (2 levels) in top 
 (required)'

   2) Google allows to search
  Failure/Error: before { goto http://google.com; }
  NoMethodError:
undefined method `goto' for 
 #RSpec::Core::ExampleGroup::Nested_1:0x57c86d0
  # ./spec/acceptance/google_spec.rb:6:in `block (2 levels) in top 
 (required)'

 Finished in 0.051 seconds
 2 examples, 2 failures

 Failed examples:

 rspec ./spec/acceptance/google_spec.rb:8 # Google has search box
 rspec ./spec/acceptance/google_spec.rb:12 # Google allows to search

 Obviously this can be solved by adding the browser variables but it should 
 be possible without.. right?

 Relevant gem versions:
 Using rspec-core (2.14.8)
 Using rspec-expectations (2.14.5)
 Using rspec-mocks (2.14.6)
 Using rspec (2.14.1)
 Using rspec-rails (2.14.1)
 Using watir-classic (4.0.1)
 Using watir-webdriver (0.6.8)
 Using watir (5.0.0)
 Using watir-rails (1.0.3)
 Using watir-rspec (1.1.2)

 Regards,
 Arjen


-- 
-- 
Before posting, please read http://watir.com/support. In short: search before 
you ask, be nice.

watir-general@googlegroups.com
http://groups.google.com/group/watir-general
watir-general+unsubscr...@googlegroups.com

--- 
You received this message because you are subscribed to the Google Groups 
Watir General group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to watir-general+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.