refactor so that coordinator instance is available in runner instance (#8)
-> all program states available Reviewed-on: local-it-infrastructure/e2e_tests#8 Co-authored-by: Daniel <d.brummerloh@gmail.com> Co-committed-by: Daniel <d.brummerloh@gmail.com>
This commit is contained in:
parent
f9c21c6e6b
commit
4c5a470a70
15 changed files with 74 additions and 53 deletions
|
|
@ -42,14 +42,9 @@ class Coordinator:
|
|||
def _load_runners(self, env_files: list[EnvFile]) -> list[Runner]:
|
||||
"""Creates an instance of the correct Runner class for each given env file"""
|
||||
runners: list[Runner] = []
|
||||
for env_file in env_files:
|
||||
for index, env_file in enumerate(env_files):
|
||||
RunnerClass = self.RUNNER_DICT[env_file.config["TYPE"]]
|
||||
dependency_classes: list[type[Runner]] = []
|
||||
for dependency in RunnerClass.dependencies:
|
||||
dependency_classes.append(self.RUNNER_DICT[dependency])
|
||||
runner_instance = RunnerClass(dotenv_path=env_file.env_path, DIR=self.DIR)
|
||||
runner_instance._dependency_runners = dependency_classes
|
||||
runners.append(runner_instance)
|
||||
runners.append(RunnerClass(coordinator=self, runner_index=index))
|
||||
return runners
|
||||
|
||||
def combine_html(self) -> None:
|
||||
|
|
@ -104,5 +99,5 @@ class Coordinator:
|
|||
assert len(runner_class_names) == 1
|
||||
runner_class_name = runner_class_names[0]
|
||||
RunnerClass: type[Runner] = getattr(module, runner_class_name)
|
||||
RUNNER_DICT[RunnerClass.name] = RunnerClass
|
||||
RUNNER_DICT[RunnerClass.env_type] = RunnerClass
|
||||
return RUNNER_DICT
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue