[rspec-devel] [ rspec-Bugs-7234 ] The Rcov rake task fails when running the specs

noreply at rubyforge.org noreply at rubyforge.org
Tue Dec 12 08:49:56 EST 2006


Bugs item #7234, was opened at 2006-12-12 13:49
You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=3149&aid=7234&group_id=797

Category: rails plugin
Group: None
Status: Open
Resolution: None
Priority: 3
Submitted By: Clint Bishop (norobotdiving)
Assigned to: Nobody (None)
Summary: The Rcov rake task fails when running the specs

Initial Comment:
If I run the following task with Rake:

desc "Run all specs with RCov"
Spec::Rake::SpecTask.new('spec_rcov') do |t|
  t.spec_files = FileList['spec/**/*spec.rb']
  t.rcov = true
  t.spec_opts = ["-fh > build/spec_results.html"]
end

I get this error:

$ rake spec_rcov --trace
(in /Users/tworker1/projects/disco_stu/trunk/disco_stu)
** Invoke ci (first_time)
** Invoke testing (first_time)
** Execute testing
** Invoke migrate (first_time)
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:migrate
** Invoke db:schema:dump (first_time)
** Invoke environment 
** Execute db:schema:dump
** Execute migrate
** Invoke spec_rcov (first_time)
** Invoke clobber_spec_rcov (first_time)
** Execute clobber_spec_rcov
rm -r coverage
** Execute spec_rcov
/usr/local/bin/ruby -I"/usr/local/lib/ruby/gems/1.8/gems/rspec-0.7.4/lib" -S rcov --exclude lib\/spec,bin\/spec -o "coverage" "/usr/local/lib/ruby/gems/1.8/gems/rspec-0.7.4/bin/spec" -- "spec/controllers/citycliq_controller_spec.rb" "spec/helpers/citycliq_helper_spec.rb" "spec/models/event_spec.rb" "spec/models/hotspot_spec.rb" "spec/views/citycliq/create_event_spec.rb" "spec/views/citycliq/create_hotspot_spec.rb" "spec/views/citycliq/index_spec.rb" "spec/views/citycliq/login_spec.rb" "spec/views/citycliq/view_event_detail_spec.rb" "spec/views/citycliq/view_events_spec.rb" "spec/views/citycliq/view_hotspot_detail_spec.rb" "spec/views/citycliq/view_hotspots_spec.rb" -fh > build/spec_results.html 
/usr/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/callbacks.rb:235: [BUG] Bus Error
ruby 1.8.4 (2005-12-24) [i686-darwin8.8.1]

rake aborted!
Command failed with status (134): [/usr/local/bin/ruby -I"/usr/local/lib/ruby...]
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:722:in `sh'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:729:in `sh'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:812:in `sh'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:807:in `sh'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:747:in `ruby'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:812:in `ruby'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:807:in `ruby'
/usr/local/lib/ruby/gems/1.8/gems/rspec-0.7.4/lib/spec/rake/spectask.rb:131:in `define'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:831:in `verbose'
/usr/local/lib/ruby/gems/1.8/gems/rspec-0.7.4/lib/spec/rake/spectask.rb:110:in `define'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:387:in `execute'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:387:in `execute'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:357:in `invoke'
/usr/local/lib/ruby/1.8/thread.rb:135:in `synchronize'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:350:in `invoke'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:364:in `invoke_prerequisites'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:999:in `each'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:363:in `invoke_prerequisites'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:356:in `invoke'
/usr/local/lib/ruby/1.8/thread.rb:135:in `synchronize'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:350:in `invoke'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:1906:in `run'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake.rb:1906:in `run'
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.1/bin/rake:7
/usr/local/bin/rake:18


Same error I get if I just run the specs through rcov:

$ rcov spec/**/*spec.rb

........../usr/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/callbacks.rb:235: [BUG] Bus Error
ruby 1.8.4 (2005-12-24) [i686-darwin8.8.1]

Abort trap


But I don't get the error if I turn off rcov's optimized C runtime

$ rcov spec/**/*spec.rb --no-rcovrt

....................................

Finished in 12.125441 seconds

36 specifications, 0 failures


I've noticed that if there aren't too many specs then it runs just fine.  Once we pass a certain number we get the error listed above.

We're using:
OS X 10.4.8
1.5 GHz Intel Core Solo
1Gb ram

rcov 0.7.0
rcov rails plugin installed as an external svn repos (so it's on edge)
rspec 0.7.4
rspec rails plugin for 0.7.4
rails 1.1.6
Ruby 1.8.4



----------------------------------------------------------------------

You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=3149&aid=7234&group_id=797


More information about the rspec-devel mailing list