1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 12:17:44 +00:00

AK+Everywhere: Consolidate String::index_of() and String::find()

We had two functions for doing mostly the same thing. Combine both
of them into String::find() and use that everywhere.

Also add some tests to cover basic behavior.
This commit is contained in:
Andreas Kling 2021-05-24 11:50:46 +02:00
parent 875a2cbb71
commit de395a3df2
12 changed files with 36 additions and 30 deletions

View file

@ -255,3 +255,19 @@ TEST_CASE(sprintf)
EXPECT_EQ(String(buf1), String("+12"));
EXPECT_EQ(String(buf2), String("-12"));
}
TEST_CASE(find)
{
String a = "foobarbar";
EXPECT_EQ(a.find("bar"sv), Optional<size_t> { 3 });
EXPECT_EQ(a.find("baz"sv), Optional<size_t> {});
EXPECT_EQ(a.find("bar"sv, 4), Optional<size_t> { 6 });
EXPECT_EQ(a.find("bar"sv, 9), Optional<size_t> {});
EXPECT_EQ(a.find('f'), Optional<size_t> { 0 });
EXPECT_EQ(a.find('x'), Optional<size_t> {});
EXPECT_EQ(a.find('f', 1), Optional<size_t> {});
EXPECT_EQ(a.find('b'), Optional<size_t> { 3 });
EXPECT_EQ(a.find('b', 4), Optional<size_t> { 6 });
EXPECT_EQ(a.find('b', 9), Optional<size_t> {});
}