From 08900c91aee602e4653d3638254559960ef32ba0 Mon Sep 17 00:00:00 2001 From: fbourgin <francois.bourgin@inrae.fr> Date: Tue, 22 Apr 2025 15:45:01 +0200 Subject: [PATCH] wip - add a test --- tests/test_probabilist.cpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/tests/test_probabilist.cpp b/tests/test_probabilist.cpp index 186ed72..0ee579f 100644 --- a/tests/test_probabilist.cpp +++ b/tests/test_probabilist.cpp @@ -297,6 +297,41 @@ TEST(ProbabilistTests, TestIntervals) } } +TEST(ProbabilistTests, TestIntervalsQLVL) +{ + // read in data + xt::xtensor<double, 1> observed; + xt::xtensor<double, 2> predicted; + std::tie(observed, predicted) = load_data_p(); + + // read in expected results + auto expected = load_expected_p(); + + // compute scores + std::vector<std::string> metrics = {"CR"}; + + std::vector<xt::xarray<double>> results = + evalhyd::evalp( + // shape: (sites [1], time [t]) + xt::eval(xt::view(observed, xt::newaxis(), xt::all())), + // shape: (sites [1], lead times [1], members [m], time [t]) + xt::eval(xt::view(predicted, xt::newaxis(), xt::newaxis(), xt::range(0, 4), xt::all())), + metrics, + xt::xtensor<double, 2>({}), + "", // events + {50., 80.}, // c_lvl + {0.1, 0.25, 0.75, 0.9} // q_lvl + ); + + // check results + for (std::size_t m = 0; m < metrics.size(); m++) + { + EXPECT_TRUE(xt::all(xt::isclose( + results[m], expected[metrics[m]], 1e-05, 1e-08, true + ))) << "Failure for (" << metrics[m] << ")"; + } +} + TEST(ProbabilistTests, TestMultiVariate) { // read in data -- GitLab