[lib.domain] gen_router_routes yields router module also

This commit is contained in:
Maxime Alves LIRMM 2021-11-22 20:06:12 +01:00
parent 908eab5fdc
commit 049860fce5
4 changed files with 7 additions and 4 deletions

View File

@ -194,6 +194,7 @@ def gen_router_routes(m_router: ModuleType, path: List[str]) -> \
continue
yield ('/'.join(filter(lambda x: len(x) > 0, path)),
verb,
m_router,
*gen_routes(m_router, verb, path, params[verb])
)

View File

@ -122,7 +122,7 @@ def gen_domain_routes(m_domain: ModuleType):
Returns:
Generator(Route)
"""
for path, verb, fct, params in gen_router_routes(m_domain, []):
for path, verb, m_router, fct, params in gen_router_routes(m_domain, []):
yield (
Route(f'/{path}',
route_acl_decorator(
@ -176,7 +176,7 @@ def api_routes(m_dom: ModuleType) -> Tuple[Dict, Dict]:
return l_params
d_res = {}
for path, verb, _, params in gen_router_routes(m_dom, []):
for path, verb, _, _, params in gen_router_routes(m_dom, []):
if path not in d_res:
d_res[path] = {}
d_res[path][verb] = str_acl(params)

View File

@ -17,7 +17,7 @@ def test_get_config_route(dummy_project, application_domain, routers):
def test_get_route(dummy_project, application_domain, routers):
c = TestClient(application_domain)
path = verb = params = None
for path, verb, _, params in gen_router_routes(routers, []):
for path, verb, _, _, params in gen_router_routes(routers, []):
if len(params):
route_path = '/dummy_domain/{}'.format(path)
try:

View File

@ -7,11 +7,13 @@ from types import FunctionType
def test_gen_router_routes():
from .dummy_domain import routers
for path, verb, fct, params in gen_router_routes(routers, ['dummy_domain']):
for path, verb, m_router, fct, params in gen_router_routes(routers, ['dummy_domain']):
assert isinstance(path, str)
assert verb in VERBS
assert len(params) > 0
assert hasattr(fct, '__call__')
assert len(m_router.__file__) > 0
def test_gen_routes():
from .dummy_domain.routers.abc.alphabet import TEST_uuid