diff --git a/mlair/run_modules/pre_processing.py b/mlair/run_modules/pre_processing.py index 4888a60b81f44e98df677b4405a8dfc8aabc8356..bf54b0619f94d21524edc95a52c2ad49dab788c5 100644 --- a/mlair/run_modules/pre_processing.py +++ b/mlair/run_modules/pre_processing.py @@ -13,7 +13,7 @@ import numpy as np import pandas as pd from mlair.data_handler import DataCollection, AbstractDataHandler -from mlair.helpers import TimeTracking +from mlair.helpers import TimeTracking, to_list from mlair.configuration import path_config from mlair.helpers.join import EmptyQueryResult from mlair.run_modules.run_environment import RunEnvironment @@ -334,8 +334,8 @@ class PreProcessing(RunEnvironment): data if required. """ logging.info("Searching for competitors to be prepared for use.") - competitors = self.data_store.get_default("competitors", default=None) - if competitors is not None: + competitors = to_list(self.data_store.get_default("competitors", default=[])) + if len(competitors) > 0: for competitor_name in competitors: if competitor_name.lower() == "IntelliO3-ts-v1".lower(): logging.info("Prepare IntelliO3-ts-v1 model") diff --git a/test/test_run_modules/test_pre_processing.py b/test/test_run_modules/test_pre_processing.py index 11c46e99fb38489f5cbb26a8a87032049c96c7ca..b5a1914e6b2aacd238f244d304184d9754326db7 100644 --- a/test/test_run_modules/test_pre_processing.py +++ b/test/test_run_modules/test_pre_processing.py @@ -46,8 +46,12 @@ class TestPreProcessing: with PreProcessing(): assert caplog.record_tuples[0] == ('root', 20, 'PreProcessing started') assert caplog.record_tuples[1] == ('root', 20, 'check valid stations started (preprocessing)') - assert caplog.record_tuples[-1] == ('root', 20, PyTestRegex(r'run for \d+:\d+:\d+ \(hh:mm:ss\) to check 5 ' + assert caplog.record_tuples[-3] == ('root', 20, PyTestRegex(r'run for \d+:\d+:\d+ \(hh:mm:ss\) to check 5 ' r'station\(s\). Found 5/5 valid stations.')) + assert caplog.record_tuples[-2] == ('root', 20, "Searching for competitors to be prepared for use.") + assert caplog.record_tuples[-1] == ( + 'root', 20, "No preparation required because no competitor was provided " + "to the workflow.") RunEnvironment().__del__() def test_run(self, obj_with_exp_setup):