提交 e1c030ed 编写于 作者: W wycats

Fixed a bunch of tests that failed in 1.9 because they assumed that a Rack response was a String.

上级 80095c54
......@@ -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
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册