From 7de7c548fb5e49a2881a3899570e137c19796ee3 Mon Sep 17 00:00:00 2001 From: Alexandre Avenel Date: Fri, 29 Dec 2017 18:06:20 +0100 Subject: [PATCH] Add unit test to OBj importer for homogeneous coord This test triggers an assertion when we divide by zero in homogeneous coordinates. --- test/unit/utObjImportExport.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/test/unit/utObjImportExport.cpp b/test/unit/utObjImportExport.cpp index dd8adcd80..a6c91fed6 100644 --- a/test/unit/utObjImportExport.cpp +++ b/test/unit/utObjImportExport.cpp @@ -330,6 +330,18 @@ TEST_F(utObjImportExport, homogeneous_coordinates_Test) { EXPECT_EQ(vertice.z, 0.8f); } +TEST_F(utObjImportExport, homogeneous_coordinates_divide_by_zero_Test) { + static const std::string ObjModel = + "v -0.500000 0.000000 0.400000 0.\n" + "v -0.500000 0.000000 -0.800000 1.00000\n" + "v 0.500000 1.000000 -0.800000 0.5000\n" + "f 1 2 3\nB"; + + Assimp::Importer myimporter; + const aiScene *scene = myimporter.ReadFileFromMemory(ObjModel.c_str(), ObjModel.size(), aiProcess_ValidateDataStructure); + EXPECT_EQ(nullptr, scene); +} + TEST_F(utObjImportExport, 0based_array_Test) { static const std::string ObjModel = "v -0.500000 0.000000 0.400000\n"