[rspec-users] cucumber cli getting called incorrectly?

Tim Glen tim at pivotib.com
Mon Sep 22 14:30:25 EDT 2008


I'm running Rails 2.1.1 and the newest cucumber gem/plugin as of this  
morning.
When I run scripts like `ruby script/generate`
or  any (I think) rake task (I tried 4 or 5), I get the following

timg-2:1-3-development tim$ rake db:version
(in /Users/tim/projects/dt/branches/1-3-development)
Current version: 20080922144500
./config/deploy/production.rb:1: undefined method `set' for #<Object: 
0x389a0> (NoMethodError)
	from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in  
`gem_original_require'
	from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:27:in `require'
	from /Users/tim/projects/donortrust/branches/1-3-development/vendor/ 
rails/activesupport/lib/active_support/dependencies.rb:510:in `require'
	from /Users/tim/projects/donortrust/branches/1-3-development/vendor/ 
rails/activesupport/lib/active_support/dependencies.rb:355:in  
`new_constants_in'
	from /Users/tim/projects/donortrust/branches/1-3-development/vendor/ 
rails/activesupport/lib/active_support/dependencies.rb:510:in `require'
	from /Users/tim/projects/donortrust/branches/1-3-development/vendor/ 
gems/cucumber-0.1.6/lib/cucumber/cli.rb:114:in `require_files'
	from /Users/tim/projects/donortrust/branches/1-3-development/vendor/ 
gems/cucumber-0.1.6/lib/cucumber/cli.rb:112:in `each'
	from /Users/tim/projects/donortrust/branches/1-3-development/vendor/ 
gems/cucumber-0.1.6/lib/cucumber/cli.rb:112:in `require_files'
	from /Users/tim/projects/donortrust/branches/1-3-development/vendor/ 
gems/cucumber-0.1.6/lib/cucumber/cli.rb:92:in `execute!'
	from /Users/tim/projects/donortrust/branches/1-3-development/vendor/ 
gems/cucumber-0.1.6/lib/cucumber/cli.rb:11:in `execute'
	from /Users/tim/projects/donortrust/branches/1-3-development/vendor/ 
gems/cucumber-0.1.6/lib/cucumber/cli.rb:162
	from /usr/bin/rake:19

Specifically to the backtrace, config/deploy/production.rb is my  
capistrano-ext multistage config file - I have no idea why cucumber is  
including it in the first place.

I traced into the code just a little bit and the "require_files"  
method in cli.rb is "require"ing every file in my entire project.  
Given the description on line 101 ("# Requires files - typically step  
files and ruby feature files."), shouldn't it just be  
grabbing .feature and step.rb files?

Note - this also happens if I try to deploy - the only way I can  
deploy anything is to remove any cucumber dependency from my project.

I just checked and I if I don't set the "config.gem" in my  
environment.rb file to include cucumber, I don't get the error. Should  
I not bother setting it as a dependency or would this be considered a  
bug?

thanks,
tim


More information about the rspec-users mailing list