Skip to content

Commit c5b7c7a

Browse files
committed
test coverage for CurveFp.__str__
1 parent f369620 commit c5b7c7a

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

src/ecdsa/ellipticcurve.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,11 +136,17 @@ def contains_point(self, x, y):
136136
return (y * y - ((x * x + self.__a) * x + self.__b)) % self.__p == 0
137137

138138
def __str__(self):
139-
return "CurveFp(p=%d, a=%d, b=%d, h=%d)" % (
139+
if self.__h is not None:
140+
return "CurveFp(p={0}, a={1}, b={2}, h={3})".format(
141+
self.__p,
142+
self.__a,
143+
self.__b,
144+
self.__h,
145+
)
146+
return "CurveFp(p={0}, a={1}, b={2})".format(
140147
self.__p,
141148
self.__a,
142149
self.__b,
143-
self.__h,
144150
)
145151

146152

src/ecdsa/test_ellipticcurve.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,13 @@ def test_conflation_curves(self):
9797
self.assertDictEqual({c_23: None}, {eq1: None})
9898
self.assertIn(eq2, {eq3: None})
9999

100+
def test___str__(self):
101+
self.assertEqual(str(self.c_23), "CurveFp(p=23, a=1, b=1)")
102+
103+
def test___str___with_cofactor(self):
104+
c = CurveFp(23, 1, 1, 4)
105+
self.assertEqual(str(c), "CurveFp(p=23, a=1, b=1, h=4)")
106+
100107

101108
class TestPoint(unittest.TestCase):
102109
@classmethod

0 commit comments

Comments
 (0)