diff options
| author | Kevin Christopher Henry <k@severian.com> | 2016-09-01 09:32:20 -0400 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2016-09-10 08:14:52 -0400 |
| commit | 4ef0e019b7dd3d2bf93b5c705b3b7df9cdb77561 (patch) | |
| tree | 3b87b0f6df6ca459833f0569df3c2f6320ff4d67 /tests/utils_tests/test_http.py | |
| parent | e7abb5ba8608f90ce97c6edb031ae877195616f5 (diff) | |
Fixed #27083 -- Added support for weak ETags.
Diffstat (limited to 'tests/utils_tests/test_http.py')
| -rw-r--r-- | tests/utils_tests/test_http.py | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/tests/utils_tests/test_http.py b/tests/utils_tests/test_http.py index e8b4e51eb3..ef4cb90ac4 100644 --- a/tests/utils_tests/test_http.py +++ b/tests/utils_tests/test_http.py @@ -208,14 +208,19 @@ class TestUtilsHttp(unittest.TestCase): class ETagProcessingTests(unittest.TestCase): def test_parsing(self): - etags = http.parse_etags(r'"", "etag", "e\"t\"ag", "e\\tag", W/"weak"') - self.assertEqual(etags, ['', 'etag', 'e"t"ag', r'e\tag', 'weak']) + self.assertEqual( + http.parse_etags(r'"" , "etag", "e\\tag", W/"weak"'), + ['""', '"etag"', r'"e\\tag"', 'W/"weak"'] + ) + self.assertEqual(http.parse_etags('*'), ['*']) + + # Ignore RFC 2616 ETags that are invalid according to RFC 7232. + self.assertEqual(http.parse_etags(r'"etag", "e\"t\"ag"'), ['"etag"']) def test_quoting(self): - original_etag = r'e\t"ag' - quoted_etag = http.quote_etag(original_etag) - self.assertEqual(quoted_etag, r'"e\\t\"ag"') - self.assertEqual(http.unquote_etag(quoted_etag), original_etag) + self.assertEqual(http.quote_etag('etag'), '"etag"') # unquoted + self.assertEqual(http.quote_etag('"etag"'), '"etag"') # quoted + self.assertEqual(http.quote_etag('W/"etag"'), 'W/"etag"') # quoted, weak class HttpDateProcessingTests(unittest.TestCase): |
