diff --git a/tests/test_checkpointing_Checkpoint.cpp b/tests/test_checkpointing_Checkpoint.cpp index 317683b26dfca317b4b6f0059b6a8e55c8d5e4f0..9436797a726b303698156fc0f5991c29d0f146e9 100644 --- a/tests/test_checkpointing_Checkpoint.cpp +++ b/tests/test_checkpointing_Checkpoint.cpp @@ -152,13 +152,13 @@ for(let i:N, i=0; i<3; ++i) { HighFive::Group m = embedded1.getGroup("m"); REQUIRE(m.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m.getAttribute("id").read<uint64_t>() == initial_mesh_id + (parallel::size() > 1)); + REQUIRE(m.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); HighFive::Group singleton = checkpoint.getGroup("singleton"); HighFive::Group global_variables = singleton.getGroup("global_variables"); REQUIRE(global_variables.getAttribute("connectivity_id").read<uint64_t>() == initial_connectivity_id + 1 + (parallel::size() > 1)); - REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 1 + (parallel::size() > 1)); + REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 2); HighFive::Group execution_info = singleton.getGroup("execution_info"); REQUIRE(execution_info.getAttribute("run_number").read<uint64_t>() == 1); @@ -170,10 +170,10 @@ for(let i:N, i=0; i<3; ++i) { REQUIRE(connectivity0.getAttribute("type").read<std::string>() == "unstructured"); HighFive::Group mesh = checkpoint.getGroup("mesh"); - HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + (parallel::size() > 1))); + HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); REQUIRE(mesh0.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (parallel::size() > 1)); REQUIRE(mesh0.getAttribute("dimension").read<uint64_t>() == 2); - REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + (parallel::size() > 1)); + REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh0.getAttribute("type").read<std::string>() == "polygonal"); HighFive::Group functions = checkpoint.getGroup("functions"); diff --git a/tests/test_checkpointing_Checkpoint_sequential.cpp b/tests/test_checkpointing_Checkpoint_sequential.cpp index 160404f8835a7fcf6a0c94700ae79d023391b2ca..825138fabde43964790c900eb2ce0ad4338e73e5 100644 --- a/tests/test_checkpointing_Checkpoint_sequential.cpp +++ b/tests/test_checkpointing_Checkpoint_sequential.cpp @@ -158,19 +158,19 @@ for(let i:N, i=0; i<3; ++i) { REQUIRE(duals.getAttribute("type").read<std::string>() == "(mesh)"); HighFive::Group duals_0 = duals.getGroup("0"); REQUIRE(duals_0.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(duals_0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); + REQUIRE(duals_0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); HighFive::Group duals_1 = duals.getGroup("1"); REQUIRE(duals_1.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(duals_1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); + REQUIRE(duals_1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); HighFive::Group m = embedded1.getGroup("m"); REQUIRE(m.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m.getAttribute("id").read<uint64_t>() == initial_mesh_id); + REQUIRE(m.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); HighFive::Group singleton = checkpoint.getGroup("singleton"); HighFive::Group global_variables = singleton.getGroup("global_variables"); REQUIRE(global_variables.getAttribute("connectivity_id").read<uint64_t>() == initial_connectivity_id + 3); - REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 3); + REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 4); HighFive::Group execution_info = singleton.getGroup("execution_info"); REQUIRE(execution_info.getAttribute("run_number").read<uint64_t>() == 1); @@ -193,21 +193,21 @@ for(let i:N, i=0; i<3; ++i) { REQUIRE(connectivity2.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Median); HighFive::Group mesh = checkpoint.getGroup("mesh"); - HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id)); + HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); REQUIRE(mesh0.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id); REQUIRE(mesh0.getAttribute("dimension").read<uint64_t>() == 2); - REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id); + REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh0.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); - REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); - REQUIRE(mesh1.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id); + HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 2)); + REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); + REQUIRE(mesh1.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh1.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh1.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond); - HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 2)); - REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); - REQUIRE(mesh2.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id); + HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); + REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); + REQUIRE(mesh2.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh2.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh2.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Median); diff --git a/tests/test_checkpointing_Connectivity.cpp b/tests/test_checkpointing_Connectivity.cpp index dcb6bb14665bebec43b08eaa710e67ab3fc5f76d..01c4a6b70ac8defc28e4e0aa1bfb84e986a67201 100644 --- a/tests/test_checkpointing_Connectivity.cpp +++ b/tests/test_checkpointing_Connectivity.cpp @@ -57,7 +57,7 @@ TEST_CASE("checkpointing_Connectivity", "[utils/checkpointing]") auto new_connectivity_1d = test_only::duplicateConnectivity(mesh_1d->connectivity()); checkpointing::writeConnectivity(*new_connectivity_1d, file, checkpoint_group_0); checkpointing::writeConnectivity(*new_connectivity_1d, file, checkpoint_group_1); - connectivity_id_map[mesh_1d->id()] = new_connectivity_1d->id(); + connectivity_id_map[mesh_1d->connectivity().id()] = new_connectivity_1d->id(); auto mesh_2d = MeshDataBaseForTests::get().hybrid2DMesh()->get<Mesh<2>>(); @@ -69,7 +69,7 @@ TEST_CASE("checkpointing_Connectivity", "[utils/checkpointing]") checkpointing::writeConnectivity(*new_connectivity_2d, file, checkpoint_group_0); checkpointing::writeConnectivity(*new_connectivity_2d, file, checkpoint_group_1); - connectivity_id_map[mesh_2d->id()] = new_connectivity_2d->id(); + connectivity_id_map[mesh_2d->connectivity().id()] = new_connectivity_2d->id(); HighFive::Group global_variables_group_0 = checkpoint_group_0.createGroup("singleton/global_variables"); global_variables_group_0.createAttribute("connectivity_id", @@ -83,7 +83,7 @@ TEST_CASE("checkpointing_Connectivity", "[utils/checkpointing]") auto new_connectivity_3d = test_only::duplicateConnectivity(mesh_3d->connectivity()); checkpointing::writeConnectivity(*new_connectivity_3d, file, checkpoint_group_1); - connectivity_id_map[mesh_3d->id()] = new_connectivity_3d->id(); + connectivity_id_map[mesh_3d->connectivity().id()] = new_connectivity_3d->id(); // creates artificially holes in numbering test_only::duplicateConnectivity(mesh_3d->connectivity()); diff --git a/tests/test_checkpointing_Resume.cpp b/tests/test_checkpointing_Resume.cpp index 82ea9202b75958e7d77a33c7af47d9a4516860bc..13f1b341ec80e8ad654d8f03bb7305e2a9420f44 100644 --- a/tests/test_checkpointing_Resume.cpp +++ b/tests/test_checkpointing_Resume.cpp @@ -229,22 +229,21 @@ for(let i:N, i=0; i<3; ++i) { HighFive::Group m1d = embedded1.getGroup("m1d"); REQUIRE(m1d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + (1 + 2 * (parallel::size() > 1))); + REQUIRE(m1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); HighFive::Group m2d = embedded1.getGroup("m2d"); REQUIRE(m2d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id + (parallel::size() > 1)); + REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); HighFive::Group m3d = embedded1.getGroup("m3d"); REQUIRE(m3d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + (2 + 3 * (parallel::size() > 1))); + REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); HighFive::Group singleton = checkpoint.getGroup("singleton"); HighFive::Group global_variables = singleton.getGroup("global_variables"); REQUIRE(global_variables.getAttribute("connectivity_id").read<uint64_t>() == initial_connectivity_id + 3 * (1 + (parallel::size() > 1))); - REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == - initial_mesh_id + 3 * (1 + (parallel::size() > 1))); + REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 6); HighFive::Group execution_info = singleton.getGroup("execution_info"); REQUIRE(execution_info.getAttribute("run_number").read<uint64_t>() == 1); @@ -270,24 +269,24 @@ for(let i:N, i=0; i<3; ++i) { REQUIRE(connectivity2.getAttribute("type").read<std::string>() == "unstructured"); HighFive::Group mesh = checkpoint.getGroup("mesh"); - HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + (parallel::size() > 1))); + HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); REQUIRE(mesh0.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (parallel::size() > 1)); REQUIRE(mesh0.getAttribute("dimension").read<uint64_t>() == 2); - REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + (parallel::size() > 1)); + REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh0.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + (1 + 2 * (parallel::size() > 1)))); + HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); REQUIRE(mesh1.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (1 + 2 * (parallel::size() > 1))); REQUIRE(mesh1.getAttribute("dimension").read<uint64_t>() == 1); - REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + (1 + 2 * (parallel::size() > 1))); + REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); REQUIRE(mesh1.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + (2 + 3 * (parallel::size() > 1)))); + HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 5)); REQUIRE(mesh2.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (2 + 3 * (parallel::size() > 1))); REQUIRE(mesh2.getAttribute("dimension").read<uint64_t>() == 3); - REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + (2 + 3 * (parallel::size() > 1))); + REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); REQUIRE(mesh2.getAttribute("type").read<std::string>() == "polygonal"); HighFive::Group functions = checkpoint.getGroup("functions"); @@ -357,22 +356,21 @@ for(let i:N, i=0; i<3; ++i) { HighFive::Group m1d = embedded1.getGroup("m1d"); REQUIRE(m1d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + (1 + 2 * (parallel::size() > 1))); + REQUIRE(m1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); HighFive::Group m2d = embedded1.getGroup("m2d"); REQUIRE(m2d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id + (parallel::size() > 1)); + REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); HighFive::Group m3d = embedded1.getGroup("m3d"); REQUIRE(m3d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + (2 + 3 * (parallel::size() > 1))); + REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); HighFive::Group singleton = checkpoint.getGroup("singleton"); HighFive::Group global_variables = singleton.getGroup("global_variables"); REQUIRE(global_variables.getAttribute("connectivity_id").read<uint64_t>() == initial_connectivity_id + 3 * (1 + (parallel::size() > 1))); - REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == - initial_mesh_id + 3 * (1 + (parallel::size() > 1))); + REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 6); HighFive::Group execution_info = singleton.getGroup("execution_info"); REQUIRE(execution_info.getAttribute("run_number").read<uint64_t>() == 1); @@ -398,24 +396,24 @@ for(let i:N, i=0; i<3; ++i) { REQUIRE(connectivity2.getAttribute("type").read<std::string>() == "unstructured"); HighFive::Group mesh = checkpoint.getGroup("mesh"); - HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + (parallel::size() > 1))); + HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); REQUIRE(mesh0.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (parallel::size() > 1)); REQUIRE(mesh0.getAttribute("dimension").read<uint64_t>() == 2); - REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + (parallel::size() > 1)); + REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh0.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + (1 + 2 * (parallel::size() > 1)))); + HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); REQUIRE(mesh1.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (1 + 2 * (parallel::size() > 1))); REQUIRE(mesh1.getAttribute("dimension").read<uint64_t>() == 1); - REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + (1 + 2 * (parallel::size() > 1))); + REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); REQUIRE(mesh1.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + (2 + 3 * (parallel::size() > 1)))); + HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 5)); REQUIRE(mesh2.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (2 + 3 * (parallel::size() > 1))); REQUIRE(mesh2.getAttribute("dimension").read<uint64_t>() == 3); - REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + (2 + 3 * (parallel::size() > 1))); + REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); REQUIRE(mesh2.getAttribute("type").read<std::string>() == "polygonal"); HighFive::Group functions = checkpoint.getGroup("functions"); @@ -488,22 +486,21 @@ for(let i:N, i=0; i<3; ++i) { HighFive::Group m1d = embedded1.getGroup("m1d"); REQUIRE(m1d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + (1 + 2 * (parallel::size() > 1))); + REQUIRE(m1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); HighFive::Group m2d = embedded1.getGroup("m2d"); REQUIRE(m2d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id + (parallel::size() > 1)); + REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); HighFive::Group m3d = embedded1.getGroup("m3d"); REQUIRE(m3d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + (2 + 3 * (parallel::size() > 1))); + REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); HighFive::Group singleton = checkpoint.getGroup("singleton"); HighFive::Group global_variables = singleton.getGroup("global_variables"); REQUIRE(global_variables.getAttribute("connectivity_id").read<uint64_t>() == initial_connectivity_id + 3 * (1 + (parallel::size() > 1))); - REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == - initial_mesh_id + 3 * (1 + (parallel::size() > 1))); + REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 6); HighFive::Group execution_info = singleton.getGroup("execution_info"); REQUIRE(execution_info.getAttribute("run_number").read<uint64_t>() == 2); @@ -529,24 +526,24 @@ for(let i:N, i=0; i<3; ++i) { REQUIRE(connectivity2.getAttribute("type").read<std::string>() == "unstructured"); HighFive::Group mesh = checkpoint.getGroup("mesh"); - HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + (parallel::size() > 1))); + HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); REQUIRE(mesh0.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (parallel::size() > 1)); REQUIRE(mesh0.getAttribute("dimension").read<uint64_t>() == 2); - REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + (parallel::size() > 1)); + REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh0.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + (1 + 2 * (parallel::size() > 1)))); + HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); REQUIRE(mesh1.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (1 + 2 * (parallel::size() > 1))); REQUIRE(mesh1.getAttribute("dimension").read<uint64_t>() == 1); - REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + (1 + 2 * (parallel::size() > 1))); + REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); REQUIRE(mesh1.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + (2 + 3 * (parallel::size() > 1)))); + HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 5)); REQUIRE(mesh2.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + (2 + 3 * (parallel::size() > 1))); REQUIRE(mesh2.getAttribute("dimension").read<uint64_t>() == 3); - REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + (2 + 3 * (parallel::size() > 1))); + REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); REQUIRE(mesh2.getAttribute("type").read<std::string>() == "polygonal"); HighFive::Group functions = checkpoint.getGroup("functions"); diff --git a/tests/test_checkpointing_Resume_sequential.cpp b/tests/test_checkpointing_Resume_sequential.cpp index e8a3aa1038a3089c5188bfb2dc19f4dc6a4abdbc..f2ea03bbee24e6568db15b10001ec20c4f49c25a 100644 --- a/tests/test_checkpointing_Resume_sequential.cpp +++ b/tests/test_checkpointing_Resume_sequential.cpp @@ -233,37 +233,37 @@ for(let i:N, i=0; i<3; ++i) { HighFive::Group m1d = embedded1.getGroup("m1d"); REQUIRE(m1d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); + REQUIRE(m1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); HighFive::Group dual_1d = embedded1.getGroup("dual_1d"); REQUIRE(dual_1d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(dual_1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 4); + REQUIRE(dual_1d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); HighFive::Group m2d = embedded1.getGroup("m2d"); REQUIRE(m2d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id); + REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); HighFive::Group duals_2d = embedded1.getGroup("duals_2d"); REQUIRE(duals_2d.getAttribute("type").read<std::string>() == "(mesh)"); HighFive::Group duals_2d_0 = duals_2d.getGroup("0"); REQUIRE(duals_2d_0.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(duals_2d_0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); + REQUIRE(duals_2d_0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); HighFive::Group duals_2d_1 = duals_2d.getGroup("1"); REQUIRE(duals_2d_1.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(duals_2d_1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); + REQUIRE(duals_2d_1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); HighFive::Group m3d = embedded1.getGroup("m3d"); REQUIRE(m3d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); + REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 8); HighFive::Group dual_3d = embedded1.getGroup("dual_3d"); REQUIRE(dual_3d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(dual_3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); + REQUIRE(dual_3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 9); HighFive::Group singleton = checkpoint.getGroup("singleton"); HighFive::Group global_variables = singleton.getGroup("global_variables"); REQUIRE(global_variables.getAttribute("connectivity_id").read<uint64_t>() == initial_connectivity_id + 7); - REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 7); + REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 10); HighFive::Group execution_info = singleton.getGroup("execution_info"); REQUIRE(execution_info.getAttribute("run_number").read<uint64_t>() == 1); @@ -308,45 +308,45 @@ for(let i:N, i=0; i<3; ++i) { REQUIRE(connectivity6.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond); HighFive::Group mesh = checkpoint.getGroup("mesh"); - HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id)); + HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); REQUIRE(mesh0.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id); REQUIRE(mesh0.getAttribute("dimension").read<uint64_t>() == 2); - REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id); + REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh0.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); - REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); - REQUIRE(mesh1.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id); + HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 2)); + REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); + REQUIRE(mesh1.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh1.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh1.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond); - HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 2)); - REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); - REQUIRE(mesh2.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id); + HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); + REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); + REQUIRE(mesh2.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh2.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh2.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Median); - HighFive::Group mesh3 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); + HighFive::Group mesh3 = mesh.getGroup(std::to_string(initial_mesh_id + 5)); REQUIRE(mesh3.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + 3); REQUIRE(mesh3.getAttribute("dimension").read<uint64_t>() == 1); - REQUIRE(mesh3.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); + REQUIRE(mesh3.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); REQUIRE(mesh3.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh4 = mesh.getGroup(std::to_string(initial_mesh_id + 4)); - REQUIRE(mesh4.getAttribute("id").read<uint64_t>() == initial_mesh_id + 4); - REQUIRE(mesh4.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 3); + HighFive::Group mesh4 = mesh.getGroup(std::to_string(initial_mesh_id + 6)); + REQUIRE(mesh4.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); + REQUIRE(mesh4.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 5); REQUIRE(mesh4.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh4.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Dual1D); - HighFive::Group mesh5 = mesh.getGroup(std::to_string(initial_mesh_id + 5)); + HighFive::Group mesh5 = mesh.getGroup(std::to_string(initial_mesh_id + 8)); REQUIRE(mesh5.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + 5); REQUIRE(mesh5.getAttribute("dimension").read<uint64_t>() == 3); - REQUIRE(mesh5.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); + REQUIRE(mesh5.getAttribute("id").read<uint64_t>() == initial_mesh_id + 8); REQUIRE(mesh5.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh6 = mesh.getGroup(std::to_string(initial_mesh_id + 6)); - REQUIRE(mesh6.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); - REQUIRE(mesh6.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 5); + HighFive::Group mesh6 = mesh.getGroup(std::to_string(initial_mesh_id + 9)); + REQUIRE(mesh6.getAttribute("id").read<uint64_t>() == initial_mesh_id + 9); + REQUIRE(mesh6.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 8); REQUIRE(mesh6.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh6.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond); @@ -417,29 +417,29 @@ for(let i:N, i=0; i<3; ++i) { HighFive::Group m2d = embedded1.getGroup("m2d"); REQUIRE(m2d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id); + REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); HighFive::Group duals_2d = embedded1.getGroup("duals_2d"); REQUIRE(duals_2d.getAttribute("type").read<std::string>() == "(mesh)"); HighFive::Group duals_2d_0 = duals_2d.getGroup("0"); REQUIRE(duals_2d_0.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(duals_2d_0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); + REQUIRE(duals_2d_0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); HighFive::Group duals_2d_1 = duals_2d.getGroup("1"); REQUIRE(duals_2d_1.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(duals_2d_1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); + REQUIRE(duals_2d_1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); HighFive::Group m3d = embedded1.getGroup("m3d"); REQUIRE(m3d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); + REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 8); HighFive::Group dual_3d = embedded1.getGroup("dual_3d"); REQUIRE(dual_3d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(dual_3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); + REQUIRE(dual_3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 9); HighFive::Group singleton = checkpoint.getGroup("singleton"); HighFive::Group global_variables = singleton.getGroup("global_variables"); REQUIRE(global_variables.getAttribute("connectivity_id").read<uint64_t>() == initial_connectivity_id + 7); - REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 7); + REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 10); HighFive::Group execution_info = singleton.getGroup("execution_info"); REQUIRE(execution_info.getAttribute("run_number").read<uint64_t>() == 1); @@ -484,45 +484,45 @@ for(let i:N, i=0; i<3; ++i) { REQUIRE(connectivity6.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond); HighFive::Group mesh = checkpoint.getGroup("mesh"); - HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id)); + HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); REQUIRE(mesh0.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id); REQUIRE(mesh0.getAttribute("dimension").read<uint64_t>() == 2); - REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id); + REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh0.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); - REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); - REQUIRE(mesh1.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id); + HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 2)); + REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); + REQUIRE(mesh1.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh1.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh1.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond); - HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 2)); - REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); - REQUIRE(mesh2.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id); + HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); + REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); + REQUIRE(mesh2.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh2.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh2.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Median); - HighFive::Group mesh3 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); + HighFive::Group mesh3 = mesh.getGroup(std::to_string(initial_mesh_id + 5)); REQUIRE(mesh3.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + 3); REQUIRE(mesh3.getAttribute("dimension").read<uint64_t>() == 1); - REQUIRE(mesh3.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); + REQUIRE(mesh3.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); REQUIRE(mesh3.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh4 = mesh.getGroup(std::to_string(initial_mesh_id + 4)); - REQUIRE(mesh4.getAttribute("id").read<uint64_t>() == initial_mesh_id + 4); - REQUIRE(mesh4.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 3); + HighFive::Group mesh4 = mesh.getGroup(std::to_string(initial_mesh_id + 6)); + REQUIRE(mesh4.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); + REQUIRE(mesh4.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 5); REQUIRE(mesh4.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh4.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Dual1D); - HighFive::Group mesh5 = mesh.getGroup(std::to_string(initial_mesh_id + 5)); + HighFive::Group mesh5 = mesh.getGroup(std::to_string(initial_mesh_id + 8)); REQUIRE(mesh5.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + 5); REQUIRE(mesh5.getAttribute("dimension").read<uint64_t>() == 3); - REQUIRE(mesh5.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); + REQUIRE(mesh5.getAttribute("id").read<uint64_t>() == initial_mesh_id + 8); REQUIRE(mesh5.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh6 = mesh.getGroup(std::to_string(initial_mesh_id + 6)); - REQUIRE(mesh6.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); - REQUIRE(mesh6.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 5); + HighFive::Group mesh6 = mesh.getGroup(std::to_string(initial_mesh_id + 9)); + REQUIRE(mesh6.getAttribute("id").read<uint64_t>() == initial_mesh_id + 9); + REQUIRE(mesh6.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 8); REQUIRE(mesh6.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh6.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond); @@ -596,29 +596,29 @@ for(let i:N, i=0; i<3; ++i) { HighFive::Group m2d = embedded1.getGroup("m2d"); REQUIRE(m2d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id); + REQUIRE(m2d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); HighFive::Group duals_2d = embedded1.getGroup("duals_2d"); REQUIRE(duals_2d.getAttribute("type").read<std::string>() == "(mesh)"); HighFive::Group duals_2d_0 = duals_2d.getGroup("0"); REQUIRE(duals_2d_0.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(duals_2d_0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); + REQUIRE(duals_2d_0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); HighFive::Group duals_2d_1 = duals_2d.getGroup("1"); REQUIRE(duals_2d_1.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(duals_2d_1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); + REQUIRE(duals_2d_1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); HighFive::Group m3d = embedded1.getGroup("m3d"); REQUIRE(m3d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); + REQUIRE(m3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 8); HighFive::Group dual_3d = embedded1.getGroup("dual_3d"); REQUIRE(dual_3d.getAttribute("type").read<std::string>() == "mesh"); - REQUIRE(dual_3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); + REQUIRE(dual_3d.getAttribute("id").read<uint64_t>() == initial_mesh_id + 9); HighFive::Group singleton = checkpoint.getGroup("singleton"); HighFive::Group global_variables = singleton.getGroup("global_variables"); REQUIRE(global_variables.getAttribute("connectivity_id").read<uint64_t>() == initial_connectivity_id + 7); - REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 7); + REQUIRE(global_variables.getAttribute("mesh_id").read<uint64_t>() == initial_mesh_id + 10); HighFive::Group execution_info = singleton.getGroup("execution_info"); REQUIRE(execution_info.getAttribute("run_number").read<uint64_t>() == 2); @@ -663,45 +663,45 @@ for(let i:N, i=0; i<3; ++i) { REQUIRE(connectivity6.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond); HighFive::Group mesh = checkpoint.getGroup("mesh"); - HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id)); + HighFive::Group mesh0 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); REQUIRE(mesh0.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id); REQUIRE(mesh0.getAttribute("dimension").read<uint64_t>() == 2); - REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id); + REQUIRE(mesh0.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh0.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 1)); - REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 1); - REQUIRE(mesh1.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id); + HighFive::Group mesh1 = mesh.getGroup(std::to_string(initial_mesh_id + 2)); + REQUIRE(mesh1.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); + REQUIRE(mesh1.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh1.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh1.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond); - HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 2)); - REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 2); - REQUIRE(mesh2.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id); + HighFive::Group mesh2 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); + REQUIRE(mesh2.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); + REQUIRE(mesh2.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 1); REQUIRE(mesh2.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh2.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Median); - HighFive::Group mesh3 = mesh.getGroup(std::to_string(initial_mesh_id + 3)); + HighFive::Group mesh3 = mesh.getGroup(std::to_string(initial_mesh_id + 5)); REQUIRE(mesh3.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + 3); REQUIRE(mesh3.getAttribute("dimension").read<uint64_t>() == 1); - REQUIRE(mesh3.getAttribute("id").read<uint64_t>() == initial_mesh_id + 3); + REQUIRE(mesh3.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); REQUIRE(mesh3.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh4 = mesh.getGroup(std::to_string(initial_mesh_id + 4)); - REQUIRE(mesh4.getAttribute("id").read<uint64_t>() == initial_mesh_id + 4); - REQUIRE(mesh4.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 3); + HighFive::Group mesh4 = mesh.getGroup(std::to_string(initial_mesh_id + 6)); + REQUIRE(mesh4.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); + REQUIRE(mesh4.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 5); REQUIRE(mesh4.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh4.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Dual1D); - HighFive::Group mesh5 = mesh.getGroup(std::to_string(initial_mesh_id + 5)); + HighFive::Group mesh5 = mesh.getGroup(std::to_string(initial_mesh_id + 8)); REQUIRE(mesh5.getAttribute("connectivity").read<uint64_t>() == initial_connectivity_id + 5); REQUIRE(mesh5.getAttribute("dimension").read<uint64_t>() == 3); - REQUIRE(mesh5.getAttribute("id").read<uint64_t>() == initial_mesh_id + 5); + REQUIRE(mesh5.getAttribute("id").read<uint64_t>() == initial_mesh_id + 8); REQUIRE(mesh5.getAttribute("type").read<std::string>() == "polygonal"); - HighFive::Group mesh6 = mesh.getGroup(std::to_string(initial_mesh_id + 6)); - REQUIRE(mesh6.getAttribute("id").read<uint64_t>() == initial_mesh_id + 6); - REQUIRE(mesh6.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 5); + HighFive::Group mesh6 = mesh.getGroup(std::to_string(initial_mesh_id + 9)); + REQUIRE(mesh6.getAttribute("id").read<uint64_t>() == initial_mesh_id + 9); + REQUIRE(mesh6.getAttribute("primal_mesh_id").read<uint64_t>() == initial_mesh_id + 8); REQUIRE(mesh6.getAttribute("type").read<std::string>() == "dual_mesh"); REQUIRE(mesh6.getAttribute("type_of_dual").read<DualMeshType>() == DualMeshType::Diamond);