Skip to content
Snippets Groups Projects
Commit 54b535c1 authored by leufen1's avatar leufen1
Browse files

updated some tests

parent 11cd07f3
No related branches found
No related tags found
3 merge requests!253include current develop,!252Resolve "release v1.3.0",!237Resolve "individual transformation"
Pipeline #59476 passed
...@@ -36,9 +36,6 @@ class TestAllDefaults: ...@@ -36,9 +36,6 @@ class TestAllDefaults:
assert DEFAULT_END == "2017-12-31" assert DEFAULT_END == "2017-12-31"
assert DEFAULT_WINDOW_HISTORY_SIZE == 13 assert DEFAULT_WINDOW_HISTORY_SIZE == 13
assert DEFAULT_OVERWRITE_LOCAL_DATA is False assert DEFAULT_OVERWRITE_LOCAL_DATA is False
assert isinstance(DEFAULT_TRANSFORMATION, TransformationClass)
assert DEFAULT_TRANSFORMATION.inputs.transform_method == "standardise"
assert DEFAULT_TRANSFORMATION.targets.transform_method == "standardise"
assert DEFAULT_TARGET_VAR == "o3" assert DEFAULT_TARGET_VAR == "o3"
assert DEFAULT_TARGET_DIM == "variables" assert DEFAULT_TARGET_DIM == "variables"
assert DEFAULT_WINDOW_LEAD_TIME == 3 assert DEFAULT_WINDOW_LEAD_TIME == 3
......
...@@ -3,7 +3,6 @@ import pandas as pd ...@@ -3,7 +3,6 @@ import pandas as pd
import pytest import pytest
import xarray as xr import xarray as xr
from mlair.helpers.statistics import DataClass, TransformationClass
from mlair.helpers.statistics import standardise, standardise_inverse, standardise_apply, centre, centre_inverse, \ from mlair.helpers.statistics import standardise, standardise_inverse, standardise_apply, centre, centre_inverse, \
centre_apply, \ centre_apply, \
apply_inverse_transformation apply_inverse_transformation
...@@ -72,7 +71,7 @@ class TestStandardise: ...@@ -72,7 +71,7 @@ class TestStandardise:
(lazy('xarray'), 'index')]) (lazy('xarray'), 'index')])
def test_apply_standardise_inverse(self, data_orig, dim): def test_apply_standardise_inverse(self, data_orig, dim):
mean, std, data = standardise(data_orig, dim) mean, std, data = standardise(data_orig, dim)
data_recovered = apply_inverse_transformation(data, mean, std) data_recovered = apply_inverse_transformation(data, "standardise", mean, std)
assert np.testing.assert_array_almost_equal(data_orig, data_recovered) is None assert np.testing.assert_array_almost_equal(data_orig, data_recovered) is None
@pytest.mark.parametrize('data_orig, mean, std, dim', [(lazy('pandas'), lazy('pd_mean'), lazy('pd_std'), 0), @pytest.mark.parametrize('data_orig, mean, std, dim', [(lazy('pandas'), lazy('pd_mean'), lazy('pd_std'), 0),
...@@ -106,7 +105,7 @@ class TestCentre: ...@@ -106,7 +105,7 @@ class TestCentre:
(lazy('xarray'), 'index')]) (lazy('xarray'), 'index')])
def test_apply_centre_inverse(self, data_orig, dim): def test_apply_centre_inverse(self, data_orig, dim):
mean, _, data = centre(data_orig, dim) mean, _, data = centre(data_orig, dim)
data_recovered = apply_inverse_transformation(data, mean, method="centre") data_recovered = apply_inverse_transformation(data, mean=mean, method="centre")
assert np.testing.assert_array_almost_equal(data_orig, data_recovered) is None assert np.testing.assert_array_almost_equal(data_orig, data_recovered) is None
@pytest.mark.parametrize('data_orig, mean, dim', [(lazy('pandas'), lazy('pd_mean'), 0), @pytest.mark.parametrize('data_orig, mean, dim', [(lazy('pandas'), lazy('pd_mean'), 0),
...@@ -115,50 +114,3 @@ class TestCentre: ...@@ -115,50 +114,3 @@ class TestCentre:
data = centre_apply(data_orig, mean) data = centre_apply(data_orig, mean)
mean_expected = np.array([2, -5, 10]) - np.array([2, 10, 3]) mean_expected = np.array([2, -5, 10]) - np.array([2, 10, 3])
assert np.testing.assert_almost_equal(data.mean(dim), mean_expected, decimal=1) is None assert np.testing.assert_almost_equal(data.mean(dim), mean_expected, decimal=1) is None
class TestDataClass:
def test_init(self):
dc = DataClass()
assert all([obj is None for obj in [dc.data, dc.mean, dc.std, dc.max, dc.min, dc.transform_method, dc._method]])
def test_init_values(self):
dc = DataClass(data=12, mean=2, std="test", max=23.4, min=np.array([3]), transform_method="f")
assert dc.data == 12
assert dc.mean == 2
assert dc.std == "test"
assert dc.max == 23.4
assert np.testing.assert_array_equal(dc.min, np.array([3])) is None
assert dc.transform_method == "f"
assert dc._method is None
def test_as_dict(self):
dc = DataClass(std=23)
dc._method = "f(x)"
assert dc.as_dict() == {"data": None, "mean": None, "std": 23, "max": None, "min": None,
"transform_method": None}
class TestTransformationClass:
def test_init(self):
tc = TransformationClass()
assert hasattr(tc, "inputs")
assert isinstance(tc.inputs, DataClass)
assert hasattr(tc, "targets")
assert isinstance(tc.targets, DataClass)
assert tc.inputs.mean is None
assert tc.targets.std is None
def test_init_values(self):
tc = TransformationClass(inputs_mean=1, inputs_std=2, inputs_method="f", targets_mean=3, targets_std=4,
targets_method="g")
assert tc.inputs.mean == 1
assert tc.inputs.std == 2
assert tc.inputs.transform_method == "f"
assert tc.inputs.max is None
assert tc.targets.mean == 3
assert tc.targets.std == 4
assert tc.targets.transform_method == "g"
assert tc.inputs.min is None
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment