]> git.localhorst.tv Git - blank.git/blobdiff - tst/world/BlockTest.cpp
added block orientation test
[blank.git] / tst / world / BlockTest.cpp
index b10e9c990efc5ab9b1600097d99fcc83ae36c642..b1c2ad2b1cbbecd2c3b710d886645f2a4b3a4c93 100644 (file)
@@ -17,6 +17,38 @@ void BlockTest::tearDown() {
 }
 
 
+void BlockTest::testOrientation() {
+       Block block(0, Block::FACE_DOWN, Block::TURN_LEFT);
+       CPPUNIT_ASSERT_EQUAL_MESSAGE(
+               "wrong block face after initialization",
+               block.GetFace(), Block::FACE_DOWN
+       );
+       CPPUNIT_ASSERT_EQUAL_MESSAGE(
+               "wrong block turn after initialization",
+               block.GetTurn(), Block::TURN_LEFT
+       );
+
+       block.SetFace(Block::FACE_BACK);
+       CPPUNIT_ASSERT_EQUAL_MESSAGE(
+               "changing block face has unexpected effect",
+               block.GetFace(), Block::FACE_BACK
+       );
+       CPPUNIT_ASSERT_EQUAL_MESSAGE(
+               "changing block face affected turn",
+               block.GetTurn(), Block::TURN_LEFT
+       );
+
+       block.SetTurn(Block::TURN_AROUND);
+       CPPUNIT_ASSERT_EQUAL_MESSAGE(
+               "changing block turn has unexpected effect",
+               block.GetTurn(), Block::TURN_AROUND
+       );
+       CPPUNIT_ASSERT_EQUAL_MESSAGE(
+               "changing block turn affected face",
+               block.GetFace(), Block::FACE_BACK
+       );
+}
+
 void BlockTest::testFaceOpposite() {
        CPPUNIT_ASSERT_EQUAL_MESSAGE(
                "DOWN not opposite of UP",
@@ -74,27 +106,27 @@ void BlockTest::testFaceAxis() {
 void BlockTest::testFaceNormal() {
        CPPUNIT_ASSERT_EQUAL_MESSAGE(
                "[ 0, 1, 0 ] not normal of UP",
-               glm::tvec3<int>(0, 1, 0), Block::FaceNormal(Block::FACE_UP)
+               glm::ivec3(0, 1, 0), Block::FaceNormal(Block::FACE_UP)
        );
        CPPUNIT_ASSERT_EQUAL_MESSAGE(
                "[ 0, -1, 0 ] not normal of DOWN",
-               glm::tvec3<int>(0, -1, 0), Block::FaceNormal(Block::FACE_DOWN)
+               glm::ivec3(0, -1, 0), Block::FaceNormal(Block::FACE_DOWN)
        );
        CPPUNIT_ASSERT_EQUAL_MESSAGE(
                "[ 1, 0, 0 ] not normal of RIGHT",
-               glm::tvec3<int>(1, 0, 0), Block::FaceNormal(Block::FACE_RIGHT)
+               glm::ivec3(1, 0, 0), Block::FaceNormal(Block::FACE_RIGHT)
        );
        CPPUNIT_ASSERT_EQUAL_MESSAGE(
                "[ -1, 0, 0 ] not normal of LEFT",
-               glm::tvec3<int>(-1, 0, 0), Block::FaceNormal(Block::FACE_LEFT)
+               glm::ivec3(-1, 0, 0), Block::FaceNormal(Block::FACE_LEFT)
        );
        CPPUNIT_ASSERT_EQUAL_MESSAGE(
                "[ 0, 0, 1 ] not normal of FRONT",
-               glm::tvec3<int>(0, 0, 1), Block::FaceNormal(Block::FACE_FRONT)
+               glm::ivec3(0, 0, 1), Block::FaceNormal(Block::FACE_FRONT)
        );
        CPPUNIT_ASSERT_EQUAL_MESSAGE(
                "[ 0, 0, -1 ] not normal of BACK",
-               glm::tvec3<int>(0, 0, -1), Block::FaceNormal(Block::FACE_BACK)
+               glm::ivec3(0, 0, -1), Block::FaceNormal(Block::FACE_BACK)
        );
 }