|
1 | 1 | from unittest import TestCase |
2 | 2 | from joserfc.jws import register_key_set |
3 | | -from joserfc.jwk import JWKRegistry, guess_key |
4 | | -from joserfc.jwk import KeySet, OctKey, RSAKey |
| 3 | +from joserfc.jwk import guess_key, import_key, generate_key |
| 4 | +from joserfc.jwk import KeySet, OctKey, RSAKey, ECKey, OKPKey |
5 | 5 | from joserfc.errors import ( |
6 | 6 | UnsupportedKeyAlgorithmError, |
7 | 7 | UnsupportedKeyUseError, |
@@ -95,24 +95,34 @@ def test_invalid_key(self): |
95 | 95 |
|
96 | 96 | def test_import_key(self): |
97 | 97 | # test bytes |
98 | | - key = JWKRegistry.import_key(b"secret", "oct") |
| 98 | + key = import_key(b"secret", "oct") |
99 | 99 | self.assertIsInstance(key, OctKey) |
100 | 100 |
|
101 | 101 | # test string |
102 | | - key = JWKRegistry.import_key("secret", "oct") |
| 102 | + key = import_key("secret", "oct") |
103 | 103 | self.assertIsInstance(key, OctKey) |
104 | 104 |
|
105 | 105 | # test dict |
106 | 106 | data = key.as_dict() |
107 | | - key = JWKRegistry.import_key(data) |
| 107 | + key = import_key(data) |
108 | 108 | self.assertIsInstance(key, OctKey) |
109 | 109 |
|
110 | | - self.assertRaises(InvalidKeyTypeError, JWKRegistry.import_key, "secret", "invalid") |
| 110 | + self.assertRaises(InvalidKeyTypeError, import_key, "secret", "invalid") |
111 | 111 |
|
112 | 112 | def test_generate_key(self): |
113 | | - key = JWKRegistry.generate_key("oct", 8) |
| 113 | + key = generate_key("oct") |
114 | 114 | self.assertIsInstance(key, OctKey) |
115 | | - self.assertRaises(InvalidKeyTypeError, JWKRegistry.generate_key, "invalid", 8) |
| 115 | + |
| 116 | + key = generate_key("RSA") |
| 117 | + self.assertIsInstance(key, RSAKey) |
| 118 | + |
| 119 | + key = generate_key("EC") |
| 120 | + self.assertIsInstance(key, ECKey) |
| 121 | + |
| 122 | + key = generate_key("OKP") |
| 123 | + self.assertIsInstance(key, OKPKey) |
| 124 | + |
| 125 | + self.assertRaises(InvalidKeyTypeError, generate_key, "invalid", 8) |
116 | 126 |
|
117 | 127 | def test_check_use(self): |
118 | 128 | key = OctKey.import_key("secret", {"use": "sig"}) |
@@ -141,4 +151,4 @@ def test_check_ops(self): |
141 | 151 | self.assertRaises(UnsupportedKeyOperationError, key.check_key_op, "sign") |
142 | 152 |
|
143 | 153 | def test_import_without_kty(self): |
144 | | - self.assertRaises(MissingKeyTypeError, JWKRegistry.import_key, {}) |
| 154 | + self.assertRaises(MissingKeyTypeError, import_key, {}) |
0 commit comments