diff --git a/apps/openmw_tests/mwgui/weightedsearch.cpp b/apps/openmw_tests/mwgui/weightedsearch.cpp index cca903c819..3a7638cce2 100644 --- a/apps/openmw_tests/mwgui/weightedsearch.cpp +++ b/apps/openmw_tests/mwgui/weightedsearch.cpp @@ -1,3 +1,5 @@ +#include "gmock/gmock.h" +#include #include #include @@ -22,10 +24,28 @@ namespace MWGui { EXPECT_EQ(weightedSearch(std::string("xyyzzz"), std::vector{ "x", "y", "z" }), 3); } + TEST(MWGuiWeightedSearchTests, weightedSearchShouldBeCaseInsensitive) + { + EXPECT_EQ(weightedSearch(std::string("XYZ"), std::vector{ "x", "y", "z" }), 3); + } TEST(MWGuiWeightedSearchTests, generatePatternArrayShouldReturnEmptyArrayIfInputIsEmptyOrOnlySpaces) { EXPECT_THAT(generatePatternArray(std::string("")), testing::IsEmpty()); EXPECT_THAT(generatePatternArray(std::string(10, ' ')), testing::IsEmpty()); } + TEST(MWGuiWeightedSearchTests, generatePatternArrayBasicSplittingTest) + { + std::vector expected = { "x", "y", "z" }; + std::sort(expected.begin(), expected.end()); + + std::vector output1 = generatePatternArray(std::string("x y z")); + std::sort(output1.begin(), output1.end()); + + std::vector output2 = generatePatternArray(std::string(" x y z ")); + std::sort(output2.begin(), output2.end()); + + EXPECT_EQ(output1, expected); + EXPECT_EQ(output2, expected); + } } }