From 9986b1b04fb8aedffbf2bd11a32436219cfaf92f Mon Sep 17 00:00:00 2001 From: leufen1 <l.leufen@fz-juelich.de> Date: Thu, 4 Feb 2021 15:33:07 +0100 Subject: [PATCH] renamed the IntelliO3 reference model and its tests, added newest version of netCDF4 to requirements --- .gitignore | 1 + .../reference_model_intellio3_v1.py | 12 ++++++------ requirements.txt | 1 + .../test_abstract_reference_model.py} | 2 +- .../test_reference_model_intellio3_v1.py} | 17 ++++++++--------- .../tmp_downloads/IntelliO3-ts.tar.gz | Bin 6 files changed, 17 insertions(+), 16 deletions(-) rename test/{test_reference_data_handler/test_abstract_reference_data_handler.py => test_reference_models/test_abstract_reference_model.py} (99%) rename test/{test_reference_data_handler/test_intellio3_v1_reference.py => test_reference_models/test_reference_model_intellio3_v1.py} (71%) rename test/{test_reference_data_handler => test_reference_models}/tmp_downloads/IntelliO3-ts.tar.gz (100%) diff --git a/.gitignore b/.gitignore index f5e425f7..04bc0d1b 100644 --- a/.gitignore +++ b/.gitignore @@ -62,6 +62,7 @@ activate_env.sh /tmp/ /logging/ /HPC_logging/ +/tmp_downloads/ # test related data # ##################### diff --git a/mlair/reference_models/reference_model_intellio3_v1.py b/mlair/reference_models/reference_model_intellio3_v1.py index aa2c0dff..5f0bae48 100644 --- a/mlair/reference_models/reference_model_intellio3_v1.py +++ b/mlair/reference_models/reference_model_intellio3_v1.py @@ -14,7 +14,7 @@ from mlair.configuration.path_config import check_path_and_create from mlair.reference_models.abstract_reference_model import AbstractReferenceB2share -class IntelliO3Reference(AbstractReferenceB2share): +class IntelliO3_ts_v1(AbstractReferenceB2share): """ Reference handler that extracts IntelliO3-ts v1.0 forecasts (Kleinert, 2021). @@ -67,14 +67,14 @@ class IntelliO3Reference(AbstractReferenceB2share): :param sel_coords: """ if sel_coords is None: - sel_coords = {'type': 'CNN'} + sel_coords = {'type': ['CNN']} in_path, files = self.file_list() check_path_and_create(self.ref_store_path) for infile in files: - data = xr.open_dataarray(f"{in_path}{infile}") + data = xr.open_dataarray(os.path.join(in_path, infile)) data = data.sel(**sel_coords) - data.coords['type'] = (self.ref_name) - data.to_netcdf(f"{self.ref_store_path}{infile}") + data.coords['type'] = ['nn'] + data.to_netcdf(os.path.join(self.ref_store_path, infile)) def make_reference_available_locally(self, remove_tmp_dir: bool = True): """ @@ -92,6 +92,6 @@ class IntelliO3Reference(AbstractReferenceB2share): if __name__ == '__main__': - io3 = IntelliO3Reference('IntelliO3-ts') + io3 = IntelliO3_ts_v1('IntelliO3-ts') io3.make_reference_available_locally() diff --git a/requirements.txt b/requirements.txt index 77f300df..47995404 100644 --- a/requirements.txt +++ b/requirements.txt @@ -24,6 +24,7 @@ Markdown==3.2.1 matplotlib==3.2.0 mock==4.0.1 more-itertools==8.2.0 +netcdf4==1.5.5.1 numpy==1.18.1 packaging==20.3 pandas==1.0.1 diff --git a/test/test_reference_data_handler/test_abstract_reference_data_handler.py b/test/test_reference_models/test_abstract_reference_model.py similarity index 99% rename from test/test_reference_data_handler/test_abstract_reference_data_handler.py rename to test/test_reference_models/test_abstract_reference_model.py index d37bd744..4c455219 100644 --- a/test/test_reference_data_handler/test_abstract_reference_data_handler.py +++ b/test/test_reference_models/test_abstract_reference_model.py @@ -51,4 +51,4 @@ class TestAbstractReferenceb2share: pass def test_download_from_b2share(self): - pass \ No newline at end of file + pass diff --git a/test/test_reference_data_handler/test_intellio3_v1_reference.py b/test/test_reference_models/test_reference_model_intellio3_v1.py similarity index 71% rename from test/test_reference_data_handler/test_intellio3_v1_reference.py rename to test/test_reference_models/test_reference_model_intellio3_v1.py index 742b8951..bfd4cae3 100644 --- a/test/test_reference_data_handler/test_intellio3_v1_reference.py +++ b/test/test_reference_models/test_reference_model_intellio3_v1.py @@ -1,6 +1,6 @@ import pytest -from mlair.reference_models.reference_model_intellio3_v1 import IntelliO3Reference +from mlair.reference_models.reference_model_intellio3_v1 import IntelliO3_ts_v1 from mlair.reference_models.abstract_reference_model import AbstractReferenceB2share @@ -8,11 +8,11 @@ class TestIntelliO3Reference: @pytest.fixture def io3(self): - return IntelliO3Reference("IntelliO3-test") + return IntelliO3_ts_v1("IntelliO3-test") def test_init_none_path(self): - io3 = IntelliO3Reference("IntelliO3-test") - assert isinstance(io3, IntelliO3Reference) + io3 = IntelliO3_ts_v1("IntelliO3-test") + assert isinstance(io3, IntelliO3_ts_v1) assert io3.ref_name == "IntelliO3-test" assert io3.ref_store_path == "IntelliO3-test/" assert io3.tmp_extract_path == "tmp_downloads/" @@ -23,12 +23,12 @@ class TestIntelliO3Reference: assert io3.b2share_hosturl == "https://b2share.eudat.eu" def test_init_extra_path(self): - io3 = IntelliO3Reference("IntelliO3-test", "DummyExtraPath/") - assert isinstance(io3, IntelliO3Reference) + io3 = IntelliO3_ts_v1("IntelliO3-test", "DummyExtraPath/") + assert isinstance(io3, IntelliO3_ts_v1) assert io3.ref_store_path == "DummyExtraPath/" def test_inheritance(self): - assert issubclass(IntelliO3Reference, AbstractReferenceB2share) + assert issubclass(IntelliO3_ts_v1, AbstractReferenceB2share) def test_untar_forecasts(self, io3): pass @@ -40,5 +40,4 @@ class TestIntelliO3Reference: pass def test_make_reference_available_locally(self): - io3 = IntelliO3Reference("IntelliO3-test", "DummyExtraPath/") - + pass diff --git a/test/test_reference_data_handler/tmp_downloads/IntelliO3-ts.tar.gz b/test/test_reference_models/tmp_downloads/IntelliO3-ts.tar.gz similarity index 100% rename from test/test_reference_data_handler/tmp_downloads/IntelliO3-ts.tar.gz rename to test/test_reference_models/tmp_downloads/IntelliO3-ts.tar.gz -- GitLab