diff options
-rw-r--r-- | rand.py (renamed from cffi_random.py) | 6 | ||||
-rw-r--r-- | test/__init__.py | 0 | ||||
-rw-r--r-- | test/test_rand.py | 31 |
3 files changed, 32 insertions, 5 deletions
@@ -73,10 +73,6 @@ def rand_pseudo_bytes(n: int) -> bytes: if ret == -1: RandError("Not supported by the current RAND method.") elif ret in [0, 1]: - return (blob, ret) + return (bytes(blob), ret) else: RandError("Unknown error in RAND_pseudo_bytes") - - -if __name__=='__main__': - print(rand_bytes()) diff --git a/test/__init__.py b/test/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/__init__.py diff --git a/test/test_rand.py b/test/test_rand.py new file mode 100644 index 0000000..76b4d24 --- /dev/null +++ b/test/test_rand.py @@ -0,0 +1,31 @@ +import sys +import unittest + +import rand + + +class RandTestCase(unittest.TestCase): + def test_rand_status(self): + self.assertEqual(rand.rand_status(), 1) + + def test_rand_event(self): + if sys.platform == 'win32': + self.assertIsNotNone(rand.rand_event(1, 1, 1)) + else: + self.assertIsNone(rand.rand_event(1, 1, 1)) + + def test_rand_bytes(self): + exp_length = 15 + r = rand.rand_bytes(exp_length) + self.assertIsInstance(r, bytes) + self.assertEqual(len(r), exp_length) + + def test_rand_pseudo_bytes(self): + exp_length = 15 + r = rand.rand_pseudo_bytes(exp_length) + self.assertIsInstance(r[0], bytes) + self.assertEqual(len(r[0]), exp_length) + self.assertEqual(r[1], 1) + +if __name__ == '__main__': + unittest.main() |