From ad8fbfde81afd483ebad90f4d3967a588f439f07 Mon Sep 17 00:00:00 2001 From: Vladyslav Baranovskyi Date: Tue, 8 Oct 2024 15:48:25 +0300 Subject: [PATCH] Testing lower bounds of InBounds and Inside, testing ByteSize literals --- tests/Math/AABB.cpp | 12 ++++++++++++ tests/Math/ByteSize.cpp | 31 +++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) diff --git a/tests/Math/AABB.cpp b/tests/Math/AABB.cpp index 9639ffb..872da25 100644 --- a/tests/Math/AABB.cpp +++ b/tests/Math/AABB.cpp @@ -116,14 +116,26 @@ TEST_CASE("IsOverlapping", "[AABB]") TEST_CASE("InBounds", "[AABB]") { AABB aabb(Vector3f(0.0f), Vector3f(1.0f)); + REQUIRE(aabb.InBounds(Vector3f(0.5f))); + REQUIRE(aabb.InBounds(Vector3f(0.0f))); + REQUIRE(aabb.InBounds(Vector3f(1.0f))); + + REQUIRE_FALSE(aabb.InBounds(Vector3f(1.1f))); + REQUIRE_FALSE(aabb.InBounds(Vector3f(-0.1f))); REQUIRE_FALSE(aabb.InBounds(Vector3f(2.0f))); } TEST_CASE("Inside", "[AABB]") { AABB aabb(Vector3f(0.0f), Vector3f(1.0f)); + REQUIRE(aabb.Inside(Vector3f(0.5f))); + + REQUIRE_FALSE(aabb.Inside(Vector3f(0.0f))); + REQUIRE_FALSE(aabb.Inside(Vector3f(1.0f))); + REQUIRE_FALSE(aabb.Inside(Vector3f(1.1f))); + REQUIRE_FALSE(aabb.Inside(Vector3f(-0.1f))); REQUIRE_FALSE(aabb.Inside(Vector3f(1.0f))); } diff --git a/tests/Math/ByteSize.cpp b/tests/Math/ByteSize.cpp index 52aaed8..b2240b7 100644 --- a/tests/Math/ByteSize.cpp +++ b/tests/Math/ByteSize.cpp @@ -97,4 +97,35 @@ TEST_CASE("Operator overloads", "[ByteSize]") size1 += size2; REQUIRE(static_cast(size1) == (1'024 + 512) * (1uLL << 10)); +} + +TEST_CASE("Literals", "[ByteSize]") +{ + REQUIRE(static_cast(1.0_kiB) == 1uLL << 10); + REQUIRE(static_cast(1.0_MiB) == 1uLL << 20); + REQUIRE(static_cast(1.0_GiB) == 1uLL << 30); + REQUIRE(static_cast(1.0_TiB) == 1uLL << 40); + REQUIRE(static_cast(1.0_PiB) == 1uLL << 50); + REQUIRE(static_cast(1.0_EiB) == 1uLL << 60); + + REQUIRE(static_cast(1.0_kB) == 1'000); + REQUIRE(static_cast(1.0_MB) == 1'000'000); + REQUIRE(static_cast(1.0_GB) == 1'000'000'000); + REQUIRE(static_cast(1.0_TB) == 1'000'000'000'000); + REQUIRE(static_cast(1.0_PB) == 1'000'000'000'000'000); + REQUIRE(static_cast(1.0_EB) == 1'000'000'000'000'000'000); + + REQUIRE(static_cast(1_kiB) == 1uLL << 10); + REQUIRE(static_cast(1_MiB) == 1uLL << 20); + REQUIRE(static_cast(1_GiB) == 1uLL << 30); + REQUIRE(static_cast(1_TiB) == 1uLL << 40); + REQUIRE(static_cast(1_PiB) == 1uLL << 50); + REQUIRE(static_cast(1_EiB) == 1uLL << 60); + + REQUIRE(static_cast(1_kB) == 1'000); + REQUIRE(static_cast(1_MB) == 1'000'000); + REQUIRE(static_cast(1_GB) == 1'000'000'000); + REQUIRE(static_cast(1_TB) == 1'000'000'000'000); + REQUIRE(static_cast(1_PB) == 1'000'000'000'000'000); + REQUIRE(static_cast(1_EB) == 1'000'000'000'000'000'000); } \ No newline at end of file