Ejemplo n.º 1
0
 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)
Ejemplo n.º 2
0
 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"}}}')
Ejemplo n.º 3
0
 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)
Ejemplo n.º 4
0
 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')
Ejemplo n.º 5
0
 def test_from_payload_with_infinity_expiration_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"exp":Infinity}')
Ejemplo n.º 6
0
 def test_from_payload_with_negative_expiration_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"exp":-1}')
Ejemplo n.º 7
0
 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))
Ejemplo n.º 8
0
 def test_from_payload_with_wrong_not_before_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"nbf":"123"}')
Ejemplo n.º 9
0
 def test_from_payload_with_wrong_issued_at_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"iat":"123"}')
Ejemplo n.º 10
0
 def test_from_payload_with_wrong_jwt_id_fails(self):
     with self.assertRaises(jwt.JwtInvalidError):
         jwt.raw_jwt_from_json_payload('{"jti":123}')
Ejemplo n.º 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"}')
Ejemplo n.º 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}')