Skip to content

Commit f47917c

Browse files
committed
Added tests of the new functions
1 parent bcec42e commit f47917c

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed

tests/test_02_jwk.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717

1818
from cryptojwt.exception import DeSerializationNotPossible, UnsupportedAlgorithm
1919
from cryptojwt.exception import WrongUsage
20+
from cryptojwt.jwk.hmac import new_sym_key
2021

2122
from cryptojwt.utils import as_unicode, as_bytes
2223
from cryptojwt.utils import b64e
@@ -578,6 +579,7 @@ def test_appropriate():
578579
assert _j1.appropriate_for('sign')
579580
assert _j1.appropriate_for('encrypt') is False
580581

582+
581583
def test_thumbprint_ec():
582584
jwk = key_from_jwk_dict({
583585
"kty": "EC",
@@ -588,6 +590,7 @@ def test_thumbprint_ec():
588590
thumbprint = "RCWR9g8NPt9iZeq-lh-qXbiFxXcU0_o1YLitDj3kpg0"
589591
assert (jwk.thumbprint('SHA-256').decode()) == thumbprint
590592

593+
591594
def test_thumbprint_rsa():
592595
jwk = key_from_jwk_dict({
593596
"kty": "RSA",
@@ -596,3 +599,11 @@ def test_thumbprint_rsa():
596599
})
597600
thumbprint = "Q1wZMrouq_iCnG7mr2y03Zxf7iE9mie-y_Mfh9-Cgk0"
598601
assert (jwk.thumbprint('SHA-256').decode()) == thumbprint
602+
603+
604+
def test_mint_new_sym_key():
605+
key = new_sym_key(bytes=24, use='sig', kid='one')
606+
assert key
607+
assert key.use == 'sig'
608+
assert key.kid == 'one'
609+
assert len(key.key) == 24

tests/test_03_key_bundle.py

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -564,6 +564,7 @@ def test_dump_jwk():
564564
assert key.kty == 'RSA'
565565
assert isinstance(key.public_key(), rsa.RSAPublicKey)
566566

567+
567568
JWKS_DICT = {"keys": [
568569
{
569570
"n": u"zkpUgEgXICI54blf6iWiD2RbMDCOO1jV0VSff1MFFnujM4othfMsad7H1kRo50YM5S_X9TdvrpdOfpz5aBaKFhT6Ziv0nhtcekq1eRl8mjBlvGKCE5XGk-0LFSDwvqgkJoFYInq7bu0a4JEzKs5AyJY75YlGh879k1Uu2Sv3ZZOunfV1O1Orta-NvS-aG_jN5cstVbCGWE20H0vFVrJKNx0Zf-u-aA-syM4uX7wdWgQ-owoEMHge0GmGgzso2lwOYf_4znanLwEuO3p5aabEaFoKNR4K6GjQcjBcYmDEE4CtfRU9AEmhcD1kleiTB9TjPWkgDmT9MXsGxBHf3AKT5w",
@@ -602,7 +603,8 @@ def test_keys():
602603
b'iA7PvG_DfJIeeqQcuXFmvUGjqBkda8In_uMpZrcodVA',
603604
b'kLsuyGef1kfw5-t-N9CJLIHx_dpZ79-KemwqjwdrvTI',
604605
b'8w34j9PLyCVC7VOZZb1tFVf0MOa2KZoy87lICMeD5w8',
605-
b'nKzalL5pJOtVAdCtBAU8giNRNimE-XbylWZ4vq6ZlF8'
606+
b'nKzalL5pJOtVAdCtBAU8giNRNimE-XbylWZ4vq6ZlF8',
607+
b'akXzyGlXg8yLhsCczKb_r8VERLx7-iZBUMIVgg2K7p4'
606608
]
607609

608610

@@ -656,6 +658,13 @@ def test_jwks_url():
656658
]
657659

658660

661+
KEYSPEC_6 = [
662+
{"type": "oct", "bytes": "24", "use": ["enc"], 'kid':'code'},
663+
{"type": "oct", "bytes": "24", "use": ["enc"], 'kid': 'token'},
664+
{"type": "oct", "bytes": "24", "use": ["enc"], 'kid': 'refresh_token'}
665+
]
666+
667+
659668
def test_key_diff_none():
660669
_kb = build_key_bundle(key_conf=KEYSPEC)
661670

@@ -764,3 +773,12 @@ def test_key_rollover():
764773

765774
assert len(kb_1.get(only_active=False)) == 4
766775
assert len(kb_1.get()) == 2
776+
777+
778+
def test_build_key_bundle_sym():
779+
_kb = build_key_bundle(key_conf=KEYSPEC_6)
780+
assert len(_kb) == 3
781+
782+
assert len(_kb.get('RSA')) == 0
783+
assert len(_kb.get('EC')) == 0
784+
assert len(_kb.get('OCT')) == 3

0 commit comments

Comments
 (0)