|
| int | main (int argc, char **argv) |
| |
| | TEST_CASE ("Pipeline: all five states are Local") |
| |
| | TEST_CASE ("Pipeline: global cell count matches expected") |
| |
| | TEST_CASE ("Pipeline: global bnd count matches expected") |
| |
| | TEST_CASE ("InterpolateFace: face count is positive") |
| |
| | TEST_CASE ("InterpolateFace: face2cell has exactly 2 entries per face") |
| |
| | TEST_CASE ("InterpolateFace: face2cell owner is a valid local cell") |
| |
| | TEST_CASE ("InterpolateFace: face2node indices in valid range") |
| |
| | TEST_CASE ("InterpolateFace: cell2face row sizes match expected face count") |
| |
| | TEST_CASE ("InterpolateFace: cell2face entries are valid face indices") |
| |
| | TEST_CASE ("InterpolateFace: bnd2face maps to valid faces") |
| |
| | TEST_CASE ("InterpolateFace: face element types are valid") |
| |
| | TEST_CASE ("N2CB: every local node has at least one adjacent cell") |
| |
| | TEST_CASE ("N2CB: node2cell entries are valid local indices") |
| |
| | TEST_CASE ("BuildCell2CellFace: row sizes match cell2face") |
| |
| | TEST_CASE ("BuildCell2CellFace: entries are valid cells or negative") |
| |
| | TEST_CASE ("ConstructBndMesh: correct dimensions and state") |
| |
| | TEST_CASE ("ConstructBndMesh: node2parentNode valid") |
| |
| | TEST_CASE ("BuildVTKConnectivity: arrays populated correctly") |
| |
| | TEST_CASE ("ReorderLocalCells: all states preserved") |
| |
| | TEST_CASE ("ReorderLocalCells: cell count preserved") |
| |
| | TEST_CASE ("ReorderLocalCells: partition starts valid") |
| |
| | TEST_CASE ("ReorderLocalCells: cell2node still valid") |
| |
| | TEST_CASE ("ReorderLocalCells: face count preserved") |
| |
| | TEST_CASE ("AdjFacial round-trip: face2node and face2cell identity") |
| |
| | TEST_CASE ("AdjC2F round-trip: cell2face and bnd2face identity") |
| |
| | TEST_CASE ("AdjN2CB round-trip: node2cell and node2bnd identity") |
| |
| | TEST_CASE ("AdjC2CFace round-trip: cell2cellFace identity") |
| |
| | TEST_CASE ("AdjPrimary round-trip: serial-out pattern") |
| |
| | TEST_CASE ("AdjForBnd round-trip: ConstructBndMesh + ForBnd") |
| |
| | TEST_CASE ("Ball2: mixed 3D element types") |
| |
| | TEST_CASE ("Elevation: O2 mesh cell count equals O1 cell count") |
| |
| | TEST_CASE ("Elevation: O2 mesh has more nodes than O1") |
| |
| | TEST_CASE ("Bisection: O1 mesh has more cells than O2") |
| |
| | TEST_CASE ("Bisection: global node count is preserved from O2 mesh") |
| |
| | TEST_CASE ("Elevation+Bisection: exact cell count progression") |
| |
Parameterized doctest tests for the full mesh pipeline.
Each mesh configuration (file, dimension, periodic settings, expected counts) is tested through the complete pipeline:
- Pipeline state tracking: every state variable checked
- InterpolateFace: face topology, face2cell, bnd2face
- ReorderLocalCells: cell permutation, partition starts
- N2CB, C2F, Facial, C2CFace adjacency validation
- ConstructBndMesh, BuildVTKConnectivity
- Global count conservation
- All 5 Adj round-trip inverses (on one mesh config)
Mesh configurations: [0] UniformSquare_10 – 2D, 100 quad cells, non-periodic [1] IV10_10 – 2D, 100 quad cells, periodic (isentropic vortex) [2] NACA0012_H2 – 2D, 20816 unstructured quad cells, non-periodic (airfoil) [3] IV10U_10 – 2D, 322 unstructured tri cells, periodic (isentropic vortex)
Definition in file test_MeshPipeline.cpp.