In a simple integration test with trunk, I get:
>> get 'books/1'
=> 200
>> put 'books/1'
NoMethodError: undefined method `recycle!' for #<ActionController::CgiRequest:0x2cef98c>
from /Users/jasongarber/Documents/form_test_helper/config/../vendor/rails/actionpack/lib/action_controller/cgi_process.rb:127:in `method_missing'
from /Users/jasongarber/Documents/form_test_helper/config/../vendor/rails/actionpack/lib/action_controller/test_process.rb:357:in `process'
from /Users/jasongarber/Documents/form_test_helper/config/../vendor/rails/actionpack/lib/action_controller/test_process.rb:340:in `put'
from (irb):1:in `breakpoint'
from /Users/jasongarber/Documents/form_test_helper/config/../vendor/rails/railties/lib/breakpoint.rb:536:in `breakpoint'
from /Users/jasongarber/Documents/form_test_helper/config/../vendor/rails/railties/lib/breakpoint.rb:536:in `breakpoint'
from test/integration/integration_test.rb:10:in `test_truth'
from /usr/local/lib/ruby/1.8/test/unit/testcase.rb:70:in `run'
from /Users/jasongarber/Documents/form_test_helper/config/../vendor/rails/actionpack/lib/action_controller/integration.rb:453:in `run'
from /usr/local/lib/ruby/1.8/test/unit/testsuite.rb:32:in `run'
from /usr/local/lib/ruby/1.8/test/unit/testsuite.rb:31:in `run'
from /usr/local/lib/ruby/1.8/test/unit/testsuite.rb:32:in `run'
from /usr/local/lib/ruby/1.8/test/unit/testsuite.rb:31:in `run'
from /usr/local/lib/ruby/1.8/test/unit/ui/testrunnermediator.rb:44:in `run_suite'
from /usr/local/lib/ruby/1.8/test/unit/ui/console/testrunner.rb:65:in `start_mediator'
from /usr/local/lib/ruby/1.8/test/unit/ui/console/testrunner.rb:39:in `start'
from /usr/local/lib/ruby/1.8/test/unit/ui/testrunnerutilities.rb:27:in `run'
from /usr/local/lib/ruby/1.8/test/unit/autorunner.rb:200:in `run'
from /usr/local/lib/ruby/1.8/test/unit/autorunner.rb:13:in `run'
from /usr/local/lib/ruby/1.8/test/unit.rb:285