53 lines
1.4 KiB
C++
53 lines
1.4 KiB
C++
#include "UnitTestPCH.h"
|
|
|
|
#include <GenVertexNormalsProcess.h>
|
|
|
|
|
|
using namespace std;
|
|
using namespace Assimp;
|
|
|
|
class GenNormalsTest : public ::testing::Test
|
|
{
|
|
public:
|
|
|
|
virtual void SetUp();
|
|
virtual void TearDown();
|
|
|
|
protected:
|
|
aiMesh* pcMesh;
|
|
GenVertexNormalsProcess* piProcess;
|
|
};
|
|
|
|
// ------------------------------------------------------------------------------------------------
|
|
void GenNormalsTest::SetUp()
|
|
{
|
|
piProcess = new GenVertexNormalsProcess();
|
|
pcMesh = new aiMesh();
|
|
pcMesh->mPrimitiveTypes = aiPrimitiveType_TRIANGLE;
|
|
pcMesh->mNumFaces = 1;
|
|
pcMesh->mFaces = new aiFace[1];
|
|
pcMesh->mFaces[0].mIndices = new unsigned int[pcMesh->mFaces[0].mNumIndices = 3];
|
|
pcMesh->mFaces[0].mIndices[0] = 0;
|
|
pcMesh->mFaces[0].mIndices[1] = 1;
|
|
pcMesh->mFaces[0].mIndices[2] = 1;
|
|
pcMesh->mNumVertices = 3;
|
|
pcMesh->mVertices = new aiVector3D[3];
|
|
pcMesh->mVertices[0] = aiVector3D(0.0f,1.0f,6.0f);
|
|
pcMesh->mVertices[1] = aiVector3D(2.0f,3.0f,1.0f);
|
|
pcMesh->mVertices[2] = aiVector3D(3.0f,2.0f,4.0f);
|
|
}
|
|
|
|
// ------------------------------------------------------------------------------------------------
|
|
void GenNormalsTest::TearDown()
|
|
{
|
|
delete this->pcMesh;
|
|
delete this->piProcess;
|
|
}
|
|
|
|
// ------------------------------------------------------------------------------------------------
|
|
TEST_F(GenNormalsTest, testSimpleTriangle)
|
|
{
|
|
piProcess->GenMeshVertexNormals(pcMesh, 0);
|
|
EXPECT_TRUE(pcMesh->mNormals != NULL);
|
|
}
|