more features on String

This commit is contained in:
Metehan Tuncbilek
2024-10-18 18:36:32 +03:00
parent 022cd2093f
commit dfa064399e
2 changed files with 206 additions and 15 deletions

View File

@@ -215,3 +215,67 @@ TEST_CASE("Clear")
str1.Clear();
REQUIRE(str1.Empty());
}
TEST_CASE("Split")
{
String str1("Hello,World");
auto split = str1.Split(",");
REQUIRE(split.size() == 2);
REQUIRE(split[0] == "Hello");
REQUIRE(split[1] == "World");
}
TEST_CASE("SplitAtLastOccurrence")
{
String str1 = "Hello,World,Georg";
auto split = str1.SplitAtLastOccurrence(",");
REQUIRE(split.first == "Hello,World");
REQUIRE(split.second == "Georg");
}
TEST_CASE("SplitAtFirstOccurrence")
{
String str1 = "Hello,World,Georg";
auto split = str1.SplitAtFirstOccurrence(",");
REQUIRE(split.first == "Hello");
REQUIRE(split.second == "World,Georg");
}
TEST_CASE("SplitAsStringViews")
{
String str1("Hello,World");
auto split = str1.SplitAsStringViews(",");
REQUIRE(split.size() == 2);
REQUIRE(split[0] == "Hello");
REQUIRE(split[1] == "World");
}
TEST_CASE("SplitAtFirstOccurrenceAsStringViews")
{
String str1 = "Hello,World,Georg";
auto split = str1.SplitAtFirstOccurenceAsStringViews(",");
REQUIRE(split.first == "Hello");
REQUIRE(split.second == "World,Georg");
}
TEST_CASE("SplitAtLastOccurenceAsStringViews")
{
String str1 = "Hello,World,Georg";
auto split = str1.SplitAtLastOccurenceAsStringViews(",");
REQUIRE(split.first == "Hello,World");
REQUIRE(split.second == "Georg");
}
TEST_CASE("OctToInt")
{
String str1("47");
REQUIRE(str1.OctToInt() == 39);
REQUIRE(String::OctToInt("552") == 362);
}
TEST_CASE("HexToInt")
{
String str1("2A");
REQUIRE(str1.HexToInt() == 42);
REQUIRE(String::HexToInt("FF") == 255);
}