2010-08-26 33 views

Trả lời

13

Đây là mã mà làm việc on Rails 2.3.8 (dòng nhận xét ra làm bài kiểm tra không vượt qua):

test 'cookie testing should work' do 
    @request.cookies['foo'] = 'Foo' 
    # cookies['foo'] = 'Foo' 
    # this does not work to: CGI::Cookie.new('foo', 'bar') 
    get :index # does: cookies[:foo] = (cookies['foo'] || "") + " bar!" 
    # the cookie key in the controller can by a symbol, but not in the test 
    assert_response :success 
    assert_not_nil cookies['foo'], "Cookie with foo key should not be nil. Debug: Cookies=#{cookies.inspect}" 
    assert_equal "Foo bar!", cookies['foo'], "Debug: Cookies=#{cookies.inspect}" 
    # assert_not_nil @cookies['foo'], "Cookie with foo key should not be nil. Debug: Cookies=#{@cookies.inspect}" 
    # assert_not_nil @request.cookies['foo'], "Cookie with foo key should not be nil. Debug: Cookies=#{@request.cookies.inspect}" 
    # assert_equal "Foo bar!", @request.cookies['foo'], "Debug: Cookies=#{@request.cookies.inspect}" 
end 

Tôi có dành chút thời gian khá dài tìm kiếm câu trả lời.

+4

Vâng, mười phút dường như là một thời gian dài ;-)) – Arsen7

+2

Ông ấy :) Tôi đã có câu trả lời khi tôi chia sẻ nó trên StackOverflow;) –

+0

Đã cho tôi tuổi đẫm máu để tìm hiểu điều này, cảm ơn giúp – stephenmurdoch

Các vấn đề liên quan