summaryrefslogtreecommitdiff
path: root/tests/test_obj.py
diff options
context:
space:
mode:
authorMatěj Cepl <mcepl@cepl.eu>2016-05-13 17:05:06 +0200
committerMatěj Cepl <mcepl@cepl.eu>2016-07-12 19:09:22 +0200
commit0131624ae0b39f744136065d3b2ae239adc5813c (patch)
tree492af70d6f08713c0d614d7794406ba3386944ea /tests/test_obj.py
parent39f3ac7fd90a0112ac59057c9abe55885543985a (diff)
downloadm2crypto-0131624ae0b39f744136065d3b2ae239adc5813c.tar.gz
tests: type hints and PEP8ization
Diffstat (limited to 'tests/test_obj.py')
-rw-r--r--tests/test_obj.py56
1 files changed, 33 insertions, 23 deletions
diff --git a/tests/test_obj.py b/tests/test_obj.py
index c706e45..1d0ad02 100644
--- a/tests/test_obj.py
+++ b/tests/test_obj.py
@@ -8,29 +8,36 @@ try:
except ImportError:
import unittest
-from M2Crypto import X509, ASN1, BIO, Rand, m2
+from M2Crypto import ASN1, BIO, Rand, X509, m2
"""
These functions must be cleaned up and moved to some python module
Taken from CA managment code
"""
+
def x509_name2list(name):
for i in range(0, name.entry_count()):
- yield X509.X509_Name_Entry(m2.x509_name_get_entry(name._ptr(), i), _pyfree=0)
+ yield X509.X509_Name_Entry(m2.x509_name_get_entry(name._ptr(), i),
+ _pyfree=0)
+
def x509_name_entry2tuple(entry):
bio = BIO.MemoryBuffer()
m2.asn1_string_print(bio._ptr(), m2.x509_name_entry_get_data(entry._ptr()))
- return (m2.obj_obj2txt(m2.x509_name_entry_get_object(entry._ptr()), 0), bio.getvalue())
+ return (m2.obj_obj2txt(m2.x509_name_entry_get_object(entry._ptr()), 0),
+ bio.getvalue())
+
def tuple2x509_name_entry(tup):
obj, data = tup
- _x509_ne = m2.x509_name_entry_create_by_txt(None, obj, ASN1.MBSTRING_ASC, data, len(data))
+ _x509_ne = m2.x509_name_entry_create_by_txt(None, obj, ASN1.MBSTRING_ASC,
+ data, len(data))
if not _x509_ne:
raise ValueError("Invalid object indentifier: %s" % obj)
return X509.X509_Name_Entry(_x509_ne, _pyfree=1) # Prevent memory leaks
+
class ObjectsTestCase(unittest.TestCase):
def callback(self, *args):
@@ -38,9 +45,9 @@ class ObjectsTestCase(unittest.TestCase):
def test_obj2txt(self):
self.assertEqual(m2.obj_obj2txt(m2.obj_txt2obj("commonName", 0), 1),
- "2.5.4.3", "2.5.4.3")
+ b"2.5.4.3", b"2.5.4.3")
self.assertEqual(m2.obj_obj2txt(m2.obj_txt2obj("commonName", 0), 0),
- "commonName", "commonName")
+ b"commonName", b"commonName")
def test_nid(self):
self.assertEqual(m2.obj_ln2nid("commonName"),
@@ -70,36 +77,39 @@ class ObjectsTestCase(unittest.TestCase):
def test_x509_name(self):
n = X509.X509_Name()
- n.C = 'US' # It seems this actually needs to be a real 2 letter country code
- n.SP = 'State or Province'
- n.L = 'locality name'
- n.O = 'orhanization name'
- n.OU = 'org unit'
- n.CN = 'common name'
- n.Email = 'bob@example.com'
- n.serialNumber = '1234'
- n.SN = 'surname'
- n.GN = 'given name'
-
- n.givenName = 'name given'
+ # It seems this actually needs to be a real 2 letter country code
+ n.C = b'US'
+ n.SP = b'State or Province'
+ n.L = b'locality name'
+ n.O = b'orhanization name'
+ n.OU = b'org unit'
+ n.CN = b'common name'
+ n.Email = b'bob@example.com'
+ n.serialNumber = b'1234'
+ n.SN = b'surname'
+ n.GN = b'given name'
+
+ n.givenName = b'name given'
self.assertEqual(len(n), 11, len(n))
- tl = map(x509_name_entry2tuple, x509_name2list(n))
+ # Thierry: this call to list seems extraneous...
+ tl = [x509_name_entry2tuple(x) for x in x509_name2list(n)]
self.assertEqual(len(tl), len(n), len(tl))
x509_n = m2.x509_name_new()
- for o in map(tuple2x509_name_entry, tl):
+ for o in [tuple2x509_name_entry(x) for x in tl]:
m2.x509_name_add_entry(x509_n, o._ptr(), -1, 0)
o._pyfree = 0 # Take care of underlying object
n1 = X509.X509_Name(x509_n)
self.assertEqual(n.as_text(), n1.as_text(), n1.as_text())
+
def suite():
- suite = unittest.TestSuite()
- suite.addTest(unittest.makeSuite(ObjectsTestCase))
- return suite
+ s = unittest.TestSuite()
+ s.addTest(unittest.makeSuite(ObjectsTestCase))
+ return s
if __name__ == '__main__':