From 81d02741a2d4159400803e98f429be8e74b6812a Mon Sep 17 00:00:00 2001 From: DNKpp Date: Tue, 25 Jun 2024 21:13:07 +0200 Subject: [PATCH] test: add cases for ControlPolicy::sequenceCount --- test/unit-tests/ControlPolicy.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/test/unit-tests/ControlPolicy.cpp b/test/unit-tests/ControlPolicy.cpp index 5f6a7c34..a6866685 100644 --- a/test/unit-tests/ControlPolicy.cpp +++ b/test/unit-tests/ControlPolicy.cpp @@ -80,6 +80,8 @@ TEST_CASE( sequence::detail::Config<>{} }; + REQUIRE(0u == policy.sequenceCount); + for ([[maybe_unused]] auto i : std::views::iota(0, min)) { REQUIRE(!std::as_const(policy).is_satisfied()); @@ -149,6 +151,8 @@ TEST_CASE( } }; + REQUIRE(1u == policy->sequenceCount); + REQUIRE(!std::as_const(*policy).is_satisfied()); REQUIRE_THAT( std::as_const(*policy).state(), @@ -201,6 +205,8 @@ TEST_CASE( } }; + REQUIRE(2u == policy->sequenceCount); + REQUIRE(!std::as_const(*policy).is_satisfied()); REQUIRE_THAT( std::as_const(*policy).state(), @@ -281,6 +287,8 @@ TEST_CASE( expect::in_sequence(sequence) }; + REQUIRE(1u == policy.sequenceCount); + for ([[maybe_unused]] auto i : std::views::iota(0, min)) { REQUIRE(!std::as_const(policy).is_satisfied()); @@ -360,6 +368,8 @@ TEST_CASE( expect::in_sequence(sequence) }; + REQUIRE(1u == policy.sequenceCount); + for ([[maybe_unused]] const int i : std::views::iota(0, count)) { REQUIRE(!std::as_const(policy).is_satisfied()); @@ -397,12 +407,16 @@ TEST_CASE( expect::in_sequence(sequence) }; + REQUIRE(1u == policy1.sequenceCount); + const auto count2 = GENERATE(range(1, 5)); ControlPolicy policy2{ expect::times(count2), expect::in_sequence(sequence) }; + REQUIRE(1u == policy2.sequenceCount); + SECTION("When first expection is satisfied, then the second one becomes applicable.") { REQUIRE(!std::as_const(policy1).is_satisfied()); @@ -503,10 +517,13 @@ TEST_CASE( expect::once(), expect::in_sequences(sequence1, sequence2) }; + REQUIRE(2u == policy1.sequenceCount); + ControlPolicy policy2{ expect::once(), expect::in_sequence(sequence2) }; + REQUIRE(1u == policy2.sequenceCount); REQUIRE(!policy1.is_satisfied()); REQUIRE_THAT( @@ -596,14 +613,19 @@ TEST_CASE( expect::once(), expect::in_sequence(sequence1) }; + REQUIRE(1u == policy1.sequenceCount); + ControlPolicy policy2{ expect::once(), expect::in_sequence(sequence2) }; + REQUIRE(1u == policy2.sequenceCount); + ControlPolicy policy3{ expect::once(), expect::in_sequences(sequence1, sequence2) }; + REQUIRE(2u == policy3.sequenceCount); REQUIRE(!policy1.is_satisfied()); REQUIRE_THAT( @@ -778,6 +800,7 @@ TEST_CASE( expect::at_most(1), expect::in_sequence(sequence) }; + CHECK(1u == policy1.sequenceCount); CHECK(policy1.is_satisfied()); CHECK_THAT( std::as_const(policy1).state(), @@ -795,6 +818,7 @@ TEST_CASE( expect::at_most(1), expect::in_sequence(sequence) }; + CHECK(1u == policy2.sequenceCount); CHECK(policy2.is_satisfied()); CHECK_THAT( std::as_const(policy2).state(), @@ -906,6 +930,7 @@ TEST_CASE( expect::at_most(1), expect::in_sequence(sequence) }; + CHECK(1u == policy1.sequenceCount); CHECK(policy1.is_satisfied()); CHECK_THAT( std::as_const(policy1).state(), @@ -923,6 +948,7 @@ TEST_CASE( expect::at_most(1), expect::in_sequence(sequence) }; + CHECK(1u == policy2.sequenceCount); CHECK(policy2.is_satisfied()); CHECK_THAT( std::as_const(policy2).state(),