diff options
| author | Scott Gasch <[email protected]> | 2021-07-08 20:08:22 -0700 |
|---|---|---|
| committer | Scott Gasch <[email protected]> | 2021-07-08 20:08:22 -0700 |
| commit | e516059c716537259c601c022cc3bad44025385e (patch) | |
| tree | 62d3cf9404cbae373cdd4786634281433bb4a7c5 /tests/acl_test.py | |
| parent | c086317533f8fdc53cd9b77863e7061b4b765f92 (diff) | |
Rename simple_acl -> acl
Diffstat (limited to 'tests/acl_test.py')
| -rwxr-xr-x | tests/acl_test.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/acl_test.py b/tests/acl_test.py new file mode 100755 index 0000000..810aedf --- /dev/null +++ b/tests/acl_test.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python3 + +import re +import unittest + +import acl +import bootstrap + + +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 = bootstrap.initialize(unittest.main) + unittest.main() |
