aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/cryptography/hazmat/primitives/asymmetric/dsa.py13
-rw-r--r--tests/hazmat/primitives/test_dsa.py15
2 files changed, 28 insertions, 0 deletions
diff --git a/src/cryptography/hazmat/primitives/asymmetric/dsa.py b/src/cryptography/hazmat/primitives/asymmetric/dsa.py
index 184177e0..511d3464 100644
--- a/src/cryptography/hazmat/primitives/asymmetric/dsa.py
+++ b/src/cryptography/hazmat/primitives/asymmetric/dsa.py
@@ -166,6 +166,13 @@ class DSAParameterNumbers(object):
def __ne__(self, other):
return not self == other
+ def __repr__(self):
+ return (
+ "<DSAParameterNumbers(p={self.p}, q={self.q}, g={self.g})>".format(
+ self=self
+ )
+ )
+
class DSAPublicNumbers(object):
def __init__(self, y, parameter_numbers):
@@ -198,6 +205,12 @@ class DSAPublicNumbers(object):
def __ne__(self, other):
return not self == other
+ def __repr__(self):
+ return (
+ "<DSAPublicNumbers(y={self.y}, "
+ "parameter_numbers={self.parameter_numbers})>".format(self=self)
+ )
+
class DSAPrivateNumbers(object):
def __init__(self, x, public_numbers):
diff --git a/tests/hazmat/primitives/test_dsa.py b/tests/hazmat/primitives/test_dsa.py
index 6ad9762a..46c86d54 100644
--- a/tests/hazmat/primitives/test_dsa.py
+++ b/tests/hazmat/primitives/test_dsa.py
@@ -721,6 +721,21 @@ class TestDSANumbers(object):
with pytest.raises(TypeError):
dsa.DSAPrivateNumbers(x=None, public_numbers=public_numbers)
+ def test_repr(self):
+ parameter_numbers = dsa.DSAParameterNumbers(p=1, q=2, g=3)
+ assert (
+ repr(parameter_numbers) == "<DSAParameterNumbers(p=1, q=2, g=3)>"
+ )
+
+ public_numbers = dsa.DSAPublicNumbers(
+ y=4,
+ parameter_numbers=parameter_numbers
+ )
+ assert repr(public_numbers) == (
+ "<DSAPublicNumbers(y=4, parameter_numbers=<DSAParameterNumbers(p=1"
+ ", q=2, g=3)>)>"
+ )
+
class TestDSANumberEquality(object):
def test_parameter_numbers_eq(self):