def testInit(self): names = ["foo", "bar"] el = pyhbac.HbacRuleElement(names=names) self.assertCountEqual(el.names, names) groups = ["abc", "def"] el = pyhbac.HbacRuleElement(groups=groups) self.assertCountEqual(el.groups, groups)
def _get_rule(): users = ["foo", "bar"] user_groups = ["abc", "def"] el = pyhbac.HbacRuleElement(names=users, groups=user_groups) rule = pyhbac.HbacRule("testRuleElement") rule.users = el return rule
def testRuleElementInRule(self): users = ["foo", "bar"] user_groups = ["abc", "def"] # rule should contain empty elements after instantiation rule = pyhbac.HbacRule("testRuleElement") self.assertIsInstance(rule.users, pyhbac.HbacRuleElement) self.assertIsInstance(rule.services, pyhbac.HbacRuleElement) self.assertIsInstance(rule.targethosts, pyhbac.HbacRuleElement) self.assertIsInstance(rule.srchosts, pyhbac.HbacRuleElement) self.assertIsInstance(rule.users.names, list) self.assertIsInstance(rule.users.groups, list) self.assertCountEqual(rule.users.names, []) self.assertCountEqual(rule.users.groups, []) # Assign by copying a HbacRuleElement user_el = pyhbac.HbacRuleElement(names=users, groups=user_groups) rule = pyhbac.HbacRule("testRuleElement") rule.users = user_el self.assertCountEqual(rule.users.names, users) self.assertCountEqual(rule.users.groups, user_groups) # Assign directly rule = pyhbac.HbacRule("testRuleElement") rule.users.names = users rule.users.groups = user_groups self.assertCountEqual(rule.users.names, users) self.assertCountEqual(rule.users.groups, user_groups)
def testRepr(self): el = pyhbac.HbacRuleElement() self.assertEquals(el.__repr__(), u'<category 0 names [] groups []>') el.category.add(pyhbac.HBAC_CATEGORY_ALL) el.names = ['foo'] el.groups = ['bar, baz'] self.assertEquals(el.__repr__(), u'<category 1 names [foo] groups [bar, baz]>')
def testGetSet(self): names = ["foo", "bar"] el = pyhbac.HbacRuleElement() self.assertCountEqual(el.names, []) el.names = names self.assertCountEqual(el.names, names) groups = ["abc", "def"] el = pyhbac.HbacRuleElement() self.assertCountEqual(el.groups, []) el.groups = groups self.assertCountEqual(el.groups, groups) # Test other iterables than list groups = ("abc", "def") el = pyhbac.HbacRuleElement() self.assertCountEqual(el.groups, []) el.groups = groups self.assertCountEqual(el.groups, groups)
def testCategory(self): el = pyhbac.HbacRuleElement() assert pyhbac.HBAC_CATEGORY_NULL in el.category assert pyhbac.HBAC_CATEGORY_ALL not in el.category el.category.add(pyhbac.HBAC_CATEGORY_ALL) assert pyhbac.HBAC_CATEGORY_ALL in el.category el.category = set([pyhbac.HBAC_CATEGORY_ALL]) assert pyhbac.HBAC_CATEGORY_ALL in el.category # negative tests self.assertRaises(TypeError, el.__setattr__, "category", [pyhbac.HBAC_CATEGORY_ALL]) self.assertRaises(TypeError, el.__setattr__, "category", None) self.assertRaises(TypeError, el.__setattr__, "category", 1)
def testInstantiateEmpty(self): el = pyhbac.HbacRuleElement() self.assertCountEqual(el.names, []) self.assertCountEqual(el.groups, []) self.assertCountEqual(el.category, set([pyhbac.HBAC_CATEGORY_NULL]))
def _get_rule(): users = ["foo", "bar"] user_groups = ["abc", "def"] return pyhbac.HbacRuleElement(names=users, groups=user_groups)