diff options
author | Ilya Etingof <etingof@gmail.com> | 2018-12-31 00:08:03 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-31 00:08:03 +0100 |
commit | fc24965de8d9a50188231fe0915fbe94ca9ee00b (patch) | |
tree | 41fce5dfc9e76cf4e2233d4bc506756782480b97 /tests | |
parent | b9614196ebf028b3874549e3042080a9f97b8ca3 (diff) | |
parent | d8911eb80ea44e132a54cad501f80bd79809ec4e (diff) | |
download | pyasn1-modules-fc24965de8d9a50188231fe0915fbe94ca9ee00b.tar.gz |
Merge pull request #20 from russhousley/master
Add modules for RFC5083 and RFC5084
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_rfc5083.py | 53 | ||||
-rw-r--r-- | tests/test_rfc5084.py | 54 |
2 files changed, 107 insertions, 0 deletions
diff --git a/tests/test_rfc5083.py b/tests/test_rfc5083.py new file mode 100644 index 0000000..08eabfb --- /dev/null +++ b/tests/test_rfc5083.py @@ -0,0 +1,53 @@ +# +# This file is part of pyasn1-modules software. +# +# Created by Russ Housley +# Copyright (c) 2018, Vigil Security, LLC +# License: http://snmplabs.com/pyasn1/license.html +# + +import sys + +from pyasn1.codec.der import decoder as der_decoder +from pyasn1.codec.der import encoder as der_encoder + +from pyasn1_modules import pem +from pyasn1_modules import rfc5083 + +try: + import unittest2 as unittest +except ImportError: + import unittest + + +class AuthEnvelopedDataTestCase(unittest.TestCase): + pem_text = """\ +MIICdQIBADGCAiekggIjBgsqhkiG9w0BCRANATCCAhICAQAEE3B0Zi1rbWM6MTM2MTQxMjIx +MTIwDQYLKoZIhvcNAQkQAzAwCwYJYIZIAWUDBAEtMIIBsDCCAawCAQKAFJ7rZ8m5WnTUTS8W +OWaA6AG1y6ScMA0GCSqGSIb3DQEBAQUABIIBgHfnHNqDbyyql2NqX6UQggelWMTjwzJJ1L2e +rbsj1bIAGmpIsUijw+fX8VOS7v1C9ui2Md9NFgCfkmKLo8T/jELqrk7MpMu09G5zDgeXzJfQ +DFc115wbrWAUU3XP7XIb6TNOc3xtq4UxA5V6jNUK2XyWKpjzOtM7gm0VWIJGVVlYu+u32LQc +CjRFb87kvOY/WEnjxQpCW8g+4V747Ud97dYpMub7TLJiRNZkdHnq8xEGKlXjVHSgc10lhphe +1kFGeCpfJEsqjtN7YsVzf65ri9Z+3FJ1IO4cnMDbzGhyRXkS7a0k58/miJbSj88PvzKNSURw +pu4YHMQQX/mjT2ey1SY4ihPMuxxgTdCa04L0UxaRr7xAucz3n2UWShelm3IIjnWRlYdXypnX +vKvwCLoeh5mJwUl1JNFPCQkQ487cKRyobUyNgXQKT4ZDHCgXciwsX5nTsom87Ixp5vqSDJ+D +hXA0r/Caiu1vnY5X9GLHSkqgXkgqgUuu0LfcsQERD8psfQQogbiuZDqJmYt1Iau/pkuGfmee +qeiM3aeQ4NZf9AFZUVWBGArPNHrvVDA3BgkqhkiG9w0BBwEwGwYJYIZIAWUDBAEuMA4EDMr+ +ur76ztut3sr4iIANmvLRbyFUf87+2bPvLQQMoOWSXMGE4BckY8RM +""" + + def setUp(self): + self.asn1Spec = rfc5083.AuthEnvelopedData() + + def testDerCodec(self): + substrate = pem.readBase64fromText(self.pem_text) + asn1Object, rest = der_decoder.decode(substrate, asn1Spec=self.asn1Spec) + assert not rest + assert asn1Object.prettyPrint() + assert der_encoder.encode(asn1Object) == substrate + + +suite = unittest.TestLoader().loadTestsFromModule(sys.modules[__name__]) + +if __name__ == '__main__': + unittest.TextTestRunner(verbosity=2).run(suite) diff --git a/tests/test_rfc5084.py b/tests/test_rfc5084.py new file mode 100644 index 0000000..dae84b4 --- /dev/null +++ b/tests/test_rfc5084.py @@ -0,0 +1,54 @@ +# +# This file is part of pyasn1-modules software. +# +# Created by Russ Housley +# Copyright (c) 2018, Vigil Security, LLC +# License: http://snmplabs.com/pyasn1/license.html +# + +import sys + +from pyasn1.codec.der import decoder as der_decoder +from pyasn1.codec.der import encoder as der_encoder + +from pyasn1_modules import pem +from pyasn1_modules import rfc5084 + +try: + import unittest2 as unittest +except ImportError: + import unittest + + +class CCMParametersTestCase(unittest.TestCase): + ccm_pem_text = "MBEEDE2HVyIurFKUEX8MEgIBBA==" + + def setUp(self): + self.asn1Spec = rfc5084.CCMParameters() + + def testDerCodec(self): + substrate = pem.readBase64fromText(self.ccm_pem_text) + asn1Object, rest = der_decoder.decode(substrate, asn1Spec=self.asn1Spec) + assert not rest + assert asn1Object.prettyPrint() + assert der_encoder.encode(asn1Object) == substrate + + +class GCMParametersTestCase(unittest.TestCase): + gcm_pem_text = "MBEEDE2HVyIurFKUEX8MEgIBEA==" + + def setUp(self): + self.asn1Spec = rfc5084.GCMParameters() + + def testDerCodec(self): + substrate = pem.readBase64fromText(self.gcm_pem_text) + asn1Object, rest = der_decoder.decode(substrate, asn1Spec=self.asn1Spec) + assert not rest + assert asn1Object.prettyPrint() + assert der_encoder.encode(asn1Object) == substrate + + +suite = unittest.TestLoader().loadTestsFromModule(sys.modules[__name__]) + +if __name__ == '__main__': + unittest.TextTestRunner(verbosity=2).run(suite) |