mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 10:47:35 +00:00
AK+Everywhere: Turn bool keep_empty to an enum in split* functions
This commit is contained in:
parent
f485db2501
commit
3e8b5ac920
44 changed files with 96 additions and 81 deletions
|
@ -233,7 +233,7 @@ TEST_CASE(split)
|
|||
EXPECT_EQ(parts[0], "a");
|
||||
EXPECT_EQ(parts[1], "b");
|
||||
|
||||
parts = test.split(' ', true);
|
||||
parts = test.split(' ', SplitBehavior::KeepEmpty);
|
||||
EXPECT_EQ(parts.size(), 5u);
|
||||
EXPECT_EQ(parts[0], "a");
|
||||
EXPECT_EQ(parts[1], "");
|
||||
|
@ -243,9 +243,9 @@ TEST_CASE(split)
|
|||
|
||||
test = "axxbx";
|
||||
EXPECT_EQ(test.split('x').size(), 2u);
|
||||
EXPECT_EQ(test.split('x', true).size(), 4u);
|
||||
EXPECT_EQ(test.split('x', SplitBehavior::KeepEmpty).size(), 4u);
|
||||
EXPECT_EQ(test.split_view('x').size(), 2u);
|
||||
EXPECT_EQ(test.split_view('x', true).size(), 4u);
|
||||
EXPECT_EQ(test.split_view('x', SplitBehavior::KeepEmpty).size(), 4u);
|
||||
}
|
||||
|
||||
TEST_CASE(builder_zero_initial_capacity)
|
||||
|
|
|
@ -143,26 +143,26 @@ TEST_CASE(split_view)
|
|||
{
|
||||
StringView test_string_view = "axxbxcxd"sv;
|
||||
EXPECT_EQ(test_string_view.split_view('x'), Vector({ "a"sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view('x', true), Vector({ "a"sv, ""sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view('x', SplitBehavior::KeepEmpty), Vector({ "a"sv, ""sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view("x"sv), Vector({ "a"sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view("x"sv, true), Vector({ "a"sv, ""sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view("x"sv, SplitBehavior::KeepEmpty), Vector({ "a"sv, ""sv, "b"sv, "c"sv, "d"sv }));
|
||||
|
||||
test_string_view = "axxbx"sv;
|
||||
EXPECT_EQ(test_string_view.split_view('x'), Vector({ "a"sv, "b"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view('x', true), Vector({ "a"sv, ""sv, "b"sv, ""sv }));
|
||||
EXPECT_EQ(test_string_view.split_view('x', SplitBehavior::KeepEmpty), Vector({ "a"sv, ""sv, "b"sv, ""sv }));
|
||||
EXPECT_EQ(test_string_view.split_view("x"sv), Vector({ "a"sv, "b"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view("x"sv, true), Vector({ "a"sv, ""sv, "b"sv, ""sv }));
|
||||
EXPECT_EQ(test_string_view.split_view("x"sv, SplitBehavior::KeepEmpty), Vector({ "a"sv, ""sv, "b"sv, ""sv }));
|
||||
|
||||
test_string_view = "axxbcxxdxx"sv;
|
||||
EXPECT_EQ(test_string_view.split_view("xx"sv), Vector({ "a"sv, "bc"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view("xx"sv, true), Vector({ "a"sv, "bc"sv, "d"sv, ""sv }));
|
||||
EXPECT_EQ(test_string_view.split_view("xx"sv, SplitBehavior::KeepEmpty), Vector({ "a"sv, "bc"sv, "d"sv, ""sv }));
|
||||
|
||||
test_string_view = "ax_b_cxd"sv;
|
||||
Function<bool(char)> predicate = [](char ch) { return ch == 'x' || ch == '_'; };
|
||||
EXPECT_EQ(test_string_view.split_view_if(predicate), Vector({ "a"sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view_if(predicate, true), Vector({ "a"sv, ""sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view_if(predicate, SplitBehavior::KeepEmpty), Vector({ "a"sv, ""sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view_if(predicate), Vector({ "a"sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view_if(predicate, true), Vector({ "a"sv, ""sv, "b"sv, "c"sv, "d"sv }));
|
||||
EXPECT_EQ(test_string_view.split_view_if(predicate, SplitBehavior::KeepEmpty), Vector({ "a"sv, ""sv, "b"sv, "c"sv, "d"sv }));
|
||||
}
|
||||
|
||||
TEST_CASE(constexpr_stuff)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue