From c80bc1e4b2ea10c2e871091f996d19a18218f231 Mon Sep 17 00:00:00 2001 From: Martin Ridgers Date: Mon, 25 Oct 2021 09:39:31 +0200 Subject: Cross-platform string comparison helper plus tests --- zencore/string.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'zencore/string.cpp') diff --git a/zencore/string.cpp b/zencore/string.cpp index 34ea0a87d..35dfcfcf3 100644 --- a/zencore/string.cpp +++ b/zencore/string.cpp @@ -951,6 +951,18 @@ TEST_CASE("string") CHECK_EQ(ToLower("TE%St"sv), "te%st"sv); } + SUBCASE("StrCaseCompare") + { + CHECK(StrCaseCompare("foo", "FoO") == 0); + CHECK(StrCaseCompare("Bar", "bAs") < 0); + CHECK(StrCaseCompare("bAr", "Bas") < 0); + CHECK(StrCaseCompare("BBr", "Bar") > 0); + CHECK(StrCaseCompare("Bbr", "BAr") > 0); + CHECK(StrCaseCompare("foo", "FoO", 3) == 0); + CHECK(StrCaseCompare("Bar", "bAs", 3) < 0); + CHECK(StrCaseCompare("BBr", "Bar", 2) > 0); + } + SUBCASE("ForEachStrTok") { const auto Tokens = "here,is,my,different,tokens"sv; -- cgit v1.2.3