summaryrefslogtreecommitdiff
path: root/tests/acl_test.py
diff options
context:
space:
mode:
authorScott Gasch <[email protected]>2021-07-09 18:31:02 -0700
committerScott Gasch <[email protected]>2021-07-09 18:31:02 -0700
commit09e6d10face80d98a4578ff54192b5c8bec007d7 (patch)
tree1565e645e739ff2f607730029c91055d29c02aa5 /tests/acl_test.py
parent11eeb8574b7b4620ac6fd440cb251f8aa2458f5b (diff)
ACL uses enums, some more tests, other stuff.
Diffstat (limited to 'tests/acl_test.py')
-rwxr-xr-xtests/acl_test.py56
1 files changed, 50 insertions, 6 deletions
diff --git a/tests/acl_test.py b/tests/acl_test.py
index 810aedf..4c1cf21 100755
--- a/tests/acl_test.py
+++ b/tests/acl_test.py
@@ -13,7 +13,7 @@ class TestSimpleACL(unittest.TestCase):
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,
+ order_to_check_allow_deny = acl.Order.ALLOW_DENY,
default_answer = False
)
self.assertTrue(even(2))
@@ -23,12 +23,12 @@ class TestSimpleACL(unittest.TestCase):
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,
+ order_to_check_allow_deny = 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'))
+ self.assertTrue(a_or_b('baboon'))
+ self.assertFalse(a_or_b('cheetah'))
def test_re_based_acl(self):
weird = acl.StringREBasedACL(
@@ -36,12 +36,56 @@ class TestSimpleACL(unittest.TestCase):
re.compile('^a.*a$'),
re.compile('^b.*b$')
],
- order_to_check_allow_deny = acl.ACL_ORDER_ALLOW_DENY,
+ order_to_check_allow_deny = acl.Order.DENY_ALLOW,
default_answer = True
)
self.assertTrue(weird('aardvark'))
self.assertFalse(weird('anaconda'))
- self.assertFalse(weird('beelzebub'))
+ self.assertFalse(weird('blackneb'))
+ self.assertTrue(weird('crow'))
+
+ def test_compound_acls_disjunction(self):
+ a_b_c = acl.StringWildcardBasedACL(
+ allowed_patterns = ['a*', 'b*', 'c*'],
+ order_to_check_allow_deny = acl.Order.ALLOW_DENY,
+ default_answer = False
+ )
+ c_d_e = acl.StringWildcardBasedACL(
+ allowed_patterns = ['c*', 'd*', 'e*'],
+ order_to_check_allow_deny = acl.Order.ALLOW_DENY,
+ default_answer = False
+ )
+ disjunction = acl.AnyCompoundACL(
+ subacls = [a_b_c, c_d_e],
+ order_to_check_allow_deny = acl.Order.ALLOW_DENY,
+ default_answer = False,
+ )
+ self.assertTrue(disjunction('aardvark'))
+ self.assertTrue(disjunction('caribou'))
+ self.assertTrue(disjunction('eagle'))
+ self.assertFalse(disjunction('newt'))
+
+ def test_compound_acls_conjunction(self):
+ a_b_c = acl.StringWildcardBasedACL(
+ allowed_patterns = ['a*', 'b*', 'c*'],
+ order_to_check_allow_deny = acl.Order.ALLOW_DENY,
+ default_answer = False
+ )
+ c_d_e = acl.StringWildcardBasedACL(
+ allowed_patterns = ['c*', 'd*', 'e*'],
+ order_to_check_allow_deny = acl.Order.ALLOW_DENY,
+ default_answer = False
+ )
+ conjunction = acl.AllCompoundACL(
+ subacls = [a_b_c, c_d_e],
+ order_to_check_allow_deny = acl.Order.ALLOW_DENY,
+ default_answer = False,
+ )
+ self.assertFalse(conjunction('aardvark'))
+ self.assertTrue(conjunction('caribou'))
+ self.assertTrue(conjunction('condor'))
+ self.assertFalse(conjunction('eagle'))
+ self.assertFalse(conjunction('newt'))
if __name__ == '__main__':