summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJordan Cook <jordan.cook.git@proton.me>2022-08-14 18:39:14 -0500
committerJordan Cook <jordan.cook.git@proton.me>2022-08-15 13:59:11 -0500
commit8dcc39a856e4c9635dc3b75deb91508c3a7e144d (patch)
tree50f614adc4acac6e001b6bf6af670dc5f547431e /tests
parentbba301df348b700bffecbe0bf8991ee64502de38 (diff)
downloadrequests-cache-8dcc39a856e4c9635dc3b75deb91508c3a7e144d.tar.gz
Add support for duplicate request params
Diffstat (limited to 'tests')
-rw-r--r--tests/unit/test_cache_keys.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/unit/test_cache_keys.py b/tests/unit/test_cache_keys.py
index 3371d70..cb76f52 100644
--- a/tests/unit/test_cache_keys.py
+++ b/tests/unit/test_cache_keys.py
@@ -41,6 +41,25 @@ def test_create_key__normalize_key_only_params():
request_2 = Request(method='GET', url='https://img.site.com/base/img.jpg?param_2')
assert create_key(request_1) != create_key(request_2)
+ request_1 = Request(method='GET', url='https://img.site.com/base/img.jpg?k=v&param_1')
+ request_2 = Request(method='GET', url='https://img.site.com/base/img.jpg?param_1&k=v')
+ assert create_key(request_1) == create_key(request_2)
+
+
+def test_create_key__normalize_duplicate_params():
+ request_1 = Request(method='GET', url='https://img.site.com/base/img.jpg?param_1=a&param_1=b')
+ request_2 = Request(method='GET', url='https://img.site.com/base/img.jpg?param_1=a')
+ request_3 = Request(method='GET', url='https://img.site.com/base/img.jpg?param_1=b')
+ assert create_key(request_1) != create_key(request_2) != create_key(request_3)
+
+ request_1 = Request(
+ method='GET', url='https://img.site.com/base/img.jpg?param_1=a&param_1=b&k=v'
+ )
+ request_2 = Request(
+ method='GET', url='https://img.site.com/base/img.jpg?param_1=b&param_1=a', params={'k': 'v'}
+ )
+ assert create_key(request_1) == create_key(request_2)
+
def test_normalize_request__json_body():
request = Request(