コード例 #1
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_to_payload_with_string_audience(self):
     payload = {
         'iss': 'Issuer',
         'aud': 'bob',
     }
     token = jwt.raw_jwt_from_json_payload(json.dumps(payload))
     expected = {
         'iss': 'Issuer',
         'aud': ['bob'],
     }
     self.assertEqual(json.loads(token.json_payload()), expected)
コード例 #2
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_payload_with_invalid_utf16(self):
     # the json string contains "\uD834", which gets decoded by the json decoder
     # into an invalid UTF16 character.
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload(u'{"iss":"\\uD834"}')
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload(u'{"\\uD834":"issuer"}')
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload(u'{"a":{"a":{"a":"\\uD834"}}}')
コード例 #3
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_to_payload(self):
     payload = {
         'iss': 'Issuer',
         'sub': 'Subject',
         'jti': 'JWT ID',
         'aud': ['bob', 'eve'],
         'iat': ISSUED_AT_TIMESTAMP,
         'nbf': NOT_BEFORE_TIMESTAMP,
         'exp': EXPIRATION_TIMESTAMP,
         'account_no': 1234,
         'amount': 1.5,
         'name': 'Peter',
         'null': None,
         'array': [1, None, 'Bob', 2.2, {
             'foo': 'bar'
         }],
         'object': {
             'one': {
                 'two': 3
             }
         }
     }
     token = jwt.raw_jwt_from_json_payload(json.dumps(payload))
     self.assertEqual(json.loads(token.json_payload()), payload)
コード例 #4
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_payload_with_utf16_surrogate(self):
     # the json string contains "\uD834\uDD1E", which the JSON decoder decodes to
     # the G clef character (U+1D11E).
     token = jwt.raw_jwt_from_json_payload(u'{"iss":"\\uD834\\uDD1E"}')
     self.assertEqual(token.issuer(), u'\U0001d11e')
コード例 #5
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_payload_with_infinity_expiration_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"exp":Infinity}')
コード例 #6
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_payload_with_negative_expiration_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"exp":-1}')
コード例 #7
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_payload_with_exp_expiration_success(self):
     token = jwt.raw_jwt_from_json_payload('{"exp":1e10}')
     self.assertEqual(
         token.expiration(),
         datetime.datetime.fromtimestamp(10000000000,
                                         datetime.timezone.utc))
コード例 #8
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_payload_with_wrong_not_before_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"nbf":"123"}')
コード例 #9
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_payload_with_wrong_issued_at_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"iat":"123"}')
コード例 #10
0
ファイル: _raw_jwt_test.py プロジェクト: rohfl/tink
 def test_from_payload_with_wrong_jwt_id_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"jti":123}')
コード例 #11
0
 def test_from_to_payload_with_wrong_expiration_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"exp":"123"}')
コード例 #12
0
 def test_from_to_payload_with_wrong_subject_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"sub":123}')