From 179e1de50715bbb99bac15a5d38b34275106ea67 Mon Sep 17 00:00:00 2001 From: Ioannis Tzavaras Date: Tue, 31 Mar 2026 18:38:18 +0300 Subject: tests: add unit tests for match engine types (#13903) * tests: add unit tests for match engine types * clang-format: fix formatting in TagMatchEngine test --- tests/desktop/rule/matchEngine/IntMatchEngine.cpp | 52 +++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 tests/desktop/rule/matchEngine/IntMatchEngine.cpp (limited to 'tests/desktop/rule/matchEngine/IntMatchEngine.cpp') diff --git a/tests/desktop/rule/matchEngine/IntMatchEngine.cpp b/tests/desktop/rule/matchEngine/IntMatchEngine.cpp new file mode 100644 index 00000000..a5fb13ea --- /dev/null +++ b/tests/desktop/rule/matchEngine/IntMatchEngine.cpp @@ -0,0 +1,52 @@ +#include + +#include + +using namespace Desktop::Rule; + +TEST(IntMatchEngine, positiveInteger) { + CIntMatchEngine engine("42"); + EXPECT_TRUE(engine.match(42)); + EXPECT_FALSE(engine.match(41)); + EXPECT_FALSE(engine.match(0)); +} + +TEST(IntMatchEngine, zero) { + CIntMatchEngine engine("0"); + EXPECT_TRUE(engine.match(0)); + EXPECT_FALSE(engine.match(1)); +} + +TEST(IntMatchEngine, negativeInteger) { + CIntMatchEngine engine("-5"); + EXPECT_TRUE(engine.match(-5)); + EXPECT_FALSE(engine.match(5)); +} + +TEST(IntMatchEngine, invalidStringDefaultsToZero) { + CIntMatchEngine engine("abc"); + EXPECT_TRUE(engine.match(0)); + EXPECT_FALSE(engine.match(1)); +} + +TEST(IntMatchEngine, emptyStringDefaultsToZero) { + CIntMatchEngine engine(""); + EXPECT_TRUE(engine.match(0)); + EXPECT_FALSE(engine.match(1)); +} + +TEST(IntMatchEngine, leadingWhitespace) { + CIntMatchEngine engine(" 123"); + EXPECT_TRUE(engine.match(123)); +} + +TEST(IntMatchEngine, trailingNonDigits) { + CIntMatchEngine engine("123abc"); + EXPECT_TRUE(engine.match(123)); +} + +TEST(IntMatchEngine, largeValue) { + CIntMatchEngine engine("999999"); + EXPECT_TRUE(engine.match(999999)); + EXPECT_FALSE(engine.match(0)); +} -- cgit v1.2.3