diff options
author | Jason Gerard DeRose <jderose@redhat.com> | 2008-08-22 21:27:25 +0000 |
---|---|---|
committer | Jason Gerard DeRose <jderose@redhat.com> | 2008-08-22 21:27:25 +0000 |
commit | f60fa06ce23d25042d258bdb7ae1b782993b1e42 (patch) | |
tree | d8035cda77d98441ded2068fe1f9f51323f74e36 /ipalib | |
parent | 5bf6a9eb097fbaf1c048a4487e6ca6b9605b9f05 (diff) | |
download | freeipa-f60fa06ce23d25042d258bdb7ae1b782993b1e42.tar.gz freeipa-f60fa06ce23d25042d258bdb7ae1b782993b1e42.tar.xz freeipa-f60fa06ce23d25042d258bdb7ae1b782993b1e42.zip |
186: Renamed public.attr to Attribute; reworked public.Attribute unit tests using ClassChecker
Diffstat (limited to 'ipalib')
-rw-r--r-- | ipalib/public.py | 12 | ||||
-rw-r--r-- | ipalib/tests/test_public.py | 53 |
2 files changed, 38 insertions, 27 deletions
diff --git a/ipalib/public.py b/ipalib/public.py index 4b988b511..c0d67cd3d 100644 --- a/ipalib/public.py +++ b/ipalib/public.py @@ -281,7 +281,7 @@ class obj(plugable.Plugin): yield proxy.__clone__('attr_name') -class attr(plugable.Plugin): +class Attribute(plugable.Plugin): __public__ = frozenset(( 'obj', 'obj_name', @@ -311,12 +311,12 @@ class attr(plugable.Plugin): obj = property(__get_obj) def finalize(self, api): - super(attr, self).finalize(api) + super(Attribute, self).finalize(api) self.__obj = api.obj[self.obj_name] -class Method(attr, Command): - __public__ = attr.__public__.union(Command.__public__) +class Method(Attribute, Command): + __public__ = Attribute.__public__.union(Command.__public__) def get_options(self): for proxy in Command.get_options(self): @@ -326,8 +326,8 @@ class Method(attr, Command): yield proxy -class Property(attr, option): - __public__ = attr.__public__.union(option.__public__) +class Property(Attribute, option): + __public__ = Attribute.__public__.union(option.__public__) def get_doc(self, _): return _('Property doc') diff --git a/ipalib/tests/test_public.py b/ipalib/tests/test_public.py index dc004254f..a6ae7d8e8 100644 --- a/ipalib/tests/test_public.py +++ b/ipalib/tests/test_public.py @@ -327,27 +327,38 @@ def test_obj(): -def test_attr(): - cls = public.attr - assert issubclass(cls, plugable.Plugin) - - class api(object): - obj = dict(user='the user obj') - - class user_add(cls): - pass +class test_Attribute(ClassChecker): + """ + Tests the `public.Attribute` class. + """ + _cls = public.Attribute - i = user_add() - assert read_only(i, 'obj_name') == 'user' - assert read_only(i, 'attr_name') == 'add' - assert read_only(i, 'obj') is None - i.finalize(api) - assert read_only(i, 'api') is api - assert read_only(i, 'obj') == 'the user obj' + def test_class(self): + assert self.cls.__bases__ == (plugable.Plugin,) + assert type(self.cls.obj) is property + assert type(self.cls.obj_name) is property + assert type(self.cls.attr_name) is property - class example_prop0(cls): - pass - o = example_prop0() + def test_init(self): + class user_add(self.cls): + pass + o = user_add() + assert read_only(o, 'obj') is None + assert read_only(o, 'obj_name') == 'user' + assert read_only(o, 'attr_name') == 'add' + + def test_finalize(self): + user_obj = 'The user public.Object instance' + class api(object): + obj = dict(user=user_obj) + class user_add(self.cls): + pass + o = user_add() + assert read_only(o, 'api') is None + assert read_only(o, 'obj') is None + o.finalize(api) + assert read_only(o, 'api') is api + assert read_only(o, 'obj') is user_obj class test_Method(ClassChecker): @@ -357,7 +368,7 @@ class test_Method(ClassChecker): _cls = public.Method def test_class(self): - assert self.cls.__bases__ == (public.attr, public.Command) + assert self.cls.__bases__ == (public.Attribute, public.Command) assert self.cls.implements(public.Command) def get_subcls(self): @@ -406,7 +417,7 @@ class test_prop(ClassChecker): _cls = public.Property def test_class(self): - assert self.cls.__bases__ == (public.attr, public.option) + assert self.cls.__bases__ == (public.Attribute, public.option) assert self.cls.implements(public.option) |