Update cpp unit tests

This commit is contained in:
Joffrey Dorville 2026-06-01 15:36:05 -05:00
parent 28b7c3c47e
commit 5fdb700e73

View file

@ -256,14 +256,14 @@ TEST_CASE("Test multiple meshes HDF5 roundtrip - spherical")
REQUIRE(regular_mesh_hdf5->upper_right() == regular_mesh_xml->upper_right());
}
TEST_CASE("Test get_index_in_direction - regular mesh")
TEST_CASE("Test get_index_in_direction - regular")
{
// The XML data as a string
std::string xml_string = R"(
<mesh id="1">
<dimension>3 4 5</dimension>
<lower_left>-2 -3 -5</lower_left>
<upper_right>2 3 5</upper_right>
<dimension>2 1 1</dimension>
<lower_left>-2 -2 -2</lower_left>
<upper_right>2 2 2</upper_right>
</mesh>
)";
@ -277,20 +277,40 @@ TEST_CASE("Test get_index_in_direction - regular mesh")
auto mesh = RegularMesh(root);
REQUIRE(mesh.get_index_in_direction(-2.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(-1.99, 0) == 1);
REQUIRE(mesh.get_index_in_direction(1.99, 0) == 3);
REQUIRE(mesh.get_index_in_direction(2.0, 0) == 3);
REQUIRE(mesh.get_index_in_direction(-4.01, 1.0, 0) == -1);
REQUIRE(mesh.get_index_in_direction(-4.0, -1.0, 0) == -1);
REQUIRE(mesh.get_index_in_direction(-4.0, 1.0, 0) == 0);
REQUIRE(mesh.get_index_in_direction(-3.99, 1.0, 0) == 0);
REQUIRE(mesh.get_index_in_direction(-2.01, 1.0, 0) == 0);
REQUIRE(mesh.get_index_in_direction(-2.0, -1.0, 0) == 0);
REQUIRE(mesh.get_index_in_direction(-2.0, 1.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(-1.99, 1.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(-0.01, 1.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(0.0, -1.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(0.0, 1.0, 0) == 2);
REQUIRE(mesh.get_index_in_direction(0.01, 1.0, 0) == 2);
REQUIRE(mesh.get_index_in_direction(1.99, -1.0, 0) == 2);
REQUIRE(mesh.get_index_in_direction(2.0, -1.0, 0) == 2);
REQUIRE(mesh.get_index_in_direction(2.0, 1.0, 0) == 3);
REQUIRE(mesh.get_index_in_direction(2.01, -1.0, 0) == 3);
REQUIRE(mesh.get_index_in_direction(3.9, -1.0, 0) == 3);
REQUIRE(mesh.get_index_in_direction(4.0, -1.0, 0) == 3);
REQUIRE(mesh.get_index_in_direction(4.0, 1.0, 0) == 4);
REQUIRE(mesh.get_index_in_direction(4.1, -1.0, 0) == 4);
}
TEST_CASE("Test get_index_in_direction - rectilinear mesh")
TEST_CASE("Test get_index_in_direction - rectilinear")
{
// The XML data as a string
std::string xml_string = R"(
<mesh id="1" type="rectilinear">
<x_grid>0.0 1.0 5.0 10.0</x_grid>
<y_grid>-10.0 -5.0 0.0</y_grid>
<z_grid>-100.0 0.0 100.0</z_grid>
<x_grid>-1.0 0.0 2.0</x_grid>
<y_grid>-1.0 1.0</y_grid>
<z_grid>-1.0 1.0</z_grid>
</mesh>
)";
@ -304,8 +324,22 @@ TEST_CASE("Test get_index_in_direction - rectilinear mesh")
auto mesh = RectilinearMesh(root);
REQUIRE(mesh.get_index_in_direction(0.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(0.01, 0) == 1);
REQUIRE(mesh.get_index_in_direction(9.99, 0) == 3);
REQUIRE(mesh.get_index_in_direction(10.0, 0) == 3);
REQUIRE(mesh.get_index_in_direction(-5.0, -1.0, 0) == 0);
REQUIRE(mesh.get_index_in_direction(-1.1, 1.0, 0) == 0);
REQUIRE(mesh.get_index_in_direction(-1.0, -1.0, 0) == 0);
REQUIRE(mesh.get_index_in_direction(-1.0, 1.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(-0.9, -1.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(-0.1, 1.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(0.0, -1.0, 0) == 1);
REQUIRE(mesh.get_index_in_direction(0.0, 1.0, 0) == 2);
REQUIRE(mesh.get_index_in_direction(0.1, 1.0, 0) == 2);
REQUIRE(mesh.get_index_in_direction(1.99, -1.0, 0) == 2);
REQUIRE(mesh.get_index_in_direction(2.0, -1.0, 0) == 2);
REQUIRE(mesh.get_index_in_direction(2.0, 1.0, 0) == 3);
REQUIRE(mesh.get_index_in_direction(2.1, -1.0, 0) == 3);
REQUIRE(mesh.get_index_in_direction(5.0, -1.0, 0) == 3);
}