[libc-commits] [libc] [libc] Add `shm_open/shm_unlink` (PR #84974)
Nick Desaulniers via libc-commits
libc-commits at lists.llvm.org
Fri Mar 15 09:41:35 PDT 2024
================
@@ -174,3 +174,112 @@ TEST(LlvmLibcStringViewTest, FindLastOf) {
ASSERT_EQ(Empty1.find_last_of('a', 0), string_view::npos);
ASSERT_EQ(Empty1.find_last_of('a', 123), string_view::npos);
}
+
+TEST(LlvmLibcStringViewTest, FindFirstNotOf) {
+ string_view Tmp("abada");
+
+ EXPECT_EQ(Tmp.find_first_not_of('a'), size_t(1));
+ EXPECT_EQ(Tmp.find_first_not_of('a', 123), string_view::npos);
+ EXPECT_EQ(Tmp.find_first_not_of('a', 5), string_view::npos);
+ EXPECT_EQ(Tmp.find_first_not_of('a', 4), string_view::npos);
+ EXPECT_EQ(Tmp.find_first_not_of('a', 3), size_t(3));
+ EXPECT_EQ(Tmp.find_first_not_of('a', 2), size_t(3));
+ EXPECT_EQ(Tmp.find_first_not_of('a', 1), size_t(1));
+ EXPECT_EQ(Tmp.find_first_not_of('a', 0), size_t(1));
+
+ EXPECT_EQ(Tmp.find_first_not_of('b'), size_t(0));
+ EXPECT_EQ(Tmp.find_first_not_of('b', 123), string_view::npos);
+ EXPECT_EQ(Tmp.find_first_not_of('b', 5), string_view::npos);
+ EXPECT_EQ(Tmp.find_first_not_of('b', 4), size_t(4));
+ EXPECT_EQ(Tmp.find_first_not_of('b', 3), size_t(3));
+ EXPECT_EQ(Tmp.find_first_not_of('b', 2), size_t(2));
+ EXPECT_EQ(Tmp.find_first_not_of('b', 1), size_t(2));
+ EXPECT_EQ(Tmp.find_first_not_of('b', 0), size_t(0));
+
+ EXPECT_EQ(Tmp.find_first_not_of('d'), size_t(0));
+ EXPECT_EQ(Tmp.find_first_not_of('d', 123), string_view::npos);
+ EXPECT_EQ(Tmp.find_first_not_of('d', 5), string_view::npos);
+ EXPECT_EQ(Tmp.find_first_not_of('d', 4), size_t(4));
+ EXPECT_EQ(Tmp.find_first_not_of('d', 3), size_t(4));
+ EXPECT_EQ(Tmp.find_first_not_of('d', 2), size_t(2));
+ EXPECT_EQ(Tmp.find_first_not_of('d', 1), size_t(1));
+ EXPECT_EQ(Tmp.find_first_not_of('d', 0), size_t(0));
+
+ EXPECT_EQ(Tmp.find_first_not_of('e'), size_t(0));
+ EXPECT_EQ(Tmp.find_first_not_of('e', 123), string_view::npos);
+ EXPECT_EQ(Tmp.find_first_not_of('e', 5), string_view::npos);
+ EXPECT_EQ(Tmp.find_first_not_of('e', 4), size_t(4));
+ EXPECT_EQ(Tmp.find_first_not_of('e', 3), size_t(3));
+ EXPECT_EQ(Tmp.find_first_not_of('e', 2), size_t(2));
+ EXPECT_EQ(Tmp.find_first_not_of('e', 1), size_t(1));
+ EXPECT_EQ(Tmp.find_first_not_of('e', 0), size_t(0));
+
+ string_view Empty;
+ EXPECT_EQ(Empty.find_first_not_of('a'), string_view::npos);
+ EXPECT_EQ(Empty.find_first_not_of('a', 0), string_view::npos);
+ EXPECT_EQ(Empty.find_first_not_of('a', 123), string_view::npos);
+
+ string_view Empty1("");
+ EXPECT_EQ(Empty1.find_first_not_of('a'), string_view::npos);
+ EXPECT_EQ(Empty1.find_first_not_of('a', 0), string_view::npos);
+ EXPECT_EQ(Empty1.find_first_not_of('a', 123), string_view::npos);
+
+ string_view Full("aaaaaaa");
+ EXPECT_EQ(Full.find_first_not_of('a'), string_view::npos);
+ EXPECT_EQ(Full.find_first_not_of('a', 0), string_view::npos);
+ EXPECT_EQ(Full.find_first_not_of('a', 123), string_view::npos);
+
+ EXPECT_EQ(Full.find_first_not_of('b'), size_t(0));
+ EXPECT_EQ(Full.find_first_not_of('b', 0), size_t(0));
+ EXPECT_EQ(Full.find_first_not_of('b', 123), string_view::npos);
+}
+
+TEST(LlvmLibcStringViewTest, Contains) {
+ string_view Empty;
+ for (char c = 'a'; c < 'z'; ++c)
+ for (size_t i = 0; i < 256; ++i)
----------------
nickdesaulniers wrote:
why repeat this 256 times?
https://github.com/llvm/llvm-project/pull/84974
More information about the libc-commits
mailing list