|
| 1 | +"""Module containing a few tests for this module""" |
| 2 | +import unittest |
| 3 | +import lib as sid |
| 4 | + |
| 5 | + |
| 6 | +class Testsid(unittest.TestCase): |
| 7 | + """Class for testing sid""" |
| 8 | + sid_null = 'S-1-0-0' |
| 9 | + sid_sample = 'S-1-5-21-2127521184-1604012920-1887927527-72713' |
| 10 | + sid_null_bin = bytearray( |
| 11 | + b'\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') |
| 12 | + sid_sample_bin = bytearray( |
| 13 | + b'\x01\x05\x00\x00\x00\x00\x00\x05\x15\x00\x00\x00\xa0e\xcf~xK\x9b_\xe7|\x87p\t\x1c\x01\x00') |
| 14 | + sid_null_b64 = b'AQEAAAAAAAAAAAAA' |
| 15 | + sid_sample_b64 = b'AQUAAAAAAAUVAAAAoGXPfnhLm1/nfIdwCRwBAA==' |
| 16 | + |
| 17 | + def test_init_string(self): |
| 18 | + """Test creating sids from strings""" |
| 19 | + self.assertEqual(self.sid_null, str(sid.sid(self.sid_null))) |
| 20 | + self.assertEqual(self.sid_sample, str(sid.sid(self.sid_sample))) |
| 21 | + |
| 22 | + def test_init_base64(self): |
| 23 | + """Test creating sids from base64""" |
| 24 | + self.assertEqual(self.sid_null, str( |
| 25 | + sid.sid(self.sid_null_b64, sid.SID_BASE64))) |
| 26 | + self.assertEqual(self.sid_sample, str( |
| 27 | + sid.sid(self.sid_sample_b64, sid.SID_BASE64))) |
| 28 | + |
| 29 | + def test_init_binary(self): |
| 30 | + """Test creating sids from binary""" |
| 31 | + self.assertEqual(self.sid_null, str( |
| 32 | + sid.sid(self.sid_null_bin, sid.SID_BINARY))) |
| 33 | + self.assertEqual(self.sid_sample, str( |
| 34 | + sid.sid(self.sid_sample_bin, sid.SID_BINARY))) |
| 35 | + |
| 36 | + def test_ldap(self): |
| 37 | + """Test ldap filter form of sid""" |
| 38 | + sid_null_ldap = '\\01\\01\\00\\00\\00\\00\\00\\00\\00\\00\\00\\00' |
| 39 | + sid_sample_ldap = '\\01\\05\\00\\00\\00\\00\\00\\05\\15\\00\\00\\00\\a0\\65\\cf\\7e\\78\\4b\\9b\\5f\\e7\\7c\\87\\70\\09\\1c\\01\\00' |
| 40 | + self.assertEqual(sid_null_ldap, sid.sid(self.sid_null).ldap()) |
| 41 | + self.assertEqual(sid_sample_ldap, sid.sid(self.sid_sample).ldap()) |
| 42 | + |
| 43 | + def test_binary(self): |
| 44 | + """Test binary form of sid""" |
| 45 | + self.assertEqual(self.sid_null_bin, sid.sid(self.sid_null).binary()) |
| 46 | + self.assertEqual(self.sid_sample_bin, |
| 47 | + sid.sid(self.sid_sample).binary()) |
| 48 | + |
| 49 | + def test_base64(self): |
| 50 | + """Test base64 form of sid""" |
| 51 | + self.assertEqual(self.sid_null_b64, sid.sid(self.sid_null).base64()) |
| 52 | + self.assertEqual(self.sid_sample_b64, |
| 53 | + sid.sid(self.sid_sample).base64()) |
| 54 | + |
| 55 | + |
| 56 | +if __name__ == '__main__': |
| 57 | + unittest.main() |
0 commit comments