[rspec-users] [Cucumber] Running single feature from command line

Mark Lynn mark at sabado.com
Tue Mar 31 13:33:59 EDT 2009


Aslak,

Thanks! It is nice to at least know where the problem is.  I am  
actually using Cucumber in a Merb project so the Rails solution does  
not help, but I will look for another workaround and post if I find  
something.

Mark Lynn
Sabado Technologies


On Mar 31, 2009, at 11:56 AM, aslak hellesoy wrote:

>
>
> On Tue, Mar 31, 2009 at 5:22 PM, Mark Lynn <mark at sabado.com> wrote:
>
> When I use Aslak's version of Treetop as Joseph suggested, this does  
> get rid of the polyglot error. However, I still get the following  
> when running from the command line:
>
> $ cucumber -r features/steps -r features/support/env.rb features/ 
> plain/user_home_page.feature
>
> /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in  
> `gem_original_require': no such file to load -- features/steps  
> (LoadError)
> Failed to load features/support/env.rb  from /Library/Ruby/Site/1.8/ 
> rubygems/custom_require.rb:31:in `require'
>
>        from /Library/Ruby/Gems/1.8/gems/rspec-1.2.2/lib/spec/runner/ 
> option_parser.rb:144:in `invoke_requires'
>        from /Library/Ruby/Gems/1.8/gems/rspec-1.2.2/lib/spec/runner/ 
> option_parser.rb:143:in `each'
>        from /Library/Ruby/Gems/1.8/gems/rspec-1.2.2/lib/spec/runner/ 
> option_parser.rb:143:in `invoke_requires'
>        from /Library/Ruby/Gems/1.8/gems/rspec-1.2.2/lib/spec/runner/ 
> option_parser.rb:104:in `initialize'
>        from /System/Library/Frameworks/Ruby.framework/Versions/1.8/ 
> usr/lib/ruby/1.8/optparse.rb:1291:in `call'
>        from /System/Library/Frameworks/Ruby.framework/Versions/1.8/ 
> usr/lib/ruby/1.8/optparse.rb:1291:in `parse_in_order'
>        from /System/Library/Frameworks/Ruby.framework/Versions/1.8/ 
> usr/lib/ruby/1.8/optparse.rb:1247:in `catch'
>         ... 26 levels...
>
>        from /Library/Ruby/Gems/1.8/gems/cucumber-0.2.3/bin/../lib/ 
> cucumber/cli/main.rb:20:in `execute'
>        from /Library/Ruby/Gems/1.8/gems/cucumber-0.2.3/bin/cucumber:6
>        from /usr/bin/cucumber:19:in `load'
>        from /usr/bin/cucumber:19
>
> Any idea why rspec code is being called here? I did discover that if  
> I uninstall cucumber 0.2.3 and try version 0.1.16, then the above  
> command line works as does using the profile. I'm not sure if this  
> indicates a bug in 0.2.3.
>
> It's actually a bug in RSpec that is only triggered in Cucumber 0.2  
> (bin/cucumber used to consume ARGV, but now leaves it intact, and  
> RSpec blows up).
>
> https://rspec.lighthouseapp.com/projects/16211/tickets/200
> https://rspec.lighthouseapp.com/projects/5645-rspec/tickets/767
>
> Do you have a Rails app? See how Chris Flipse got around the error  
> in the #200 ticket.
>
> Aslak
>
>
>
> Mark Lynn
> Sabado Technologies
>
>
> On Mar 31, 2009, at 9:26 AM, Joseph Wilk wrote:
>
> Mark Lynn wrote:
> I am using Cucumber 0.2.3 and am having problems running a single  
> feature. In particular, the cucumber Textmate bundle was not working  
> so I traced it back and discovered that I could not run single files  
> or features from the command line either. My setup has the following  
> line in cucumber.yml
>
> default: -r features/support/env.rb -r features/support/plain.rb -r  
> features/steps features/plain
>
> When I run just plain cucumber from the command line, all my  
> scenarios run and all features pass. However, if I try to run the  
> command
>
> cucumber -r features/support/env.rb -r features/support/plain.rb -r  
> features/steps features/plain
>
> OR
>
> cucumber -r features/support/env.rb -r features/support/plain.rb -r  
> features/steps features/plain/login.feature
>
> I get
>
> Failed to load features/support/env.rb    from /Library/Ruby/Site/ 
> 1.8/rubygems/custom_require.rb:31:in `polyglot_original_require'
>   from /Library/Ruby/Gems/1.8/gems/polyglot-0.2.5/lib/polyglot.rb: 
> 54:in `require'
>   from /Library/Ruby/Gems/1.8/gems/rspec-1.2.2/lib/spec/runner/ 
> option_parser.rb:144:in `invoke_requires'
>   from /Library/Ruby/Gems/1.8/gems/rspec-1.2.2/lib/spec/runner/ 
> option_parser.rb:143:in `each'
>   from /Library/Ruby/Gems/1.8/gems/rspec-1.2.2/lib/spec/runner/ 
> option_parser.rb:143:in `invoke_requires'
>   from /Library/Ruby/Gems/1.8/gems/rspec-1.2.2/lib/spec/runner/ 
> option_parser.rb:104:in `initialize'
>   from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/ 
> lib/ruby/1.8/optparse.rb:1291:in `call'
>   from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/ 
> lib/ruby/1.8/optparse.rb:1291:in `parse_in_order'
>    ... 31 levels...
>   from /Library/Ruby/Gems/1.8/gems/cucumber-0.2.3/bin/../lib/ 
> cucumber/cli/main.rb:20:in `execute'
>   from /Library/Ruby/Gems/1.8/gems/cucumber-0.2.3/bin/cucumber:6
>   from /usr/bin/cucumber:19:in `load'
>   from /usr/bin/cucumber:19
>
> I'm assuming the repeated use of the -r flag is not acceptable, but  
> I need to specify multiple files.
>
> Cucumber will accept multiple -r or --require. It simply pushes all  
> the requires onto a stack and requires them all.
>
> Looks like this is a polygot problem. Aslak recently forked and  
> patched a copy of Treetop to avoid the dependency on this:
>
> git://github.com/aslakhellesoy/treetop.git
>
> I would suggest you try and install treetop from this source and see  
> if that fixes the problem.
>
> HTH
> --
> Joseph Wilk
> http://blog.josephwilk.net
>
> How can I get this to work from the command line so I can also use  
> it in Textmate?
>
> - Mark
>
> Mark Lynn
> Sabado Technologies
>
>
>
>
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
>
>
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
>
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://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/20090331/07f6454f/attachment-0001.html>


More information about the rspec-users mailing list