From 8cbd8343be843e2972b0f59250c148973f26a091 Mon Sep 17 00:00:00 2001 From: Jason Gerard DeRose Date: Thu, 7 Aug 2008 06:02:46 +0000 Subject: 75: Fixed opt.__rules_iter; added corresponding unit tests --- ipalib/tests/test_public.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'ipalib/tests/test_public.py') diff --git a/ipalib/tests/test_public.py b/ipalib/tests/test_public.py index ef2ded17..87d6d104 100644 --- a/ipalib/tests/test_public.py +++ b/ipalib/tests/test_public.py @@ -68,10 +68,36 @@ class test_opt(): return public.opt def sub(self): + rule = public.rule class int_opt(self.cls()): type = int + @rule + def rule_a(self, value): + if value == 'a': + return 'cannot be a' + @rule + def rule_b(self, value): + if value == 'b': + return 'cannot be b' + @rule + def rule_c(self, value): + if value == 'c': + return 'cannot be c' return int_opt + def test_rules(self): + """ + Test the rules property. + """ + i = self.sub()() + def i_attr(l): + return getattr(i, 'rule_%s' % l) + letters = ('a', 'b', 'c') + rules = tuple(i_attr(l) for l in letters) + assert i.rules == rules + + + def test_class(self): cls = self.cls() assert issubclass(cls, plugable.ReadOnly) -- cgit