check other cases and add test_rsa.py

This commit is contained in:
Khwahish Patel
2025-03-16 15:32:25 +05:30
committed by Paul Robinson
parent d1390c824c
commit ea85067beb
2 changed files with 50 additions and 10 deletions

View File

@ -0,0 +1,30 @@
import pytest
from libp2p.crypto.exceptions import (
CryptographyError,
)
from libp2p.crypto.rsa import (
MAX_RSA_KEY_SIZE,
RSAPrivateKey,
validate_rsa_key_size,
)
def test_validate_rsa_key_size():
# Test valid key size
key = RSAPrivateKey.new(2048)
validate_rsa_key_size(key.impl)
# Test key size too large
with pytest.raises(
CryptographyError, match=f".*exceeds maximum allowed size {MAX_RSA_KEY_SIZE}"
):
RSAPrivateKey.new(MAX_RSA_KEY_SIZE + 1)
# Test negative key size (this would be caught when creating the key)
with pytest.raises(CryptographyError, match="RSA key size must be positive"):
RSAPrivateKey.new(-1)
# Test zero key size
with pytest.raises(CryptographyError, match="RSA key size must be positive"):
RSAPrivateKey.new(0)