From cde0407fe679a3f02fb1853a782a6fc0a39ede70 Mon Sep 17 00:00:00 2001 From: Andreas Eknes Lie Date: Wed, 6 Sep 2023 15:12:53 +0200 Subject: [PATCH] Add testing of set/unset & names --- src/clib/old_tests/job_queue/test_job_queue_driver.cpp | 5 +++++ src/ert/job_queue/driver.py | 6 +++--- tests/unit_tests/job_queue/test_driver.py | 10 +++++++++- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/clib/old_tests/job_queue/test_job_queue_driver.cpp b/src/clib/old_tests/job_queue/test_job_queue_driver.cpp index 78e052190a2..3365c6522fb 100644 --- a/src/clib/old_tests/job_queue/test_job_queue_driver.cpp +++ b/src/clib/old_tests/job_queue/test_job_queue_driver.cpp @@ -47,6 +47,8 @@ void get_driver_option_lists() { //Torque driver option list { queue_driver_type *driver_torque = queue_driver_alloc(TORQUE_DRIVER); + test_assert_string_equal(queue_driver_get_name(driver_torque), + "TORQUE"); stringlist_type *option_list = stringlist_alloc_new(); queue_driver_init_option_list(driver_torque, option_list); @@ -60,6 +62,7 @@ void get_driver_option_lists() { //Local driver option list (only general queue_driver options) { queue_driver_type *driver_local = queue_driver_alloc(LOCAL_DRIVER); + test_assert_string_equal(queue_driver_get_name(driver_local), "local"); stringlist_type *option_list = stringlist_alloc_new(); queue_driver_init_option_list(driver_local, option_list); @@ -70,6 +73,7 @@ void get_driver_option_lists() { //Lsf driver option list { queue_driver_type *driver_lsf = queue_driver_alloc(LSF_DRIVER); + test_assert_string_equal(queue_driver_get_name(driver_lsf), "LSF"); stringlist_type *option_list = stringlist_alloc_new(); queue_driver_init_option_list(driver_lsf, option_list); @@ -84,6 +88,7 @@ void get_driver_option_lists() { //SLurm driver option list { queue_driver_type *driver_slurm = queue_driver_alloc(SLURM_DRIVER); + test_assert_string_equal(queue_driver_get_name(driver_slurm), "SLURM"); stringlist_type *option_list = stringlist_alloc_new(); queue_driver_init_option_list(driver_slurm, option_list); diff --git a/src/ert/job_queue/driver.py b/src/ert/job_queue/driver.py index acb67cedcca..948c0df9b01 100644 --- a/src/ert/job_queue/driver.py +++ b/src/ert/job_queue/driver.py @@ -30,16 +30,16 @@ def __init__( def set_option(self, option: str, value: str) -> bool: if option == "MAX_RUNNING": - self._max_running = int(value) + self.set_max_running(int(value)) return True else: return self._set_option(option, str(value)) def unset_option(self, option: str) -> None: if option == "MAX_RUNNING": - self._max_running = 0 + self.set_max_running(0) else: - self._set_option(option, None) + self._set_option(option, "") def get_option(self, option_key: str) -> str: if option_key == "MAX_RUNNING": diff --git a/tests/unit_tests/job_queue/test_driver.py b/tests/unit_tests/job_queue/test_driver.py index 364c53f2d4b..fb4ab2b19fb 100644 --- a/tests/unit_tests/job_queue/test_driver.py +++ b/tests/unit_tests/job_queue/test_driver.py @@ -16,7 +16,12 @@ def test_set_and_unset_option(): ] }, ) - assert Driver.create_driver(queue_config).get_option("MAX_RUNNING") == "0" + driver = Driver.create_driver(queue_config) + assert driver.get_option("MAX_RUNNING") == "0" + assert driver.set_option("MAX_RUNNING", "42") + assert driver.get_option("MAX_RUNNING") == "42" + driver.unset_option("MAX_RUNNING") + assert driver.get_option("MAX_RUNNING") == "0" def test_get_slurm_queue_config(): @@ -35,6 +40,9 @@ def test_get_slurm_queue_config(): assert queue_config.queue_system == QueueSystem.SLURM driver = Driver.create_driver(queue_config) + assert driver.get_option("SBATCH") == "/path/to/sbatch" assert driver.get_option("SCONTROL") == "scontrol" + driver.unset_option("SCONTROL") + assert driver.get_option("SCONTROL") == "" assert driver.name == "SLURM"