123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #include <AK/TestSuite.h>
- #include <AK/String.h>
- TEST_CASE(construct_empty)
- {
- EXPECT(StringView().is_null());
- EXPECT(StringView().is_empty());
- EXPECT(!StringView().characters_without_null_termination());
- EXPECT_EQ(StringView().length(), 0);
- }
- TEST_CASE(view_literal)
- {
- const char* truth = "cats rule dogs drool";
- StringView view(truth);
- EXPECT_EQ(view.is_null(), false);
- EXPECT_EQ(view.characters_without_null_termination(), truth);
- EXPECT_EQ(view, view);
- EXPECT_EQ(view, truth);
- }
- TEST_CASE(compare_views)
- {
- String foo1 = "foo";
- String foo2 = "foo";
- auto view1 = foo1.view();
- auto view2 = foo2.view();
- EXPECT_EQ(view1, view2);
- EXPECT_EQ(view1, foo1);
- EXPECT_EQ(view1, foo2);
- EXPECT_EQ(view1, "foo");
- }
- TEST_CASE(starts_with)
- {
- String test_string = "ABCDEF";
- StringView test_string_view = test_string.view();
- EXPECT(test_string_view.starts_with("AB"));
- EXPECT(test_string_view.starts_with("ABCDEF"));
- EXPECT(!test_string_view.starts_with("DEF"));
- }
- TEST_MAIN(StringView)
|