@@ -58,6 +58,11 @@ def set_permanent_signed_cookie
58
58
cookies . permanent . signed [ :remember_me ] = 100
59
59
end
60
60
61
+ def set_cookies_manually
62
+ headers [ 'Set-Cookie' ] = "foo=bar; path=/\n bar=baz; path=/"
63
+ cookies [ 'user-name' ] = "david"
64
+ end
65
+
61
66
def rescue_action ( e )
62
67
raise unless ActionView ::MissingTemplate # No templates here, and we don't care about the output
63
68
end
@@ -123,7 +128,7 @@ def test_not_setting_cookie_with_secure
123
128
def test_multiple_cookies
124
129
get :set_multiple_cookies
125
130
assert_equal 2 , @response . cookies . size
126
- assert_equal "user_name=david; path=/; expires=Mon, 10-Oct-2005 05:00:00 GMT\n " , @response . headers [ "Set-Cookie" ] [ 0 ]
131
+ assert_equal "user_name=david; path=/; expires=Mon, 10-Oct-2005 05:00:00 GMT" , @response . headers [ "Set-Cookie" ] [ 0 ]
127
132
assert_equal "login=XJ-122; path=/" , @response . headers [ "Set-Cookie" ] [ 1 ]
128
133
assert_equal ( { "login" => "XJ-122" , "user_name" => "david" } , @response . cookies )
129
134
end
@@ -193,6 +198,11 @@ def test_permanent_signed_cookie
193
198
assert_equal 100 , @controller . send ( :cookies ) . signed [ :remember_me ]
194
199
end
195
200
201
+ def test_manual_cookie_header_is_merged
202
+ get :set_cookies_manually
203
+ assert_equal [ "foo=bar; path=/" , "bar=baz; path=/" , "user-name=david; path=/" ] , @response . headers [ "Set-Cookie" ]
204
+ end
205
+
196
206
private
197
207
def with_environment ( enviroment )
198
208
old_rails = Object . const_get ( :Rails ) rescue nil
0 commit comments