added food.meal

This commit is contained in:
John Lancaster
2024-08-10 14:11:45 -05:00
parent 2968c30dda
commit d5714808ed
4 changed files with 40 additions and 18 deletions

View File

@@ -31,21 +31,6 @@ def ad_system(base_config) -> AppDaemon:
return ad
# def test_dependency_graph():
# app_dir = Path('/home/john/conf/apps')
# files = app_dir.rglob('*.yaml')
# files = (f for f in files if f.stem != 'secrets' and f.stem != 'appdaemon')
# cfg = AllAppConfig.from_config_files(files)
# graph = cfg.depedency_graph()
# rev = cfg.reversed_dependency_graph()
# assert 'App1Foo' in graph['App2'], 'App2 is not dependent on App1Foo'
# assert 'App2' in rev['App1Foo'], 'App1 is not a predicate of App1Foo'
# print(graph)
async def delayed_stop(ad: AppDaemon, delay: float):
await asyncio.sleep(delay)
ad.stop()
@@ -58,6 +43,17 @@ def get_load_order(caplog: pytest.LogCaptureFixture) -> List[str]:
return record.args[0]
def validate_app_dependencies(ad: AppDaemon):
graph = ad.app_management.app_config.depedency_graph()
assert 'hello_world' in graph['food_app']
def validate_module_dependencies(ad: AppDaemon):
graph = ad.app_management.module_dependencies
assert 'food' in graph['restaurant']
assert 'food.meal' in graph['restaurant']
def validate_module_load_order(ad: AppDaemon, module_load_order: List[str]):
dependency_graph = ad.app_management.module_dependencies
for node, deps in dependency_graph.items():
@@ -85,6 +81,9 @@ def test_startup(ad_system: AppDaemon, caplog: pytest.LogCaptureFixture):
assert "Started 'hello_world'" in caplog.text
assert 'App initialization complete' in caplog.text
validate_app_dependencies(ad_system)
validate_module_dependencies(ad_system)
module_load_order = get_load_order(caplog)
validate_module_load_order(ad_system, module_load_order)