| 32 | namespace { |
| 33 | |
| 34 | TEST(Utf8IsValid, String) { |
| 35 | EXPECT_TRUE(Utf8IsValid("")); |
| 36 | EXPECT_TRUE(Utf8IsValid("a")); |
| 37 | EXPECT_TRUE(Utf8IsValid("abc")); |
| 38 | EXPECT_TRUE(Utf8IsValid("\xd0\x96")); |
| 39 | EXPECT_TRUE(Utf8IsValid("\xd0\x96\xd0\x96")); |
| 40 | EXPECT_TRUE(Utf8IsValid( |
| 41 | "\xd0\xb1\xd1\x80\xd1\x8d\xd0\xb4-\xd0\x9b\xd0\x93\xd0\xa2\xd0\x9c")); |
| 42 | EXPECT_TRUE(Utf8IsValid("\xe2\x98\xba\xe2\x98\xbb\xe2\x98\xb9")); |
| 43 | EXPECT_TRUE(Utf8IsValid("a\ufffdb")); |
| 44 | EXPECT_TRUE(Utf8IsValid("\xf4\x8f\xbf\xbf")); |
| 45 | |
| 46 | EXPECT_FALSE(Utf8IsValid("\x42\xfa")); |
| 47 | EXPECT_FALSE(Utf8IsValid("\x42\xfa\x43")); |
| 48 | EXPECT_FALSE(Utf8IsValid("\xf4\x90\x80\x80")); |
| 49 | EXPECT_FALSE(Utf8IsValid("\xf7\xbf\xbf\xbf")); |
| 50 | EXPECT_FALSE(Utf8IsValid("\xfb\xbf\xbf\xbf\xbf")); |
| 51 | EXPECT_FALSE(Utf8IsValid("\xc0\x80")); |
| 52 | EXPECT_FALSE(Utf8IsValid("\xed\xa0\x80")); |
| 53 | EXPECT_FALSE(Utf8IsValid("\xed\xbf\xbf")); |
| 54 | } |
| 55 | |
| 56 | TEST(Utf8IsValid, Cord) { |
| 57 | EXPECT_TRUE(Utf8IsValid(absl::Cord(""))); |
nothing calls this directly
no test coverage detected