summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/middleware/tests.py5
-rw-r--r--tests/utils_tests/test_http.py4
2 files changed, 8 insertions, 1 deletions
diff --git a/tests/middleware/tests.py b/tests/middleware/tests.py
index 2804e743f7..bf96f05048 100644
--- a/tests/middleware/tests.py
+++ b/tests/middleware/tests.py
@@ -470,6 +470,11 @@ class ConditionalGetMiddlewareTest(SimpleTestCase):
self.resp = ConditionalGetMiddleware().process_response(self.req, self.resp)
self.assertEqual(self.resp.status_code, 304)
+ def test_if_none_match_and_same_etag_with_quotes(self):
+ self.req.META['HTTP_IF_NONE_MATCH'] = self.resp['ETag'] = '"spam"'
+ self.resp = ConditionalGetMiddleware().process_response(self.req, self.resp)
+ self.assertEqual(self.resp.status_code, 304)
+
def test_if_none_match_and_different_etag(self):
self.req.META['HTTP_IF_NONE_MATCH'] = 'spam'
self.resp['ETag'] = 'eggs'
diff --git a/tests/utils_tests/test_http.py b/tests/utils_tests/test_http.py
index f90486003a..6051818958 100644
--- a/tests/utils_tests/test_http.py
+++ b/tests/utils_tests/test_http.py
@@ -158,8 +158,10 @@ class ETagProcessingTests(unittest.TestCase):
self.assertEqual(etags, ['', 'etag', 'e"t"ag', r'e\tag', 'weak'])
def test_quoting(self):
- quoted_etag = http.quote_etag(r'e\t"ag')
+ 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)
class HttpDateProcessingTests(unittest.TestCase):