Failed specs spike autotest

I’m getting some weird behavior. I’m currently running on trunk rspec/
rails, with 3.9.1 autotest. If a all tests succeed or are pending,
autotest just sits there dutifully with the blinking cursor. If an
example fails, it will take a few seconds, and pop up this line:

/usr/bin/ruby1.8 -S script/spec -O spec/spec.opts script/spec

Once that comes up, the cpu spikes. Autotest no longer acknowledges file
changes. The only thing that can be done is to kill autotest. Here’s my
script/spec file if it’s of any use:

http://pastebin.com/m4c1d212a

Please let me know if there’s any more information I can provide.

Thanks,
Steve

On Thu, Feb 14, 2008 at 3:37 PM, Steve [email protected] wrote:

http://pastebin.com/m4c1d212a

Please let me know if there’s any more information I can provide.

Thanks,
Steve

Same thing happening here, though I didn’t recognize that it’s only
after failures. The problem continues whether I use .autotest files or
not.

This is on a Rails 2.0.2 project, with rspec+rspec_on_rails r3306 in
vendor/plugins, and ZenTest 3.9.1 installed as a gem.

Kyle

Same thing happening here, though I didn’t recognize that it’s only
after failures. The problem continues whether I use .autotest files or
not.

This is on a Rails 2.0.2 project, with rspec+rspec_on_rails r3306 in
vendor/plugins, and ZenTest 3.9.1 installed as a gem.

I got this too, but didn’t bother to find out where and how script/
spec would sneak into the list of files to test. I got this even if i
explicitly exclude the file in my .autotest.

The quick and dirty thing I did was:

def make_test_cmd(files_to_test)
return “#{ruby} -S #{spec_command} #{add_options_if_present}
#{files_to_test.keys.flatten.select { |i| i != ‘script/spec’ }.join(’
')}”
end

in vendor/plugins/rspec/lib/autotest/rspec.rb

Regards,
Kamal

On Thu, Feb 14, 2008 at 7:57 PM, Kamal F. [email protected]
wrote:

explicitly exclude the file in my .autotest.

The quick and dirty thing I did was:

def make_test_cmd(files_to_test)
return “#{ruby} -S #{spec_command} #{add_options_if_present}
#{files_to_test.keys.flatten.select { |i| i != ‘script/spec’ }.join(’
')}”
end

in vendor/plugins/rspec/lib/autotest/rspec.rb

Thanks for the workaround.

Looking into fixing this for real.

On Fri, 15 Feb 2008 08:57:32 +0800, Kamal F. wrote:

')}"
end

in vendor/plugins/rspec/lib/autotest/rspec.rb

Is perhaps something else required? If I put this in autotest just keeps
running all of my specs repeatedly. It doesn’t wait for a file change to
signal it to try running some explicit spec again. It does put out the
first line minus the script/spec at the end before launching into all of
that. I think it then thinks that perhaps the broken specs are fixed, so
that’s why it then tries to run all of the specs again.

Finished in 15.703733 seconds

398 examples, 1 failure, 1 pending
/usr/bin/ruby1.8 -S script/spec -O spec/spec.opts
/usr/bin/ruby1.8 -S script/spec -O spec/spec.opts spec/views/users/
index.html.haml_spec.rb etc…

Thanks,
Steve

The source of the bug was a patch that we applied a while back. This
was after the 1.1.3 release, so if you’re using 1.1.3 you’re fine. If
you’re using trunk, go ahead and update and you should be fine now.

I found the source of the problem and I’m working on a fix.

Thank you much.

On Fri, 15 Feb 2008 01:07:27 -0500, David C. wrote:

The source of the bug was a patch that we applied a while back. This was
after the 1.1.3 release, so if you’re using 1.1.3 you’re fine. If you’re
using trunk, go ahead and update and you should be fine now.

Thanks, I appreciate it. It works great now.