after upgrading cucumber to 5.1 be_true and be_false are undefined switching to == true or == false works. ??? thanks. Then there is an invalid item with 1 "upc" error # features/step_definitions/extract_steps.rb: 56 undefined method `be_true'' for #<ActionController::Integration::Session:0x104bc7820> (NoMethodError) ./features/step_definitions/extract_steps.rb:45:in `/^retrieve file$/'' Then /^retrieve file$/ do basename = File.basename(@filename) ExtractReport.exists?(:file_name => basename).should =true **** this is line 45 @file = ExtractReport.find_by_file_name(basename) count = @file.record_count.to_i - 2 # count includes header and trailer @file.should have(count).items end
Matt Wynne
2009-Dec-24 09:14 UTC
[rspec-users] be_true and be_false are suddenly undefined
On 24 Dec 2009, at 06:09, Doug wrote:> after upgrading cucumber to 5.1 be_true and be_false are undefined > switching to == true or == false works. > > ??? thanks.The rails integration changed quite a bit for that release. See [1] plus a few recent threads on this list. It sounds like your specific problem is you don''t have rspec''s matchers required anymore. [1] http://wiki.github.com/aslakhellesoy/cucumber/upgrading> > > Then there is an invalid item with 1 "upc" > error # features/step_definitions/ > extract_steps.rb: > 56 > undefined method `be_true'' for > #<ActionController::Integration::Session:0x104bc7820> (NoMethodError) > ./features/step_definitions/extract_steps.rb:45:in `/^retrieve > file$/'' > > > > Then /^retrieve file$/ do > basename = File.basename(@filename) > ExtractReport.exists?(:file_name => basename).should => true **** this is line 45 > @file = ExtractReport.find_by_file_name(basename) > count = @file.record_count.to_i - 2 # count includes header and > trailer > @file.should have(count).items > end > _______________________________________________ > rspec-users mailing list > rspec-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-userscheers, Matt http://mattwynne.net +447974 430184
I agree.... I did notice that my feature/support/my_env.rb (custom) had: require ''spec'' require ''spec/rails'' so I changed first line require ''spec/autorun'' in keeping with http://wiki.github.com/dchelimsky/rspec/configgem-for-rails seems to me that really should do it, but it doesn''t work.???? I''ve tried requiring spec_helper, etc. putting the requires closer to my code.,etc. nothing works!!!! btw: be_true and be_false work in my existing spec test; it''s just in cucumber steps. ???? On Dec 24, 1:14?am, Matt Wynne <m... at mattwynne.net> wrote:> On 24 Dec 2009, at 06:09, Doug wrote: > > > after upgrading cucumber to 5.1 be_true and be_false are undefined > > switching to == true ?or == false works. > > > ??? thanks. > > The rails integration changed quite a bit for that release. See [1] ? > plus a few recent threads on this list. > > It sounds like your specific problem is you don''t have rspec''s ? > matchers required anymore. > > [1]http://wiki.github.com/aslakhellesoy/cucumber/upgrading > > > > > > > ? ?Then there is an invalid item with 1 "upc" > > error ? ? ? ? ? ? ? ? ? ? # features/step_definitions/ > > extract_steps.rb: > > 56 > > ? ? ?undefined method `be_true'' for > > #<ActionController::Integration::Session:0x104bc7820> (NoMethodError) > > ? ? ?./features/step_definitions/extract_steps.rb:45:in `/^retrieve > > file$/'' > > > Then /^retrieve file$/ do > > ?basename = File.basename(@filename) > > ?ExtractReport.exists?(:file_name => basename).should => > true ? ? ? ? ? ? ? ? ? **** this is line 45 > > ?@file = ExtractReport.find_by_file_name(basename) > > ?count = @file.record_count.to_i - 2 # count includes header and > > trailer > > ?@file.should have(count).items > > end > > _______________________________________________ > > rspec-users mailing list > > rspec-us... at rubyforge.org > >http://rubyforge.org/mailman/listinfo/rspec-users > > cheers, > Matt > > http://mattwynne.net > +447974 430184 > > _______________________________________________ > rspec-users mailing list > rspec-us... at rubyforge.orghttp://rubyforge.org/mailman/listinfo/rspec-users
aslak hellesoy
2009-Dec-25 10:45 UTC
[rspec-users] be_true and be_false are suddenly undefined
> I agree.... > > I did notice that my feature/support/my_env.rb (custom) had: > require ''spec'' > require ''spec/rails'' > > so I changed first line > require ''spec/autorun'' > >You shouldn''t do that. You don''t want the RSpec runner to run when you''re using Cucumber. In fact, you shouldn''t do any RSpec requires in my_env.rb at all - all that setup is done in env.rb.> in keeping with > http://wiki.github.com/dchelimsky/rspec/configgem-for-rails > > seems to me that really should do it, but it doesn''t work.???? >I''m assuming you have followed the upgrade instructions that Matt mentioned. However your setup still seems broken so I''m wondering if you succeeded. Could you pastie or gist your env.rb and my_env.rb files so we can take a peek? I''ve tried requiring spec_helper, etc. putting the requires closer to> my code.,etc. >You should never load your spec_helper.rb from Cucumber.> >nothing works!!!!> > btw: be_true and be_false work in my existing spec test; it''s just in > cucumber steps. > > ???? > > > > On Dec 24, 1:14 am, Matt Wynne <m... at mattwynne.net> wrote: > > On 24 Dec 2009, at 06:09, Doug wrote: > > > > > after upgrading cucumber to 5.1 be_true and be_false are undefined > > > switching to == true or == false works. > > > > > ??? thanks. > > > > The rails integration changed quite a bit for that release. See [1] > > plus a few recent threads on this list. > > > > It sounds like your specific problem is you don''t have rspec''s > > matchers required anymore. > > > > [1]http://wiki.github.com/aslakhellesoy/cucumber/upgrading > > > > > > > > > > > > > Then there is an invalid item with 1 "upc" > > > error # features/step_definitions/ > > > extract_steps.rb: > > > 56 > > > undefined method `be_true'' for > > > #<ActionController::Integration::Session:0x104bc7820> (NoMethodError) > > > ./features/step_definitions/extract_steps.rb:45:in `/^retrieve > > > file$/'' > > > > > Then /^retrieve file$/ do > > > basename = File.basename(@filename) > > > ExtractReport.exists?(:file_name => basename).should => > > true **** this is line 45 > > > @file = ExtractReport.find_by_file_name(basename) > > > count = @file.record_count.to_i - 2 # count includes header and > > > trailer > > > @file.should have(count).items > > > end > > > _______________________________________________ > > > rspec-users mailing list > > > rspec-us... at rubyforge.org > > >http://rubyforge.org/mailman/listinfo/rspec-users > > > > cheers, > > Matt > > > > http://mattwynne.net > > +447974 430184 > > > > _______________________________________________ > > rspec-users mailing list > > rspec-us... at rubyforge.orghttp:// > rubyforge.org/mailman/listinfo/rspec-users > _______________________________________________ > rspec-users mailing list > rspec-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/rspec-users/attachments/20091225/2b4037d3/attachment.html>
I figured it out last night. ...sorry I didn''t post then I created a blank rails project and used: $ script/generate --webrat --rspec then compared the features/support/env.rb; mine was missing: require ''cucumber/rails/rspec'' after adding that statement, the be_true and be_falses worked fine then I removed all the other requires as you suggested above NOTE: I believe that''s the way the file was generated. I don''t remember editing the env.rb file -- per the instructions, but I don''t remember. using the options: --webrat --rspec --testunit .....Now I only included the option for testunit out of curiousity; was that a mistake? I''ll try to reproduce it. thanks On Dec 25, 2:45?am, aslak hellesoy <aslak.helle... at gmail.com> wrote:> > I agree.... > > > I did notice that my feature/support/my_env.rb (custom) had: > > require ''spec'' > > require ''spec/rails'' > > > so I changed first line > > require ''spec/autorun'' > > You shouldn''t do that. You don''t want the RSpec runner to run when you''re > using Cucumber. > In fact, you shouldn''t do any RSpec requires in my_env.rb at all - all that > setup is done in env.rb. > > > in keeping with > >http://wiki.github.com/dchelimsky/rspec/configgem-for-rails > > > seems to me that really should do it, but it doesn''t work.???? > > I''m assuming you have followed the upgrade instructions that Matt mentioned. > However your setup still seems broken so I''m wondering if you succeeded. > > Could you pastie or gist your env.rb and my_env.rb files so we can take a > peek? > > I''ve tried requiring spec_helper, etc. putting the requires closer to > > > my code.,etc. > > You should never load your spec_helper.rb from Cucumber. > > > > > > nothing works!!!! > > > btw: be_true and be_false work in my existing spec test; it''s just in > > cucumber steps. > > > ???? > > > On Dec 24, 1:14 am, Matt Wynne <m... at mattwynne.net> wrote: > > > On 24 Dec 2009, at 06:09, Doug wrote: > > > > > after upgrading cucumber to 5.1 be_true and be_false are undefined > > > > switching to == true ?or == false works. > > > > > ??? thanks. > > > > The rails integration changed quite a bit for that release. See [1] > > > plus a few recent threads on this list. > > > > It sounds like your specific problem is you don''t have rspec''s > > > matchers required anymore. > > > > [1]http://wiki.github.com/aslakhellesoy/cucumber/upgrading > > > > > ? ?Then there is an invalid item with 1 "upc" > > > > error ? ? ? ? ? ? ? ? ? ? # features/step_definitions/ > > > > extract_steps.rb: > > > > 56 > > > > ? ? ?undefined method `be_true'' for > > > > #<ActionController::Integration::Session:0x104bc7820> (NoMethodError) > > > > ? ? ?./features/step_definitions/extract_steps.rb:45:in `/^retrieve > > > > file$/'' > > > > > Then /^retrieve file$/ do > > > > ?basename = File.basename(@filename) > > > > ?ExtractReport.exists?(:file_name => basename).should => > > > true ? ? ? ? ? ? ? ? ? **** this is line 45 > > > > ?@file = ExtractReport.find_by_file_name(basename) > > > > ?count = @file.record_count.to_i - 2 # count includes header and > > > > trailer > > > > ?@file.should have(count).items > > > > end > > > > _______________________________________________ > > > > rspec-users mailing list > > > > rspec-us... at rubyforge.org > > > >http://rubyforge.org/mailman/listinfo/rspec-users > > > > cheers, > > > Matt > > > >http://mattwynne.net > > > +447974 430184 > > > > _______________________________________________ > > > rspec-users mailing list > > > rspec-us... at rubyforge.orghttp:// > > rubyforge.org/mailman/listinfo/rspec-users > > _______________________________________________ > > rspec-users mailing list > > rspec-us... at rubyforge.org > >http://rubyforge.org/mailman/listinfo/rspec-users > > > > _______________________________________________ > rspec-users mailing list > rspec-us... at rubyforge.orghttp://rubyforge.org/mailman/listinfo/rspec-users
I tried to reproduce....very strange I''m back to being confused again. ..as to why of course in my blank, demo project I ran> script/generate --webrat --rspec --testunitit does produce a different env.rb file -- without a "require cucumber/rails/rspec" statement but the be_true still works. ????? does this make any sense? ==================================the demo project env.rb file now looks like: ENV["RAILS_ENV"] ||= "cucumber" require File.expand_path(File.dirname(__FILE__) + ''/../../config/ environment'') require ''cucumber/formatter/unicode'' # Remove this line if you don''t want Cucumber Unicode support require ''cucumber/rails/world'' require ''cucumber/rails/active_record'' require ''cucumber/web/tableish'' require ''webrat'' require ''webrat/core/matchers'' require ''cucumber/webrat/element_locator'' # Deprecated in favor of #tableish - remove this line if you don''t use #element_at or #table_at Webrat.configure do |config| config.mode = :rails config.open_error_files = false # Set to true if you want error pages to pop up in the browser end ==============================after running> script/generate --webrat --rspecit looks like: ( oh, and be_true and be_false still work!) ENV["RAILS_ENV"] ||= "cucumber" require File.expand_path(File.dirname(__FILE__) + ''/../../config/ environment'') require ''cucumber/formatter/unicode'' # Remove this line if you don''t want Cucumber Unicode support require ''cucumber/rails/rspec'' require ''cucumber/rails/world'' require ''cucumber/rails/active_record'' require ''cucumber/web/tableish'' require ''webrat'' require ''webrat/core/matchers'' require ''cucumber/webrat/element_locator'' # Deprecated in favor of #tableish - remove this line if you don''t use #element_at or #table_at Webrat.configure do |config| config.mode = :rails config.open_error_files = false # Set to true if you want error pages to pop up in the browser end On Dec 25, 5:22?pm, Doug <dgoldi... at gmail.com> wrote:> I figured it out last night. > ...sorry I didn''t post then > > I created a blank rails project and used: > $ script/generate --webrat --rspec > > then compared the features/support/env.rb; mine was missing: > require ''cucumber/rails/rspec'' > > after adding that statement, the be_true and be_falses worked fine > then I removed all the other requires as you suggested above > > NOTE: I believe that''s the way the file was generated. I don''t > remember editing the env.rb file -- per the instructions, but I don''t > remember. > using the options: --webrat --rspec --testunit > .....Now I only included the option for testunit out of curiousity; > was that a mistake? > > I''ll try to reproduce it. > > thanks > > On Dec 25, 2:45?am, aslak hellesoy <aslak.helle... at gmail.com> wrote: > > > > I agree.... > > > > I did notice that my feature/support/my_env.rb (custom) had: > > > require ''spec'' > > > require ''spec/rails'' > > > > so I changed first line > > > require ''spec/autorun'' > > > You shouldn''t do that. You don''t want the RSpec runner to run when you''re > > using Cucumber. > > In fact, you shouldn''t do any RSpec requires in my_env.rb at all - all that > > setup is done in env.rb. > > > > in keeping with > > >http://wiki.github.com/dchelimsky/rspec/configgem-for-rails > > > > seems to me that really should do it, but it doesn''t work.???? > > > I''m assuming you have followed the upgrade instructions that Matt mentioned. > > However your setup still seems broken so I''m wondering if you succeeded. > > > Could you pastie or gist your env.rb and my_env.rb files so we can take a > > peek? > > > I''ve tried requiring spec_helper, etc. putting the requires closer to > > > > my code.,etc. > > > You should never load your spec_helper.rb from Cucumber. > > > nothing works!!!! > > > > btw: be_true and be_false work in my existing spec test; it''s just in > > > cucumber steps. > > > > ???? > > > > On Dec 24, 1:14 am, Matt Wynne <m... at mattwynne.net> wrote: > > > > On 24 Dec 2009, at 06:09, Doug wrote: > > > > > > after upgrading cucumber to 5.1 be_true and be_false are undefined > > > > > switching to == true ?or == false works. > > > > > > ??? thanks. > > > > > The rails integration changed quite a bit for that release. See [1] > > > > plus a few recent threads on this list. > > > > > It sounds like your specific problem is you don''t have rspec''s > > > > matchers required anymore. > > > > > [1]http://wiki.github.com/aslakhellesoy/cucumber/upgrading > > > > > > ? ?Then there is an invalid item with 1 "upc" > > > > > error ? ? ? ? ? ? ? ? ? ? # features/step_definitions/ > > > > > extract_steps.rb: > > > > > 56 > > > > > ? ? ?undefined method `be_true'' for > > > > > #<ActionController::Integration::Session:0x104bc7820> (NoMethodError) > > > > > ? ? ?./features/step_definitions/extract_steps.rb:45:in `/^retrieve > > > > > file$/'' > > > > > > Then /^retrieve file$/ do > > > > > ?basename = File.basename(@filename) > > > > > ?ExtractReport.exists?(:file_name => basename).should => > > > > true ? ? ? ? ? ? ? ? ? **** this is line 45 > > > > > ?@file = ExtractReport.find_by_file_name(basename) > > > > > ?count = @file.record_count.to_i - 2 # count includes header and > > > > > trailer > > > > > ?@file.should have(count).items > > > > > end > > > > > _______________________________________________ > > > > > rspec-users mailing list > > > > > rspec-us... at rubyforge.org > > > > >http://rubyforge.org/mailman/listinfo/rspec-users > > > > > cheers, > > > > Matt > > > > >http://mattwynne.net > > > > +447974 430184 > > > > > _______________________________________________ > > > > rspec-users mailing list > > > > rspec-us... at rubyforge.orghttp:// > > > rubyforge.org/mailman/listinfo/rspec-users > > > _______________________________________________ > > > rspec-users mailing list > > > rspec-us... at rubyforge.org > > >http://rubyforge.org/mailman/listinfo/rspec-users > > > _______________________________________________ > > rspec-users mailing list > > rspec-us... at rubyforge.orghttp://rubyforge.org/mailman/listinfo/rspec-users > > _______________________________________________ > rspec-users mailing list > rspec-us... at rubyforge.orghttp://rubyforge.org/mailman/listinfo/rspec-users
aslak hellesoy
2009-Dec-26 01:51 UTC
[rspec-users] be_true and be_false are suddenly undefined
> I tried to reproduce....very strange > I''m back to being confused again. > ..as to why of course > > in my blank, demo project I ran > > script/generate --webrat --rspec --testunit > it does produce a different env.rb file > -- without a "require cucumber/rails/rspec" statement > > but the be_true still works. ????? > > does this make any sense? > >RSpec and Test::Unit are two complimentory libraries for making low-level assertions, so you want to pick one and only one. I would love to get some insight into why you tried both at the same time. I''m always trying to write software and documentation that is as intuitive as possible, but I''m realising I''ll never quite get there. Aslak> ==================================> the demo project env.rb file now looks like: > > ENV["RAILS_ENV"] ||= "cucumber" > require File.expand_path(File.dirname(__FILE__) + ''/../../config/ > environment'') > > require ''cucumber/formatter/unicode'' # Remove this line if you don''t > want Cucumber Unicode support > require ''cucumber/rails/world'' > require ''cucumber/rails/active_record'' > require ''cucumber/web/tableish'' > > require ''webrat'' > require ''webrat/core/matchers'' > require ''cucumber/webrat/element_locator'' # Deprecated in favor of > #tableish - remove this line if you don''t use #element_at or #table_at > > Webrat.configure do |config| > config.mode = :rails > config.open_error_files = false # Set to true if you want error > pages to pop up in the browser > end > > ==============================> after running > > script/generate --webrat --rspec > > it looks like: ( oh, and be_true and be_false still work!) > > ENV["RAILS_ENV"] ||= "cucumber" > require File.expand_path(File.dirname(__FILE__) + ''/../../config/ > environment'') > > require ''cucumber/formatter/unicode'' # Remove this line if you don''t > want Cucumber Unicode support > require ''cucumber/rails/rspec'' > require ''cucumber/rails/world'' > require ''cucumber/rails/active_record'' > require ''cucumber/web/tableish'' > > require ''webrat'' > require ''webrat/core/matchers'' > require ''cucumber/webrat/element_locator'' # Deprecated in favor of > #tableish - remove this line if you don''t use #element_at or #table_at > > Webrat.configure do |config| > config.mode = :rails > config.open_error_files = false # Set to true if you want error > pages to pop up in the browser > end > > > > On Dec 25, 5:22 pm, Doug <dgoldi... at gmail.com> wrote: > > I figured it out last night. > > ...sorry I didn''t post then > > > > I created a blank rails project and used: > > $ script/generate --webrat --rspec > > > > then compared the features/support/env.rb; mine was missing: > > require ''cucumber/rails/rspec'' > > > > after adding that statement, the be_true and be_falses worked fine > > then I removed all the other requires as you suggested above > > > > NOTE: I believe that''s the way the file was generated. I don''t > > remember editing the env.rb file -- per the instructions, but I don''t > > remember. > > using the options: --webrat --rspec --testunit > > .....Now I only included the option for testunit out of curiousity; > > was that a mistake? > > > > I''ll try to reproduce it. > > > > thanks > > > > On Dec 25, 2:45 am, aslak hellesoy <aslak.helle... at gmail.com> wrote: > > > > > > I agree.... > > > > > > I did notice that my feature/support/my_env.rb (custom) had: > > > > require ''spec'' > > > > require ''spec/rails'' > > > > > > so I changed first line > > > > require ''spec/autorun'' > > > > > You shouldn''t do that. You don''t want the RSpec runner to run when > you''re > > > using Cucumber. > > > In fact, you shouldn''t do any RSpec requires in my_env.rb at all - all > that > > > setup is done in env.rb. > > > > > > in keeping with > > > >http://wiki.github.com/dchelimsky/rspec/configgem-for-rails > > > > > > seems to me that really should do it, but it doesn''t work.???? > > > > > I''m assuming you have followed the upgrade instructions that Matt > mentioned. > > > However your setup still seems broken so I''m wondering if you > succeeded. > > > > > Could you pastie or gist your env.rb and my_env.rb files so we can take > a > > > peek? > > > > > I''ve tried requiring spec_helper, etc. putting the requires closer to > > > > > > my code.,etc. > > > > > You should never load your spec_helper.rb from Cucumber. > > > > > nothing works!!!! > > > > > > btw: be_true and be_false work in my existing spec test; it''s just in > > > > cucumber steps. > > > > > > ???? > > > > > > On Dec 24, 1:14 am, Matt Wynne <m... at mattwynne.net> wrote: > > > > > On 24 Dec 2009, at 06:09, Doug wrote: > > > > > > > > after upgrading cucumber to 5.1 be_true and be_false are > undefined > > > > > > switching to == true or == false works. > > > > > > > > ??? thanks. > > > > > > > The rails integration changed quite a bit for that release. See [1] > > > > > plus a few recent threads on this list. > > > > > > > It sounds like your specific problem is you don''t have rspec''s > > > > > matchers required anymore. > > > > > > > [1]http://wiki.github.com/aslakhellesoy/cucumber/upgrading > > > > > > > > Then there is an invalid item with 1 "upc" > > > > > > error # features/step_definitions/ > > > > > > extract_steps.rb: > > > > > > 56 > > > > > > undefined method `be_true'' for > > > > > > #<ActionController::Integration::Session:0x104bc7820> > (NoMethodError) > > > > > > ./features/step_definitions/extract_steps.rb:45:in > `/^retrieve > > > > > > file$/'' > > > > > > > > Then /^retrieve file$/ do > > > > > > basename = File.basename(@filename) > > > > > > ExtractReport.exists?(:file_name => basename).should => > > > > > true **** this is line 45 > > > > > > @file = ExtractReport.find_by_file_name(basename) > > > > > > count = @file.record_count.to_i - 2 # count includes header and > > > > > > trailer > > > > > > @file.should have(count).items > > > > > > end > > > > > > _______________________________________________ > > > > > > rspec-users mailing list > > > > > > rspec-us... at rubyforge.org > > > > > >http://rubyforge.org/mailman/listinfo/rspec-users > > > > > > > cheers, > > > > > Matt > > > > > > >http://mattwynne.net > > > > > +447974 430184 > > > > > > > _______________________________________________ > > > > > rspec-users mailing list > > > > > rspec-us... at rubyforge.orghttp:// > > > > rubyforge.org/mailman/listinfo/rspec-users > > > > _______________________________________________ > > > > rspec-users mailing list > > > > rspec-us... at rubyforge.org > > > >http://rubyforge.org/mailman/listinfo/rspec-users > > > > > _______________________________________________ > > > rspec-users mailing list > > > rspec-us... at rubyforge.orghttp:// > rubyforge.org/mailman/listinfo/rspec-users > > > > _______________________________________________ > > rspec-users mailing list > > rspec-us... at rubyforge.orghttp:// > rubyforge.org/mailman/listinfo/rspec-users > _______________________________________________ > rspec-users mailing list > rspec-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/rspec-users/attachments/20091226/4c1644d0/attachment.html>
Aslak, I have admit, when I saw the option: testunit, I was just curious as to what it would do .....assumed it would be something additional...I guess we have some critical legacy unit/integration tests that will probably survive forever. but going forward everything is rspec and cucumber in cucumber steps, I''m only using rspec assertions/matchers we do have some complex test setup requirements that we are currently satisfying with methods in rspec -- shared with cucumber steps. ..that seems to work, but is slow of course may try to replace with some pickle / machinist, not sure thanks again, -doug. On Dec 25, 5:51?pm, aslak hellesoy <aslak.helle... at gmail.com> wrote:> > I tried to reproduce....very strange > > I''m back to being confused again. > > ..as to why of course > > > in my blank, demo project I ran > > > script/generate --webrat --rspec --testunit > > it does produce a different env.rb file > > -- without a "require cucumber/rails/rspec" statement > > > but the be_true still works. ????? > > > does this make any sense? > > RSpec and Test::Unit are two complimentory libraries for making low-level > assertions, so you want to pick one and only one. > > I would love to get some insight into why you tried both at the same time. > I''m always trying to write software and documentation that is as intuitive > as possible, but I''m realising I''ll never quite get there. > > Aslak > > > ==================================> > the demo project env.rb file now looks like: > > > ENV["RAILS_ENV"] ||= "cucumber" > > require File.expand_path(File.dirname(__FILE__) + ''/../../config/ > > environment'') > > > require ''cucumber/formatter/unicode'' # Remove this line if you don''t > > want Cucumber Unicode support > > require ''cucumber/rails/world'' > > require ''cucumber/rails/active_record'' > > require ''cucumber/web/tableish'' > > > require ''webrat'' > > require ''webrat/core/matchers'' > > require ''cucumber/webrat/element_locator'' # Deprecated in favor of > > #tableish - remove this line if you don''t use #element_at or #table_at > > > Webrat.configure do |config| > > ?config.mode = :rails > > ?config.open_error_files = false # Set to true if you want error > > pages to pop up in the browser > > end > > > ==============================> > after running > > > script/generate --webrat --rspec > > > it looks like: ( oh, and be_true and be_false still work!) > > > ENV["RAILS_ENV"] ||= "cucumber" > > require File.expand_path(File.dirname(__FILE__) + ''/../../config/ > > environment'') > > > require ''cucumber/formatter/unicode'' # Remove this line if you don''t > > want Cucumber Unicode support > > require ''cucumber/rails/rspec'' > > require ''cucumber/rails/world'' > > require ''cucumber/rails/active_record'' > > require ''cucumber/web/tableish'' > > > require ''webrat'' > > require ''webrat/core/matchers'' > > require ''cucumber/webrat/element_locator'' # Deprecated in favor of > > #tableish - remove this line if you don''t use #element_at or #table_at > > > Webrat.configure do |config| > > ?config.mode = :rails > > ?config.open_error_files = false # Set to true if you want error > > pages to pop up in the browser > > end > > > On Dec 25, 5:22 pm, Doug <dgoldi... at gmail.com> wrote: > > > I figured it out last night. > > > ...sorry I didn''t post then > > > > I created a blank rails project and used: > > > $ script/generate --webrat --rspec > > > > then compared the features/support/env.rb; mine was missing: > > > require ''cucumber/rails/rspec'' > > > > after adding that statement, the be_true and be_falses worked fine > > > then I removed all the other requires as you suggested above > > > > NOTE: I believe that''s the way the file was generated. I don''t > > > remember editing the env.rb file -- per the instructions, but I don''t > > > remember. > > > using the options: --webrat --rspec --testunit > > > .....Now I only included the option for testunit out of curiousity; > > > was that a mistake? > > > > I''ll try to reproduce it. > > > > thanks > > > > On Dec 25, 2:45 am, aslak hellesoy <aslak.helle... at gmail.com> wrote: > > > > > > I agree.... > > > > > > I did notice that my feature/support/my_env.rb (custom) had: > > > > > require ''spec'' > > > > > require ''spec/rails'' > > > > > > so I changed first line > > > > > require ''spec/autorun'' > > > > > You shouldn''t do that. You don''t want the RSpec runner to run when > > you''re > > > > using Cucumber. > > > > In fact, you shouldn''t do any RSpec requires in my_env.rb at all - all > > that > > > > setup is done in env.rb. > > > > > > in keeping with > > > > >http://wiki.github.com/dchelimsky/rspec/configgem-for-rails > > > > > > seems to me that really should do it, but it doesn''t work.???? > > > > > I''m assuming you have followed the upgrade instructions that Matt > > mentioned. > > > > However your setup still seems broken so I''m wondering if you > > succeeded. > > > > > Could you pastie or gist your env.rb and my_env.rb files so we can take > > a > > > > peek? > > > > > I''ve tried requiring spec_helper, etc. putting the requires closer to > > > > > > my code.,etc. > > > > > You should never load your spec_helper.rb from Cucumber. > > > > > nothing works!!!! > > > > > > btw: be_true and be_false work in my existing spec test; it''s just in > > > > > cucumber steps. > > > > > > ???? > > > > > > On Dec 24, 1:14 am, Matt Wynne <m... at mattwynne.net> wrote: > > > > > > On 24 Dec 2009, at 06:09, Doug wrote: > > > > > > > > after upgrading cucumber to 5.1 be_true and be_false are > > undefined > > > > > > > switching to == true ?or == false works. > > > > > > > > ??? thanks. > > > > > > > The rails integration changed quite a bit for that release. See [1] > > > > > > plus a few recent threads on this list. > > > > > > > It sounds like your specific problem is you don''t have rspec''s > > > > > > matchers required anymore. > > > > > > > [1]http://wiki.github.com/aslakhellesoy/cucumber/upgrading > > > > > > > > ? ?Then there is an invalid item with 1 "upc" > > > > > > > error ? ? ? ? ? ? ? ? ? ? # features/step_definitions/ > > > > > > > extract_steps.rb: > > > > > > > 56 > > > > > > > ? ? ?undefined method `be_true'' for > > > > > > > #<ActionController::Integration::Session:0x104bc7820> > > (NoMethodError) > > > > > > > ? ? ?./features/step_definitions/extract_steps.rb:45:in > > `/^retrieve > > > > > > > file$/'' > > > > > > > > Then /^retrieve file$/ do > > > > > > > ?basename = File.basename(@filename) > > > > > > > ?ExtractReport.exists?(:file_name => basename).should => > > > > > > true ? ? ? ? ? ? ? ? ? **** this is line 45 > > > > > > > ?@file = ExtractReport.find_by_file_name(basename) > > > > > > > ?count = @file.record_count.to_i - 2 # count includes header and > > > > > > > trailer > > > > > > > ?@file.should have(count).items > > > > > > > end > > > > > > > _______________________________________________ > > > > > > > rspec-users mailing list > > > > > > > rspec-us... at rubyforge.org > > > > > > >http://rubyforge.org/mailman/listinfo/rspec-users > > > > > > > cheers, > > > > > > Matt > > > > > > >http://mattwynne.net > > > > > > +447974 430184 > > > > > > > _______________________________________________ > > > > > > rspec-users mailing list > > > > > > rspec-us... at rubyforge.orghttp:// > > > > > rubyforge.org/mailman/listinfo/rspec-users > > > > > _______________________________________________ > > > > > rspec-users mailing list > > > > > rspec-us... at rubyforge.org > > > > >http://rubyforge.org/mailman/listinfo/rspec-users > > > > > _______________________________________________ > > > > rspec-users mailing list > > > > rspec-us... at rubyforge.orghttp:// > > rubyforge.org/mailman/listinfo/rspec-users > > > > _______________________________________________ > > > rspec-users mailing list > > > rspec-us... at rubyforge.orghttp:// > > rubyforge.org/mailman/listinfo/rspec-users > > _______________________________________________ > > rspec-users mailing list > > rspec-us... at rubyforge.org > >http://rubyforge.org/mailman/listinfo/rspec-users > > > > _______________________________________________ > rspec-users mailing list > rspec-us... at rubyforge.orghttp://rubyforge.org/mailman/listinfo/rspec-users