def get_router_view_definition(router_type, router=None): # Scoped import to avoid circular deps. from go.router.view_definition import RouterViewDefinitionBase try: router_pkg = get_router_pkg( router_type, ['definition', 'view_definition']) except UnknownRouterType: # To handle obsolete routers that are still viewable if router_type not in obsolete_router_types(): raise from go.vumitools.router.definition import ( RouterDefinitionBase) router_def = RouterDefinitionBase(router) router_def.router_type = router_type return RouterViewDefinitionBase(router_def) router_def = router_pkg.definition.RouterDefinition(router) if not hasattr(router_pkg, 'view_definition'): return RouterViewDefinitionBase(router_def) return router_pkg.view_definition.RouterViewDefinition(router_def)
def test_get_router_pkg(self): pkg = get_router_pkg('keyword', ['definition']) self.assertEqual(pkg.__name__, 'go.routers.keyword')