I've got an interesting (possibly) problem right now between autotest
and rails integration tests. There are a few things to preface this
with.
Works fine:
rake test
rake test:integration
Blows up:
autotest
Autotest is correctly determining rails and runs tests just fine. One
part of the behavior is that if I save a change in just the
integration test (even hitting cmd+s to trigger a diff) the tests
execute fine. Running all the tests from functional to integration to
unit, however, and the integration tests blow up.
From what I can tell it runs into follow_redirect! and goes into a
hissy fit, and delivers this error message:
Runtime Error: not a redirect! 500 Internal
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/
action_controller/integ
ration.rb:115:in `follow_redirect!'
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/
action_controller/integ
ration.rb:547:in `send'
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/
action_controller/integ
ration.rb:547:in `method_missing'
./test/integration/new_user_test.rb:20:in `test_foo'
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/
action_controller/integ
ration.rb:453:in `run'
At this point I'd guess it's something going on with how the db's get
cloned/purged but honestly am too much of a novice to guess much
further past that. I'm also not sure how to get autotest to reset the
db after every pass. The useful information I gathered on tests like
this blowing up in some cases but not others basically said add
fixtures - I linked against everything I had, with no changes. Any
advice?
I've got an interesting (possibly) problem right now between autotest
and rails integration tests. There are a few things to preface this
with.
Works fine:
rake test
rake test:integration
Blows up:
autotest
Autotest is correctly determining rails and runs tests just fine. One
part of the behavior is that if I save a change in just the
integration test (even hitting cmd+s to trigger a diff) the tests
execute fine. Running all the tests from functional to integration to
unit, however, and the integration tests blow up.
...
The useful information I gathered on tests like
this blowing up in some cases but not others basically said add
fixtures - I linked against everything I had, with no changes. Any
advice?
What do you mean by "I linked against everything I had?" Do you mean
you're loading all your fixtures in every test case? I suspect it has
something to do with interactions between fixtures being loaded in one
test case but not another.
You might want to add an assert_response :redirect before the
follow_redirect! (That won't fix the error obviously).
Correct - I've tried adding all the fixtures available, no change.
There is an assert_response :redirect before the follow. Also just
for debugging I threw a few lines of puts status in various places
(since that's what follow_redirect! is interested in). Passing tests,
get normal numbers - 302, 302, 200, etc. Failing tests, get 500's, so
it looks like however it's bringing up whatever server for testing
isn't being done correctly?