From 7e2ba1fd8136c42130b9293e95c8b92909f1a24c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Thu, 3 Oct 2024 17:08:37 +0200 Subject: [PATCH] MeshTools: properly test the output primitive from generateIndices(). --- src/Magnum/MeshTools/Test/GenerateIndicesTest.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/Magnum/MeshTools/Test/GenerateIndicesTest.cpp b/src/Magnum/MeshTools/Test/GenerateIndicesTest.cpp index 9601358f3..90ee270f8 100644 --- a/src/Magnum/MeshTools/Test/GenerateIndicesTest.cpp +++ b/src/Magnum/MeshTools/Test/GenerateIndicesTest.cpp @@ -152,10 +152,11 @@ const struct { const struct { MeshPrimitive primitive; + MeshPrimitive expectedPrimitive; Containers::Array expectedIndices; Containers::Array expectedIndexedIndices; } MeshDataData[] { - {MeshPrimitive::LineStrip, {InPlaceInit, { + {MeshPrimitive::LineStrip, MeshPrimitive::Lines, {InPlaceInit, { 0, 1, 1, 2, 2, 3, @@ -166,7 +167,7 @@ const struct { 72, 93, 93, 44 }}}, - {MeshPrimitive::LineLoop, {InPlaceInit, { + {MeshPrimitive::LineLoop, MeshPrimitive::Lines, {InPlaceInit, { 0, 1, 1, 2, 2, 3, @@ -179,7 +180,7 @@ const struct { 93, 44, 44, 60 }}}, - {MeshPrimitive::TriangleStrip, {InPlaceInit, { + {MeshPrimitive::TriangleStrip, MeshPrimitive::Triangles, {InPlaceInit, { 0, 1, 2, 2, 1, 3, /* Reversed */ 2, 3, 4 @@ -188,7 +189,7 @@ const struct { 72, 21, 93, /* Reversed */ 72, 93, 44 }}}, - {MeshPrimitive::TriangleFan, {InPlaceInit, { + {MeshPrimitive::TriangleFan, MeshPrimitive::Triangles, {InPlaceInit, { 0, 1, 2, 0, 2, 3, 0, 3, 4 @@ -1110,6 +1111,7 @@ void GenerateIndicesTest::generateIndicesMeshData() { }}; Trade::MeshData out = generateIndices(mesh); + CORRADE_COMPARE(out.primitive(), data.expectedPrimitive); CORRADE_VERIFY(out.isIndexed()); CORRADE_COMPARE(out.indexType(), MeshIndexType::UnsignedInt); CORRADE_COMPARE_AS(out.indices(), data.expectedIndices, @@ -1172,6 +1174,7 @@ template void GenerateIndicesTest::generateIndicesMeshDataIndexed() { }}; Trade::MeshData out = generateIndices(mesh); + CORRADE_COMPARE(out.primitive(), data.expectedPrimitive); CORRADE_VERIFY(out.isIndexed()); CORRADE_COMPARE(out.indexType(), MeshIndexType::UnsignedInt); CORRADE_COMPARE_AS(out.indices(), data.expectedIndexedIndices, @@ -1227,6 +1230,7 @@ void GenerateIndicesTest::generateIndicesMeshDataEmpty() { }}; Trade::MeshData out = generateIndices(mesh); + CORRADE_COMPARE(out.primitive(), data.expectedPrimitive); CORRADE_VERIFY(out.isIndexed()); CORRADE_COMPARE(out.indexCount(), 0); CORRADE_COMPARE(out.attributeCount(), 3); @@ -1261,6 +1265,7 @@ void GenerateIndicesTest::generateIndicesMeshDataMove() { Containers::stridedArrayView(vertices, &vertices[0].textureCoordinates, 5, sizeof(Vertex))} }}); + CORRADE_COMPARE(out.primitive(), MeshPrimitive::Triangles); CORRADE_VERIFY(out.isIndexed()); CORRADE_COMPARE(out.indexType(), MeshIndexType::UnsignedInt); CORRADE_COMPARE_AS(out.indices(), @@ -1286,6 +1291,7 @@ void GenerateIndicesTest::generateIndicesMeshDataMove() { void GenerateIndicesTest::generateIndicesMeshDataNoAttributes() { Trade::MeshData out = generateIndices(Trade::MeshData{MeshPrimitive::TriangleStrip, 4}); + CORRADE_COMPARE(out.primitive(), MeshPrimitive::Triangles); CORRADE_VERIFY(out.isIndexed()); CORRADE_COMPARE(out.indexType(), MeshIndexType::UnsignedInt); CORRADE_COMPARE_AS(out.indices(),