1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 21:18:14 +00:00

AK: Implement method to convert a String/StringView to title case

This implementation preserves consecutive spaces in the orginal string.
This commit is contained in:
Timothy Flynn 2021-08-26 13:55:41 -04:00 committed by Linus Groh
parent d2af27d2d0
commit 262e412634
7 changed files with 43 additions and 0 deletions

View file

@ -304,3 +304,17 @@ TEST_CASE(to_snakecase)
EXPECT_EQ(AK::StringUtils::to_snakecase("FBar"), "f_bar");
EXPECT_EQ(AK::StringUtils::to_snakecase("FooB"), "foo_b");
}
TEST_CASE(to_titlecase)
{
EXPECT_EQ(AK::StringUtils::to_titlecase(""sv), ""sv);
EXPECT_EQ(AK::StringUtils::to_titlecase("f"sv), "F"sv);
EXPECT_EQ(AK::StringUtils::to_titlecase("foobar"sv), "Foobar"sv);
EXPECT_EQ(AK::StringUtils::to_titlecase("Foobar"sv), "Foobar"sv);
EXPECT_EQ(AK::StringUtils::to_titlecase("FOOBAR"sv), "Foobar"sv);
EXPECT_EQ(AK::StringUtils::to_titlecase("foo bar"sv), "Foo Bar"sv);
EXPECT_EQ(AK::StringUtils::to_titlecase("foo bAR"sv), "Foo Bar"sv);
EXPECT_EQ(AK::StringUtils::to_titlecase("foo bar"sv), "Foo Bar"sv);
EXPECT_EQ(AK::StringUtils::to_titlecase("foo bar"sv), "Foo Bar"sv);
EXPECT_EQ(AK::StringUtils::to_titlecase(" foo bar "sv), " Foo Bar "sv);
}