X-Git-Url: http://www.git.cypherpunks.ru/?p=pyderasn.git;a=blobdiff_plain;f=tests%2Ftest_crts.py;h=3f753e059013eabadeaa1c77fd67aed25d3a7133;hp=aaf359edf2b15b093f4cbc5540c29a761d5112fe;hb=011b627453f5bfe82bdd160edbb249a73f21082a;hpb=e1249a0c754920c57e6d7682458f50fd65b70026 diff --git a/tests/test_crts.py b/tests/test_crts.py index aaf359e..3f753e0 100644 --- a/tests/test_crts.py +++ b/tests/test_crts.py @@ -27,6 +27,7 @@ from pyderasn import Any from pyderasn import BitString from pyderasn import Boolean from pyderasn import Choice +from pyderasn import encode_cer from pyderasn import GeneralizedTime from pyderasn import hexdec from pyderasn import IA5String @@ -154,6 +155,15 @@ class UniqueIdentifier(BitString): pass +class KeyIdentifier(OctetString): + pass + + +class SubjectKeyIdentifier(KeyIdentifier): + pass + + + class Extension(Sequence): schema = ( ("extnID", ObjectIdentifier()), @@ -188,6 +198,7 @@ class Certificate(Sequence): ("signatureAlgorithm", AlgorithmIdentifier()), ("signatureValue", BitString()), ) + der_forced = True class TestGoSelfSignedVector(TestCase): @@ -347,6 +358,10 @@ class TestGoSelfSignedVector(TestCase): "998bb9a4a8cbeb34c0f0a78cf8d91ede14a5ed76bf116fe360aafa8821490435", )))) self.assertSequenceEqual(crt.encode(), raw) + self.assertEqual( + Certificate().decod(encode_cer(crt), ctx={"bered": True}), + crt, + ) class TestGoPayPalVector(TestCase): @@ -408,3 +423,7 @@ class TestGoPayPalVector(TestCase): pprint(crt) repr(crt) pickle_loads(pickle_dumps(crt, pickle_proto)) + self.assertEqual( + Certificate().decod(encode_cer(crt), ctx={"bered": True}), + crt, + )