Skip to content

Commit 10d198b

Browse files
authored
[libc] test wcstok() "subsequent searches" behavior.
1 parent 4fc9801 commit 10d198b

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

libc/test/src/wchar/wcstok_test.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ TEST(LlvmLibcWCSTokReentrantTest, NoTokenFound) {
1919
// Another call to ensure that 'reserve' is not in a bad state.
2020
ASSERT_EQ(LIBC_NAMESPACE::wcstok(empty, L"", &reserve), nullptr);
2121
ASSERT_EQ(LIBC_NAMESPACE::wcstok(nullptr, L"", &reserve), nullptr);
22+
// Subsequent searches still return nullptr.
23+
ASSERT_EQ(LIBC_NAMESPACE::wcstok(nullptr, L"", &reserve), nullptr);
2224
}
2325
{ // Empty source and single character delimiter string.
2426
wchar_t empty[] = L"";
@@ -27,6 +29,8 @@ TEST(LlvmLibcWCSTokReentrantTest, NoTokenFound) {
2729
// Another call to ensure that 'reserve' is not in a bad state.
2830
ASSERT_EQ(LIBC_NAMESPACE::wcstok(empty, L"_", &reserve), nullptr);
2931
ASSERT_EQ(LIBC_NAMESPACE::wcstok(nullptr, L"_", &reserve), nullptr);
32+
// Subsequent searches still return nullptr.
33+
ASSERT_EQ(LIBC_NAMESPACE::wcstok(nullptr, L"_", &reserve), nullptr);
3034
}
3135
{ // Same character source and delimiter string.
3236
wchar_t single[] = L"_";
@@ -35,6 +39,8 @@ TEST(LlvmLibcWCSTokReentrantTest, NoTokenFound) {
3539
// Another call to ensure that 'reserve' is not in a bad state.
3640
ASSERT_EQ(LIBC_NAMESPACE::wcstok(single, L"_", &reserve), nullptr);
3741
ASSERT_EQ(LIBC_NAMESPACE::wcstok(nullptr, L"_", &reserve), nullptr);
42+
// Subsequent searches still return nullptr.
43+
ASSERT_EQ(LIBC_NAMESPACE::wcstok(nullptr, L"_", &reserve), nullptr);
3844
}
3945
{ // Multiple character source and single character delimiter string.
4046
wchar_t multiple[] = L"1,2";
@@ -51,6 +57,8 @@ TEST(LlvmLibcWCSTokReentrantTest, NoTokenFound) {
5157
ASSERT_TRUE(tok[2] == L'2');
5258
ASSERT_TRUE(tok[3] == L'\0');
5359
ASSERT_EQ(LIBC_NAMESPACE::wcstok(nullptr, L":", &reserve), nullptr);
60+
// Subsequent searches still return nullptr.
61+
ASSERT_EQ(LIBC_NAMESPACE::wcstok(nullptr, L":", &reserve), nullptr);
5462
}
5563
}
5664

0 commit comments

Comments
 (0)