Commit d306ece0 authored by Thibault Hallouin's avatar Thibault Hallouin
Browse files

add cmake file for tests build

Showing with 50 additions and 7 deletions
+50 -7
.gitignore 0 → 100644
# CMake directories
cmake-build-debug/
tests/cmake-build-debug/
# GoogleTest directories
tests/googletest-subbuild/
cmake_minimum_required(VERSION 3.22)
project(evalhyd_tests)
set(CMAKE_CXX_STANDARD 14)
# GOOGLETEST CONFIG ------------------------------------------------------------
include(FetchContent)
FetchContent_Declare(
googletest
URL https://github.com/google/googletest/archive/e2239ee6043f73722e7aa812a459f54a28552929.zip
)
# For Windows: Prevent overriding the parent project's compiler/linker settings
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
FetchContent_MakeAvailable(googletest)
# EVALHYD CONFIG ---------------------------------------------------------------
include_directories("../deps/xtl/include")
include_directories("../deps/xtensor/include")
include_directories(../include)
# TEST SUITE -------------------------------------------------------------------
include_directories(data)
add_executable(
evalhyd_tests
test_determinist.cpp
../include/evalhyd/utils.hpp
../include/evalhyd/determinist.hpp
../include/evalhyd/deterministic/evaluator.hpp
test_probabilist.cpp
../include/evalhyd/probabilist.hpp
../include/evalhyd/probabilistic/evaluator.h
../include/evalhyd/probabilistic/evaluator_brier.cpp
../include/evalhyd/probabilistic/evaluator_elements.cpp
../include/evalhyd/probabilistic/evaluator_utils.cpp
)
target_link_libraries(evalhyd_tests gtest gtest_main)
...@@ -9,16 +9,16 @@ ...@@ -9,16 +9,16 @@
#include "evalhyd/determinist.hpp" #include "evalhyd/determinist.hpp"
TEST(EvalHydDeterministTests, TestNSE) { TEST(DeterministTests, TestNSE) {
// read in data // read in data
std::ifstream ifs; std::ifstream ifs;
ifs.open("./evalhyd/tests/data/q_obs.csv"); ifs.open("./data/q_obs.csv");
xt::xtensor<double, 2> observed_2d = xt::transpose(xt::load_csv<int>(ifs)); xt::xtensor<double, 2> observed_2d = xt::transpose(xt::load_csv<int>(ifs));
ifs.close(); ifs.close();
xt::xtensor<double, 1> observed_1d = xt::squeeze(observed_2d); xt::xtensor<double, 1> observed_1d = xt::squeeze(observed_2d);
ifs.open("./evalhyd/tests/data/q_frc.csv"); ifs.open("./data/q_frc.csv");
xt::xtensor<double, 2> forecast_2d = xt::view( xt::xtensor<double, 2> forecast_2d = xt::view(
xt::transpose(xt::load_csv<double>(ifs)), xt::range(0, 5), xt::all() xt::transpose(xt::load_csv<double>(ifs)), xt::range(0, 5), xt::all()
); );
...@@ -44,5 +44,4 @@ TEST(EvalHydDeterministTests, TestNSE) { ...@@ -44,5 +44,4 @@ TEST(EvalHydDeterministTests, TestNSE) {
xt::xtensor<double, 1> nse_1d = {0.71891219}; xt::xtensor<double, 1> nse_1d = {0.71891219};
EXPECT_TRUE(xt::allclose(metrics_1d[0], nse_1d)); EXPECT_TRUE(xt::allclose(metrics_1d[0], nse_1d));
} }
...@@ -8,14 +8,14 @@ ...@@ -8,14 +8,14 @@
#include "evalhyd/probabilist.hpp" #include "evalhyd/probabilist.hpp"
TEST(EvalHydProbabilistTests, TestBrier) { TEST(ProbabilistTests, TestBrier) {
// read in data // read in data
std::ifstream ifs; std::ifstream ifs;
ifs.open("./evalhyd/tests/data/q_obs.csv"); ifs.open("./data/q_obs.csv");
xt::xtensor<double, 2> observed = xt::load_csv<int>(ifs); xt::xtensor<double, 2> observed = xt::load_csv<int>(ifs);
ifs.close(); ifs.close();
ifs.open("./evalhyd/tests/data/q_frc.csv"); ifs.open("./data/q_frc.csv");
xt::xtensor<double, 2> forecast = xt::load_csv<double>(ifs); xt::xtensor<double, 2> forecast = xt::load_csv<double>(ifs);
ifs.close(); ifs.close();
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment