diff options
author | Chad Whitacre <chad@zetaweb.com> | 2014-09-17 12:07:17 -0400 |
---|---|---|
committer | Chad Whitacre <chad@zetaweb.com> | 2014-09-17 12:07:17 -0400 |
commit | 3afd5cd84ee21312b0081850f7f4895c95bb121d (patch) | |
tree | 60b8b77b9aeb448a9c68f1f0fc643a65df8072c2 | |
parent | 0d87ea236379023aa646a91df21e52c1c674dd6a (diff) | |
download | oauthlib-3afd5cd84ee21312b0081850f7f4895c95bb121d.tar.gz |
Failing test for token_type relaxation
-rw-r--r-- | tests/oauth2/rfc6749/test_parameters.py | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/tests/oauth2/rfc6749/test_parameters.py b/tests/oauth2/rfc6749/test_parameters.py index a7e8ee8..c411fee 100644 --- a/tests/oauth2/rfc6749/test_parameters.py +++ b/tests/oauth2/rfc6749/test_parameters.py @@ -125,6 +125,14 @@ class ParameterTests(TestCase): 'scope': ['abc', 'def'] } + json_notype_dict = { + 'access_token': '2YotnFZFEjr1zCsicMWpAA', + 'expires_in': 3600, + 'expires_at': 4600, + 'refresh_token': 'tGzv3JOkF0XG5Qx2TlKWIA', + 'example_parameter': 'example_value', + } + url_encoded_response = ('access_token=2YotnFZFEjr1zCsicMWpAA' '&token_type=example' '&expires_in=3600' @@ -175,8 +183,6 @@ class ParameterTests(TestCase): self.implicit_dict) self.assertRaises(MissingTokenError, parse_implicit_response, self.implicit_notoken) - self.assertRaises(MissingTokenTypeError, parse_implicit_response, - self.implicit_notype) self.assertRaises(ValueError, parse_implicit_response, self.implicit_nostate, state=self.state) self.assertRaises(ValueError, parse_implicit_response, @@ -189,6 +195,15 @@ class ParameterTests(TestCase): self.assertRaises(MissingTokenError, parse_token_response, self.json_notoken) self.assertRaises(Warning, parse_token_response, self.json_response, scope='aaa') + def test_json_token_notype(self): + """Verify strict token type parsing only when configured. """ + self.assertEqual(parse_token_response(self.json_notype), self.json_notype_dict) + try: + os.environ['OAUTHLIB_STRICT_TOKEN_TYPE'] = '1' + self.assertRaises(MissingTokenTypeError, parse_token_response, self.json_notype) + finally: + del os.environ['OAUTHLIB_STRICT_TOKEN_TYPE'] + def test_url_encoded_token_response(self): """Verify fallback parameter parsing and validation for token responses. """ self.assertEqual(parse_token_response(self.url_encoded_response), self.json_dict) |