summaryrefslogtreecommitdiff
path: root/tests/acl_test.py
diff options
context:
space:
mode:
authorScott Gasch <[email protected]>2021-07-08 20:08:22 -0700
committerScott Gasch <[email protected]>2021-07-08 20:08:22 -0700
commite516059c716537259c601c022cc3bad44025385e (patch)
tree62d3cf9404cbae373cdd4786634281433bb4a7c5 /tests/acl_test.py
parentc086317533f8fdc53cd9b77863e7061b4b765f92 (diff)
Rename simple_acl -> acl
Diffstat (limited to 'tests/acl_test.py')
-rwxr-xr-xtests/acl_test.py49
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()