From 2a8fe61388f58434134a17bc1dd5f060e9d11c3f Mon Sep 17 00:00:00 2001 From: Godzil Date: Thu, 20 Feb 2020 18:06:29 +0000 Subject: [PATCH] Working on adding test for the shape object. --- output/ch8_test.png | Bin 0 -> 81604 bytes tests/CMakeLists.txt | 3 ++- tests/shape_test.cpp | 45 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 output/ch8_test.png create mode 100644 tests/shape_test.cpp diff --git a/output/ch8_test.png b/output/ch8_test.png new file mode 100644 index 0000000000000000000000000000000000000000..401e404f92eb7caa1c2a1d06ff0250a0e37f2b0d GIT binary patch literal 81604 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
    X;^6lRH)ucR`=$>hME_Mvzzq(U2Y!~s_2FJ)m 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 NMnXZnR@5l?e*l}LX4C)x literal 0 HcmV?d00001 diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 38580e3..22a4ad5 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -4,7 +4,8 @@ set(THREADS_PREFER_PTHREAD_FLAG ON) find_package(Threads REQUIRED) set(TESTS_SRC tuple_test.cpp colour_test.cpp canvas_test.cpp matrix_test.cpp transformation_test.cpp ray_test.cpp - intersect_test.cpp sphere_test.cpp light_test.cpp material_test.cpp world_test.cpp camera_test.cpp) + intersect_test.cpp sphere_test.cpp light_test.cpp material_test.cpp world_test.cpp camera_test.cpp + shape_test.cpp) add_executable(testMyRays) target_include_directories(testMyRays PUBLIC ${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR}) diff --git a/tests/shape_test.cpp b/tests/shape_test.cpp new file mode 100644 index 0000000..2f7a40a --- /dev/null +++ b/tests/shape_test.cpp @@ -0,0 +1,45 @@ +/* + * DoRayMe - a quick and dirty Raytracer + * Shape unit tests + * + * Created by Manoƫl Trapier + * Copyright (c) 2020 986-Studio. + * + */ +#include +#include +#include +#include + +TEST(ShapeTest, The_default_transformation) +{ + Shape s = Shape(); + ASSERT_EQ(s.transformMatrix, Matrix4().identity()); +} + +TEST(ShapeTest, Assigning_a_transformation) +{ + Shape s = Shape(); + + s.setTransform(translation(2, 3, 4)); + + ASSERT_EQ(s.transformMatrix, translation(2, 3, 4)); +} + +TEST(ShapeTest, The_default_material) +{ + Shape s = Shape(); + + ASSERT_EQ(s.material, Material()); +} + +TEST(ShapeTest, Assigning_a_material) +{ + Shape s = Shape(); + Material m = Material(); + m.ambient = 1; + + s.material = m; + + ASSERT_EQ(s.material, m); +} \ No newline at end of file