[rspec-users] [Cucumber] Running single feature from command line
Mark Lynn
mark at sabado.com
Tue Mar 31 11:22:39 EDT 2009
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.
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
More information about the rspec-users
mailing list