Fixed a bunch of tests that failed in 1.9 because they assumed that a Rack response was a String.
This commit is contained in:
parent
80095c54bd
commit
e1c030edd8
@ -44,6 +44,19 @@
|
||||
FIXTURE_LOAD_PATH = File.join(File.dirname(__FILE__), 'fixtures')
|
||||
FIXTURES = Pathname.new(FIXTURE_LOAD_PATH)
|
||||
|
||||
module RackTestUtils
|
||||
def body_to_string(body)
|
||||
if body.respond_to?(:each)
|
||||
str = ""
|
||||
body.each {|s| str << s }
|
||||
str
|
||||
else
|
||||
body
|
||||
end
|
||||
end
|
||||
extend self
|
||||
end
|
||||
|
||||
module SetupOnce
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
|
@ -285,6 +285,8 @@ def test_simple_action_not_cached
|
||||
assert_not_equal cached_time, @response.body
|
||||
end
|
||||
|
||||
include RackTestUtils
|
||||
|
||||
def test_action_cache_with_layout
|
||||
get :with_layout
|
||||
cached_time = content_to_cache
|
||||
@ -294,8 +296,8 @@ def test_action_cache_with_layout
|
||||
|
||||
get :with_layout
|
||||
assert_not_equal cached_time, @response.body
|
||||
|
||||
assert_equal @response.body, read_fragment('hostname.com/action_caching_test/with_layout')
|
||||
body = body_to_string(read_fragment('hostname.com/action_caching_test/with_layout'))
|
||||
assert_equal @response.body, body
|
||||
end
|
||||
|
||||
def test_action_cache_with_layout_and_layout_cache_false
|
||||
@ -308,7 +310,8 @@ def test_action_cache_with_layout_and_layout_cache_false
|
||||
get :layout_false
|
||||
assert_not_equal cached_time, @response.body
|
||||
|
||||
assert_equal cached_time, read_fragment('hostname.com/action_caching_test/layout_false')
|
||||
body = body_to_string(read_fragment('hostname.com/action_caching_test/layout_false'))
|
||||
assert_equal cached_time, body
|
||||
end
|
||||
|
||||
def test_action_cache_conditional_options
|
||||
|
@ -765,7 +765,7 @@ def render(params={})
|
||||
Customer.any_instance.stubs(:errors).returns(errors)
|
||||
|
||||
post :using_resource_with_action
|
||||
assert_equal "foo - #{[:html].to_s}", @controller.response_body
|
||||
assert_equal "foo - #{[:html].to_s}", @controller.response.body
|
||||
end
|
||||
|
||||
def test_respond_as_responder_entry_point
|
||||
|
@ -18,6 +18,8 @@ def call(env)
|
||||
end
|
||||
|
||||
class TestMiddleware < ActiveSupport::TestCase
|
||||
include RackTestUtils
|
||||
|
||||
def setup
|
||||
@app = Rack::Builder.new do
|
||||
use MetalTest::MetalMiddleware
|
||||
@ -29,14 +31,14 @@ def setup
|
||||
env = Rack::MockRequest.env_for("/authed")
|
||||
response = @app.call(env)
|
||||
|
||||
assert_equal "Hello World", response[2]
|
||||
assert_equal "Hello World", body_to_string(response[2])
|
||||
end
|
||||
|
||||
test "it can return a response using the normal AC::Metal techniques" do
|
||||
env = Rack::MockRequest.env_for("/")
|
||||
response = @app.call(env)
|
||||
|
||||
assert_equal "Not authed!", response[2]
|
||||
assert_equal "Not authed!", body_to_string(response[2])
|
||||
assert_equal 401, response[0]
|
||||
end
|
||||
end
|
||||
|
@ -44,7 +44,7 @@ module MiddlewareTests
|
||||
|
||||
test "middleware that is 'use'd is called as part of the Rack application" do
|
||||
result = @app.call(env_for("/"))
|
||||
assert_equal "Hello World", result[2]
|
||||
assert_equal "Hello World", RackTestUtils.body_to_string(result[2])
|
||||
assert_equal "Success", result[1]["Middleware-Test"]
|
||||
end
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user