|
1 | 1 | # Simple test suite for http/cookies.py |
2 | | -import base64 |
3 | 2 | import copy |
4 | 3 | import unittest |
5 | 4 | import doctest |
6 | 5 | from http import cookies |
7 | 6 | import pickle |
| 7 | +import urllib.parse |
8 | 8 | from test import support |
9 | 9 | from test.support.testcase import ExtraAssertions |
10 | 10 |
|
@@ -153,19 +153,19 @@ def test_load(self): |
153 | 153 |
|
154 | 154 | self.assertEqual(C.output(['path']), |
155 | 155 | 'Set-Cookie: Customer="WILE_E_COYOTE"; Path=/acme') |
156 | | - cookie_encoded = base64.b64encode(b'Customer="WILE_E_COYOTE"; Path=/acme; Version=1').decode('ascii') |
| 156 | + cookie_encoded = urllib.parse.quote('Customer="WILE_E_COYOTE"; Path=/acme; Version=1', safe='', encoding='utf-8') |
157 | 157 | self.assertEqual(C.js_output(), fr""" |
158 | 158 | <script type="text/javascript"> |
159 | 159 | <!-- begin hiding |
160 | | - document.cookie = atob("{cookie_encoded}"); |
| 160 | + document.cookie = decodeURIComponent("{cookie_encoded}"); |
161 | 161 | // end hiding --> |
162 | 162 | </script> |
163 | 163 | """) |
164 | | - cookie_encoded = base64.b64encode(b'Customer="WILE_E_COYOTE"; Path=/acme').decode('ascii') |
| 164 | + cookie_encoded = urllib.parse.quote('Customer="WILE_E_COYOTE"; Path=/acme', safe='', encoding='utf-8') |
165 | 165 | self.assertEqual(C.js_output(['path']), fr""" |
166 | | - <script type="text/javascript"> |
| 166 | + script type="text/javascript"> |
167 | 167 | <!-- begin hiding |
168 | | - document.cookie = atob("{cookie_encoded}"); |
| 168 | + document.cookie = decodeURIComponent("{cookie_encoded}"); |
169 | 169 | // end hiding --> |
170 | 170 | </script> |
171 | 171 | """) |
@@ -262,19 +262,19 @@ def test_quoted_meta(self): |
262 | 262 |
|
263 | 263 | self.assertEqual(C.output(['path']), |
264 | 264 | 'Set-Cookie: Customer="WILE_E_COYOTE"; Path=/acme') |
265 | | - expected_encoded_cookie = base64.b64encode(b'Customer=\"WILE_E_COYOTE\"; Path=/acme; Version=1').decode('ascii') |
| 265 | + expected_encoded_cookie = urllib.parse.quote('Customer=\"WILE_E_COYOTE\"; Path=/acme; Version=1', safe='', encoding='utf-8') |
266 | 266 | self.assertEqual(C.js_output(), fr""" |
267 | 267 | <script type="text/javascript"> |
268 | 268 | <!-- begin hiding |
269 | | - document.cookie = atob("{expected_encoded_cookie}"); |
| 269 | + document.cookie = decodeURIComponent("{expected_encoded_cookie}"); |
270 | 270 | // end hiding --> |
271 | 271 | </script> |
272 | 272 | """) |
273 | | - expected_encoded_cookie = base64.b64encode(b'Customer=\"WILE_E_COYOTE\"; Path=/acme').decode('ascii') |
| 273 | + expected_encoded_cookie = urllib.parse.quote('Customer=\"WILE_E_COYOTE\"; Path=/acme', safe='', encoding='utf-8') |
274 | 274 | self.assertEqual(C.js_output(['path']), fr""" |
275 | 275 | <script type="text/javascript"> |
276 | 276 | <!-- begin hiding |
277 | | - document.cookie = atob("{expected_encoded_cookie}"); |
| 277 | + document.cookie = decodeURIComponent("{expected_encoded_cookie}"); |
278 | 278 | // end hiding --> |
279 | 279 | </script> |
280 | 280 | """) |
@@ -365,13 +365,14 @@ def test_setter(self): |
365 | 365 | self.assertEqual( |
366 | 366 | M.output(), |
367 | 367 | "Set-Cookie: %s=%s; Path=/foo" % (i, "%s_coded_val" % i)) |
368 | | - expected_encoded_cookie = base64.b64encode( |
369 | | - ("%s=%s; Path=/foo" % (i, "%s_coded_val" % i)).encode("ascii") |
370 | | - ).decode('ascii') |
| 368 | + expected_encoded_cookie = urllib.parse.quote( |
| 369 | + "%s=%s; Path=/foo" % (i, "%s_coded_val" % i), |
| 370 | + safe='', encoding='utf-8', |
| 371 | + ) |
371 | 372 | expected_js_output = """ |
372 | 373 | <script type="text/javascript"> |
373 | 374 | <!-- begin hiding |
374 | | - document.cookie = atob("%s"); |
| 375 | + document.cookie = decodeURIComponent("%s"); |
375 | 376 | // end hiding --> |
376 | 377 | </script> |
377 | 378 | """ % (expected_encoded_cookie,) |
|
0 commit comments