equal
deleted
inserted
replaced
264 |
264 |
265 def test_nonregr_subclasses_and_mixins_interfaces(self): |
265 def test_nonregr_subclasses_and_mixins_interfaces(self): |
266 class MyUser(CWUser): |
266 class MyUser(CWUser): |
267 __implements__ = (IMileStone,) |
267 __implements__ = (IMileStone,) |
268 self.vreg._loadedmods[__name__] = {} |
268 self.vreg._loadedmods[__name__] = {} |
269 self.vreg.register_vobject_class(MyUser) |
269 self.vreg.register_appobject_class(MyUser) |
270 self.failUnless(implements(CWUser, IWorkflowable)) |
270 self.failUnless(implements(CWUser, IWorkflowable)) |
271 self.failUnless(implements(MyUser, IMileStone)) |
271 self.failUnless(implements(MyUser, IMileStone)) |
272 self.failUnless(implements(MyUser, IWorkflowable)) |
272 self.failUnless(implements(MyUser, IWorkflowable)) |
273 |
273 |
274 |
274 |
288 # sure the most specific is always selected |
288 # sure the most specific is always selected |
289 self.vreg._loadedmods[__name__] = {} |
289 self.vreg._loadedmods[__name__] = {} |
290 for etype in ('Company', 'Division', 'SubDivision'): |
290 for etype in ('Company', 'Division', 'SubDivision'): |
291 class Foo(AnyEntity): |
291 class Foo(AnyEntity): |
292 id = etype |
292 id = etype |
293 self.vreg.register_vobject_class(Foo) |
293 self.vreg.register_appobject_class(Foo) |
294 eclass = self.select_eclass('SubDivision') |
294 eclass = self.select_eclass('SubDivision') |
295 if etype == 'SubDivision': |
295 if etype == 'SubDivision': |
296 self.failUnless(eclass is Foo) |
296 self.failUnless(eclass is Foo) |
297 else: |
297 else: |
298 self.failUnless(eclass.__autogenerated__) |
298 self.failUnless(eclass.__autogenerated__) |