Skip to content

Commit 5e81b4c

Browse files
committed
Added test for get_signature_algorithm_from_private_key
Signed-off-by: kimbeelen <kbeelen@infiniot.nl>
1 parent 739c0ec commit 5e81b4c

1 file changed

Lines changed: 21 additions & 0 deletions

File tree

test/test_signature_algorithms.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import pytest
2+
from cryptography.hazmat.primitives import serialization
3+
from cryptography.hazmat.primitives.asymmetric import rsa, dsa, ec, ed25519, ed448
4+
from openleadr.messaging import get_signature_algorithm_from_private_key
5+
6+
7+
@pytest.mark.parametrize("key, expected_alg", [
8+
(rsa.generate_private_key(public_exponent=65537, key_size=2048), "rsa-sha256"),
9+
(dsa.generate_private_key(key_size=2048), "dsa-sha256"),
10+
(ec.generate_private_key(ec.SECP256R1()), "ecdsa-sha3-256"),
11+
(ed25519.Ed25519PrivateKey.generate(), "rsa-sha256"),
12+
(ed448.Ed448PrivateKey.generate(), "rsa-sha256"),
13+
])
14+
def test_key_type_sign_alg_match(key, expected_alg):
15+
key_encoding = serialization.Encoding.PEM
16+
key_format = serialization.PrivateFormat.PKCS8
17+
key_encryption_alg = serialization.NoEncryption()
18+
key_bytes = key.private_bytes(key_encoding, key_format, key_encryption_alg)
19+
detected_alg = get_signature_algorithm_from_private_key(key_bytes)
20+
21+
assert detected_alg == expected_alg, f"Expected {expected_alg} but got {detected_alg}"

0 commit comments

Comments
 (0)