[rspec-users] Errors when running AUTOFEATURE=true autospec [cucumber, autotest]

Andy Pearson andy.james.pearson at googlemail.com
Sat Jul 25 07:57:59 EDT 2009


Wanted to add some more information to this....

Since Cucumber seemed to be working, I created a feature and used it
to drive the initial creation of a new controller.

Once the route was done I dropped down to a controller spec and wrote
the controller code that makes it pass.

Now when I run AUTOFEATURE=true autospec it dies with the following
stack trace:

Warning: $KCODE is NONE.
/Library/Ruby/Gems/1.8/gems/cucumber-0.3.90/lib/cucumber/
step_definition.rb:100: warning: method redefined; discarding old
regexp
/Library/Ruby/Gems/1.8/gems/treetop-1.3.0/lib/treetop/ruby_extensions/
string.rb:31: warning: method redefined; discarding old indent
/Library/Ruby/Gems/1.8/gems/treetop-1.3.0/lib/treetop/compiler/
node_classes/character_class.rb:13: warning: useless use of a literal
in void context
/Library/Ruby/Gems/1.8/gems/treetop-1.3.0/lib/treetop/compiler.rb:5:
warning: global variable `$exclude_metagrammar' not initialized
/Library/Ruby/Gems/1.8/gems/treetop-1.3.0/lib/treetop/compiler/
metagrammar.rb:232: warning: method redefined; discarding old space
/Library/Ruby/Gems/1.8/gems/treetop-1.3.0/lib/treetop/compiler/
metagrammar.rb:388: warning: method redefined; discarding old space
/Library/Ruby/Gems/1.8/gems/treetop-1.3.0/lib/treetop/compiler/
metagrammar.rb:771: warning: method redefined; discarding old space
/Library/Ruby/Gems/1.8/gems/treetop-1.3.0/lib/treetop/compiler/
metagrammar.rb:779: warning: method redefined; discarding old space
/Library/Ruby/Gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/
feature.rb:28: warning: method redefined; discarding old white
/Library/Ruby/Gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/
feature.rb:36: warning: method redefined; discarding old white
/Library/Ruby/Gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/
feature.rb:679: warning: method redefined; discarding old white
/Library/Ruby/Gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/
feature.rb:687: warning: method redefined; discarding old white
/Library/Ruby/Gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/
feature.rb:813: warning: method redefined; discarding old white
/Library/Ruby/Gems/1.8/gems/cucumber-0.3.90/lib/cucumber/parser/
feature.rb:825: warning: method redefined; discarding old white
/Library/Ruby/Gems/1.8/gems/activesupport-2.3.3/lib/active_support/
core_ext/blank.rb:49: warning: method redefined; discarding old blank?
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby /
Users/andypearson/.gem/ruby/1.8/gems/rspec-1.1.12/bin/spec spec/
controllers/lifestream_controller_spec.rb -O spec/spec.opts
/Library/Ruby/Gems/1.8/gems/rspec-1.2.8/lib/spec/autorun.rb:3:
undefined method `autorun' for Spec::Runner:Module (NoMethodError)
	from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in
`gem_original_require'
	from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in
`require'
	from /Library/Ruby/Gems/1.8/gems/activesupport-2.3.3/lib/
active_support/dependencies.rb:158:in `require'
	from ./spec/controllers/../spec_helper.rb:5
	from ./spec/controllers/lifestream_controller_spec.rb:1:in `require'
	from ./spec/controllers/lifestream_controller_spec.rb:1
	from /Users/andypearson/.gem/ruby/1.8/gems/rspec-1.1.12/lib/spec/
runner/example_group_runner.rb:15:in `load'
	from /Users/andypearson/.gem/ruby/1.8/gems/rspec-1.1.12/lib/spec/
runner/example_group_runner.rb:15:in `load_files'
	from /Users/andypearson/.gem/ruby/1.8/gems/rspec-1.1.12/lib/spec/
runner/example_group_runner.rb:14:in `each'
	from /Users/andypearson/.gem/ruby/1.8/gems/rspec-1.1.12/lib/spec/
runner/example_group_runner.rb:14:in `load_files'
	from /Users/andypearson/.gem/ruby/1.8/gems/rspec-1.1.12/lib/spec/
runner/options.rb:94:in `run_examples'
	from /Users/andypearson/.gem/ruby/1.8/gems/rspec-1.1.12/lib/spec/
runner/command_line.rb:9:in `run'
	from /Users/andypearson/.gem/ruby/1.8/gems/rspec-1.1.12/bin/spec:4

Odd thing is, rake spec gets me what I want:

...
Finished in 0.071358 seconds
3 examples, 0 failures

Based on this, my assumption is this is something to do with ZenTest,
have I got an incompatible set of gems?

I tried to pull out the most relevant ones:

aslakhellesoy-webrat (0.3.2.1)
autotest-rails (4.1.0)
cucumber (0.3.90, 0.1.16, 0.1.15)
nokogiri (1.3.2, 1.1.0)
rails (2.3.3, 2.2.2, 2.2.0, 2.1.2, 2.1.1, 2.1.0, 2.0.991, 2.0.2,
2.0.1, 1.2.6, 1.2.3)
rspec (1.2.8, 1.1.12, 1.1.11)
rspec-rails (1.2.7.1, 1.1.12, 1.1.11)
treetop (1.3.0, 1.2.4)
webrat (0.4.4, 0.4.0, 0.3.4, 0.2.0)
ZenTest (4.1.3, 3.11.0, 3.10.0, 3.9.3, 3.9.2, 3.8.0, 3.6.1)

Really hoping I can get some help with this, hitting a block like this
gets super frustrating, particularly what I am trying to "do the right
thing" by getting this up and running to I can BDD and hopefully write
better software!

Thanks again in advance,

Andy


More information about the rspec-users mailing list