diff options
author | Kevin McCarthy <kmccarth@redhat.com> | 2007-10-12 15:11:55 -0700 |
---|---|---|
committer | Kevin McCarthy <kmccarth@redhat.com> | 2007-10-12 15:11:55 -0700 |
commit | 63f7cdf7f7e1c39b791dad6951fa39d9a6d58c9d (patch) | |
tree | 72f1bd539e6fcbbce99a31f4b6695c149e828c2a /ipa-python/test/test_aci.py | |
parent | af0a1d989b1eb483ae3e76fa5a3008fda3fafb5e (diff) | |
download | freeipa-63f7cdf7f7e1c39b791dad6951fa39d9a6d58c9d.tar.gz freeipa-63f7cdf7f7e1c39b791dad6951fa39d9a6d58c9d.tar.xz freeipa-63f7cdf7f7e1c39b791dad6951fa39d9a6d58c9d.zip |
Adds delegation listing and creation to the GUI.
Diffstat (limited to 'ipa-python/test/test_aci.py')
-rw-r--r-- | ipa-python/test/test_aci.py | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/ipa-python/test/test_aci.py b/ipa-python/test/test_aci.py index ffe2d0719..5556deb32 100644 --- a/ipa-python/test/test_aci.py +++ b/ipa-python/test/test_aci.py @@ -22,15 +22,16 @@ sys.path.insert(0, ".") import unittest import aci +import urllib class TestACI(unittest.TestCase): - acitemplate = ('(targetattr = "%s")' + + acitemplate = ('(targetattr="%s")' + '(targetfilter="(memberOf=%s)")' + '(version 3.0;' + 'acl "%s";' + 'allow (write) ' + - 'groupdn="%s";)') + 'groupdn="ldap:///%s";)') def setUp(self): self.aci = aci.ACI() @@ -52,6 +53,20 @@ class TestACI(unittest.TestCase): self.assertEqual(aci, exportaci) + def testURLEncodedExport(self): + self.aci.source_group = 'cn=foo " bar, dc=freeipa, dc=org' + self.aci.dest_group = 'cn=bar, dc=freeipa, dc=org' + self.aci.name = 'this is a "name' + self.aci.attrs = ['field1', 'field2', 'field3'] + + exportaci = self.aci.export_to_string() + aci = TestACI.acitemplate % ('field1 || field2 || field3', + self.aci.dest_group, + 'this is a "name', + urllib.quote(self.aci.source_group, "/=, ")) + + self.assertEqual(aci, exportaci) + def testSimpleParse(self): attr_str = 'field3 || field4 || field5' dest_dn = 'cn=dest\\"group, dc=freeipa, dc=org' @@ -66,6 +81,21 @@ class TestACI(unittest.TestCase): self.assertEqual(name, self.aci.name) self.assertEqual(src_dn, self.aci.source_group) + def testUrlEncodedParse(self): + attr_str = 'field3 || field4 || field5' + dest_dn = 'cn=dest\\"group, dc=freeipa, dc=org' + name = 'my name' + src_dn = 'cn=src " group, dc=freeipa, dc=org' + + acistr = TestACI.acitemplate % (attr_str, dest_dn, name, + urllib.quote(src_dn, "/=, ")) + self.aci.parse_acistr(acistr) + + self.assertEqual(['field3', 'field4', 'field5'], self.aci.attrs) + self.assertEqual(dest_dn, self.aci.dest_group) + self.assertEqual(name, self.aci.name) + self.assertEqual(src_dn, self.aci.source_group) + def testInvalidParse(self): try: self.aci.parse_acistr('foo bar') |