Skip to content

Commit edeb9b6

Browse files
committed
keep empty params parsed from the URL (fixes joestump#22)
1 parent a0b84d6 commit edeb9b6

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

oauth2/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -582,7 +582,7 @@ def _split_header(header):
582582
@staticmethod
583583
def _split_url_string(param_str):
584584
"""Turn URL string into parameters."""
585-
parameters = parse_qs(param_str.encode('utf-8'), keep_blank_values=False)
585+
parameters = parse_qs(param_str.encode('utf-8'), keep_blank_values=True)
586586
for k, v in parameters.iteritems():
587587
parameters[k] = urllib.unquote(v[0])
588588
return parameters

tests/test_oauth.py

+11
Original file line numberDiff line numberDiff line change
@@ -531,6 +531,17 @@ def test_signature_base_string_with_query(self):
531531
self.assertEquals(normalized_params['alt'], 'json')
532532
self.assertEquals(normalized_params['max-contacts'], '10')
533533

534+
def test_get_normalized_parameters_empty(self):
535+
url = "http://sp.example.com/?empty="
536+
537+
req = oauth.Request("GET", url)
538+
539+
res = req.get_normalized_parameters()
540+
541+
expected='empty='
542+
543+
self.assertEquals(expected, res)
544+
534545
def test_get_normalized_parameters(self):
535546
url = "http://sp.example.com/"
536547

0 commit comments

Comments
 (0)