354 |
355 |
355 # other utilities ######################################################### |
356 # other utilities ######################################################### |
356 |
357 |
357 def entity(self, rql, args=None, eidkey=None, req=None): |
358 def entity(self, rql, args=None, eidkey=None, req=None): |
358 return self.execute(rql, args, eidkey, req=req).get_entity(0, 0) |
359 return self.execute(rql, args, eidkey, req=req).get_entity(0, 0) |
|
360 |
|
361 @contextmanager |
|
362 def temporary_appobjects(self, *appobjects): |
|
363 self.vreg._loadedmods.setdefault(self.__module__, {}) |
|
364 for obj in appobjects: |
|
365 self.vreg.register(obj) |
|
366 yield |
|
367 for obj in appobjects: |
|
368 self.vreg.unregister(obj) |
359 |
369 |
360 # vregistry inspection utilities ########################################### |
370 # vregistry inspection utilities ########################################### |
361 |
371 |
362 def pviews(self, req, rset): |
372 def pviews(self, req, rset): |
363 return sorted((a.__regid__, a.__class__) |
373 return sorted((a.__regid__, a.__class__) |