diff --git a/tests/test_determinist.py b/tests/test_determinist.py index 8276b01f5c748f4912a6e80f307f3b273f4a65af..0c271a9c05b17acacbd78a714a7ee422251e10bb 100644 --- a/tests/test_determinist.py +++ b/tests/test_determinist.py @@ -90,9 +90,14 @@ class TestMasking(unittest.TestCase): def test_masks(self): msk = numpy.ones(_obs.shape, dtype=bool) msk[..., :99] = False + + # TODO: figure out why passing views would not work + obs = _obs[..., 99:].copy() + prd = _prd[..., 99:].copy() + numpy.testing.assert_almost_equal( evalhyd.evald(_obs, _prd, ["NSE"], t_msk=msk)[0], - evalhyd.evald(_obs[..., 99:], _prd[..., 99:], ["NSE"])[0] + evalhyd.evald(obs, prd, ["NSE"])[0] ) def test_conditions(self): @@ -101,8 +106,9 @@ class TestMasking(unittest.TestCase): msk = (_obs[0] < 2000) | (_obs[0] > 3000) - obs = _obs[..., msk] - prd = _prd[..., msk] + # TODO: figure out why passing views would not work + obs = _obs[..., msk].copy() + prd = _prd[..., msk].copy() numpy.testing.assert_almost_equal( evalhyd.evald(_obs, _prd, ["NSE"], m_cdt=cdt)[0], @@ -114,8 +120,9 @@ class TestMasking(unittest.TestCase): msk = _obs[0] >= numpy.median(_obs) - obs = _obs[..., msk] - prd = _prd[..., msk] + # TODO: figure out why passing views would not work + obs = _obs[..., msk].copy() + prd = _prd[..., msk].copy() numpy.testing.assert_almost_equal( evalhyd.evald(_obs, _prd, ["NSE"], m_cdt=cdt)[0], diff --git a/tests/test_probabilist.py b/tests/test_probabilist.py index c42d7ffecefbc974d4ae8f47493bb2b802524233..092ea546f0faec3799faa0426a243574f89c68f2 100644 --- a/tests/test_probabilist.py +++ b/tests/test_probabilist.py @@ -81,9 +81,14 @@ class TestMasking(unittest.TestCase): def test_masks(self): msk = numpy.ones((_prd.shape[0], _prd.shape[1], 1, _prd.shape[3]), dtype=bool) msk[..., :99] = False + + # TODO: figure out why passing views would not work + obs = _obs[..., 99:].copy() + prd = _prd[..., 99:].copy() + numpy.testing.assert_almost_equal( evalhyd.evalp(_obs, _prd, ["QS"], t_msk=msk)[0], - evalhyd.evalp(_obs[..., 99:], _prd[..., 99:], ["QS"])[0] + evalhyd.evalp(obs, prd, ["QS"])[0] ) def test_conditions(self): @@ -92,8 +97,9 @@ class TestMasking(unittest.TestCase): msk = (_obs[0] < 2000) | (_obs[0] > 3000) - obs = _obs[..., msk] - prd = _prd[..., msk] + # TODO: figure out why passing views would not work + obs = _obs[..., msk].copy() + prd = _prd[..., msk].copy() numpy.testing.assert_almost_equal( evalhyd.evalp(_obs, _prd, ["QS"], m_cdt=cdt)[0], @@ -106,8 +112,9 @@ class TestMasking(unittest.TestCase): median = numpy.squeeze(numpy.median(_prd, 2)) msk = median <= numpy.quantile(median, 0.7) - obs = _obs[..., msk] - prd = _prd[..., msk] + # TODO: figure out why passing views would not work + obs = _obs[..., msk].copy() + prd = _prd[..., msk].copy() numpy.testing.assert_almost_equal( evalhyd.evalp(_obs, _prd, ["QS"], m_cdt=cdt)[0],