Skip to content

Commit

Permalink
Test interval class methods #12
Browse files Browse the repository at this point in the history
  • Loading branch information
smercer10 committed Feb 25, 2024
1 parent 88160df commit b4b983b
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 1 deletion.
2 changes: 1 addition & 1 deletion tests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ FetchContent_Declare(

FetchContent_MakeAvailable(googletest)

add_executable(raydiance_test vec3_test.cpp colour_test.cpp ray_test.cpp globals_test.cpp object_test.cpp)
add_executable(raydiance_test vec3_test.cpp colour_test.cpp ray_test.cpp globals_test.cpp object_test.cpp interval_test.cpp)

target_link_libraries(raydiance_test raydiance_lib GTest::gtest_main)

Expand Down
37 changes: 37 additions & 0 deletions tests/interval_test.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#include "raydiance/globals.h"
#include "raydiance/interval.h"
#include <gtest/gtest.h>

TEST(IntervalTest, Contains) {
interval i(0, 1);
EXPECT_TRUE(i.contains(0));
EXPECT_TRUE(i.contains(1));
EXPECT_TRUE(i.contains(0.5));
EXPECT_FALSE(i.contains(-0.1));
EXPECT_FALSE(i.contains(2));
}

TEST(IntervalTest, Surrounds) {
interval i(0, 1);
EXPECT_TRUE(i.surrounds(0.1));
EXPECT_TRUE(i.surrounds(0.95));
EXPECT_FALSE(i.surrounds(0));
EXPECT_FALSE(i.surrounds(1));
}

TEST(IntervalTest, Empty) {
interval i = interval::empty;
EXPECT_FALSE(i.contains(0));
EXPECT_FALSE(i.contains(-50));
EXPECT_FALSE(i.surrounds(100));
}

TEST(IntervalTest, Universe) {
interval i = interval::universe;
EXPECT_TRUE(i.contains(-20));
EXPECT_TRUE(i.contains(5));
EXPECT_TRUE(i.contains(infinity));
EXPECT_FALSE(i.surrounds(infinity));
EXPECT_TRUE(i.contains(-infinity));
EXPECT_FALSE(i.surrounds(-infinity));
}

0 comments on commit b4b983b

Please sign in to comment.