色々とおかしな状況だったので整理。
Ruby 1.8.7 Rails 2.2.2 rspec 1.1.11 rspec-rails 1.1.11 rcov 0.8.1.2.0
とりあえず、rake specが2回実行されたので、vendor/plugins以下のrspecとrspec-railsを消します。
それから、rake spec:rcovを実行。
% rake spec:rcov (中略) /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:131:in `[]': no implicit conversion from nil to integer (TypeError) from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:131:in `wrap' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:131:in `wrap' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:90:in `write_text' from /opt/local/lib/ruby/1.8/rexml/formatters/default.rb:50:in `write' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:75:in `write_element' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:73:in `each' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:73:in `write_element' from /opt/local/lib/ruby/1.8/rexml/formatters/default.rb:31:in `write' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:75:in `write_element' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:73:in `each' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:73:in `write_element' from /opt/local/lib/ruby/1.8/rexml/formatters/default.rb:31:in `write' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:117:in `write_document' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:111:in `each' from /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:111:in `write_document' from /opt/local/lib/ruby/1.8/rexml/formatters/default.rb:28:in `write' from /opt/local/lib/ruby/1.8/rexml/document.rb:195:in `write' from (eval):93:in `pretty' from /opt/local/lib/ruby/gems/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:1003:in `create_file' from /opt/local/lib/ruby/gems/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:708:in `execute' from /opt/local/lib/ruby/gems/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:125:in `each' from /opt/local/lib/ruby/gems/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:125:in `each_file_pair_sorted' from /opt/local/lib/ruby/gems/1.8/gems/rcov-0.8.1.2.0/lib/rcov/report.rb:707:in `execute' from /opt/local/lib/ruby/gems/1.8/gems/rcov-0.8.1.2.0/lib/rcov.rb:640:in `dump_coverage_info' from /opt/local/lib/ruby/gems/1.8/gems/rcov-0.8.1.2.0/lib/rcov.rb:640:in `each' from /opt/local/lib/ruby/gems/1.8/gems/rcov-0.8.1.2.0/lib/rcov.rb:640:in `dump_coverage_info' from /opt/local/lib/ruby/gems/1.8/gems/rcov-0.8.1.2.0/bin/rcov:421 rake aborted!
rexmlがなんかおかしいっぽい。
なので直修正。
vi /opt/local/lib/ruby/1.8/rexml/formatters/pretty.rb:130 + place = string.rindex(' ', width) || width
めでたくrake spec:rcovが実行されました。