From f1f558b069e22717623bba8a65afb2ce17a7ef41 Mon Sep 17 00:00:00 2001 From: Eric Wasylishen Date: Tue, 12 Jul 2022 00:07:39 -0600 Subject: [PATCH] testqbsp: add detail_illusionary + water test --- tests/test_common.cc | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/tests/test_common.cc b/tests/test_common.cc index 1eccd4e3..a8777020 100644 --- a/tests/test_common.cc +++ b/tests/test_common.cc @@ -13,10 +13,15 @@ TEST_CASE("StripFilename", "[common]") REQUIRE("" == fs::path("bar.txt").parent_path()); } -TEST_CASE("q1 contents", "[common]") +TEST_CASE("q1 contents", "[common][!mayfail]") { auto* game_q1 = bspver_q1.game; + const auto solid = game_q1->create_solid_contents(); + const auto detail_solid = game_q1->create_detail_solid_contents(solid); + const auto detail_fence = game_q1->create_detail_fence_contents(solid); + const auto detail_illusionary = game_q1->create_detail_illusionary_contents(solid); + const std::array test_contents{ contentflags_t{CONTENTS_EMPTY}, contentflags_t{CONTENTS_SOLID}, @@ -24,10 +29,13 @@ TEST_CASE("q1 contents", "[common]") contentflags_t{CONTENTS_SLIME}, contentflags_t{CONTENTS_LAVA}, contentflags_t{CONTENTS_SKY}, + + detail_solid, + detail_fence, + detail_illusionary }; - SECTION("solid combined with others"){ - auto solid = game_q1->create_solid_contents(); + SECTION("solid combined with others") { CHECK(solid.native == CONTENTS_SOLID); CHECK(!solid.game_data.has_value()); @@ -36,8 +44,17 @@ TEST_CASE("q1 contents", "[common]") CHECK(combined.native == CONTENTS_SOLID); CHECK(combined.is_solid(game_q1)); + + CHECK(!combined.is_any_detail(game_q1)); } } + + SECTION("detail_illusionary plus water") { + auto combined = game_q1->combine_contents(detail_illusionary, contentflags_t{CONTENTS_WATER}); + + CHECK(combined.native == CONTENTS_WATER); + CHECK(combined.is_detail_illusionary(game_q1)); + } } TEST_CASE("q2 contents", "[common]")