From 3bc4daf1edc121cd633429187392227f2fa61885 Mon Sep 17 00:00:00 2001 From: Scott Gasch Date: Thu, 8 Jul 2021 19:44:27 -0700 Subject: Lots of changes. --- tests/simple_acl_test.py | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 tests/simple_acl_test.py (limited to 'tests/simple_acl_test.py') diff --git a/tests/simple_acl_test.py b/tests/simple_acl_test.py new file mode 100755 index 0000000..7c17415 --- /dev/null +++ b/tests/simple_acl_test.py @@ -0,0 +1,47 @@ +#!/usr/bin/env python3 + +import re +import unittest + +import simple_acl as acl + + +class TestSimpleACL(unittest.TestCase): + + def test_set_based_acl(self): + even = acl.SetBasedACL( + allow_set = set([2, 4, 6, 8, 10]), + deny_set = set([1, 3, 5, 7, 9]), + order_to_check_allow_deny = acl.ACL_ORDER_ALLOW_DENY, + default_answer = False + ) + self.assertTrue(even(2)) + self.assertFalse(even(3)) + self.assertFalse(even(-4)) + + def test_wildcard_based_acl(self): + a_or_b = acl.StringWildcardBasedACL( + allowed_patterns = ['a*', 'b*'], + order_to_check_allow_deny = acl.ACL_ORDER_ALLOW_DENY, + default_answer = False + ) + self.assertTrue(a_or_b('aardvark')) + self.assertTrue(a_or_b('bubblegum')) + self.assertFalse(a_or_b('charlie')) + + def test_re_based_acl(self): + weird = acl.StringREBasedACL( + denied_regexs = [ + re.compile('^a.*a$'), + re.compile('^b.*b$') + ], + order_to_check_allow_deny = acl.ACL_ORDER_ALLOW_DENY, + default_answer = True + ) + self.assertTrue(weird('aardvark')) + self.assertFalse(weird('anaconda')) + self.assertFalse(weird('beelzebub')) + + +if __name__ == '__main__': + unittest.main() -- cgit v1.3