devtools/testlib.py
branchstable
changeset 9212 0d346a0a1451
parent 8978 269548f2306e
child 9255 46f41c3e1443
child 9424 5027afeb5739
equal deleted inserted replaced
9211:d45d66d94baa 9212:0d346a0a1451
   459     @contextmanager
   459     @contextmanager
   460     def temporary_appobjects(self, *appobjects):
   460     def temporary_appobjects(self, *appobjects):
   461         self.vreg._loadedmods.setdefault(self.__module__, {})
   461         self.vreg._loadedmods.setdefault(self.__module__, {})
   462         for obj in appobjects:
   462         for obj in appobjects:
   463             self.vreg.register(obj)
   463             self.vreg.register(obj)
       
   464             registered = getattr(obj, '__registered__', None)
       
   465             if registered:
       
   466                 for registry in obj.__registries__:
       
   467                     registered(self.vreg[registry])
   464         try:
   468         try:
   465             yield
   469             yield
   466         finally:
   470         finally:
   467             for obj in appobjects:
   471             for obj in appobjects:
   468                 self.vreg.unregister(obj)
   472                 self.vreg.unregister(obj)