Index: tests/StringTest.cpp |
diff --git a/tests/StringTest.cpp b/tests/StringTest.cpp |
index f621dc96aff6c56f080351623b50b02bed1f08ca..93ad60e66c2f4680992542617470a3b71ab70694 100644 |
--- a/tests/StringTest.cpp |
+++ b/tests/StringTest.cpp |
@@ -201,9 +201,62 @@ DEF_TEST(String_SkStrSplit, r) { |
results.reset(); |
SkStrSplit("\n", "\n", &results); |
- REPORTER_ASSERT(r, results.count() == 1); |
+ REPORTER_ASSERT(r, results.count() == 0); |
scroggo
2015/12/07 13:27:52
Is it okay that this default behavior changed? Mig
Kimmo Kinnunen
2015/12/08 09:07:51
There's only few places where SkStrSplit is called
|
results.reset(); |
SkStrSplit("", "\n", &results); |
REPORTER_ASSERT(r, results.count() == 0); |
+ |
+ results.reset(); |
+ SkStrSplit("a", "\n", &results); |
+ REPORTER_ASSERT(r, results.count() == 1); |
+ REPORTER_ASSERT(r, results[0].equals("a")); |
+} |
+DEF_TEST(String_SkStrSplit_All, r) { |
+ SkTArray<SkString> results; |
+ SkStrSplit("a-_b_c-dee--f-_-_-g-", "-_", kAll_SkStrSplitResult, &results); |
+ REPORTER_ASSERT(r, results.count() == 13); |
+ REPORTER_ASSERT(r, results[0].equals("a")); |
+ REPORTER_ASSERT(r, results[1].equals("")); |
+ REPORTER_ASSERT(r, results[2].equals("b")); |
+ REPORTER_ASSERT(r, results[3].equals("c")); |
+ REPORTER_ASSERT(r, results[4].equals("dee")); |
+ REPORTER_ASSERT(r, results[5].equals("")); |
+ REPORTER_ASSERT(r, results[6].equals("f")); |
+ REPORTER_ASSERT(r, results[7].equals("")); |
+ REPORTER_ASSERT(r, results[8].equals("")); |
+ REPORTER_ASSERT(r, results[9].equals("")); |
+ REPORTER_ASSERT(r, results[10].equals("")); |
+ REPORTER_ASSERT(r, results[11].equals("g")); |
+ REPORTER_ASSERT(r, results[12].equals("")); |
+ |
+ results.reset(); |
+ SkStrSplit("\n", "\n", kAll_SkStrSplitResult, &results); |
+ REPORTER_ASSERT(r, results.count() == 2); |
+ REPORTER_ASSERT(r, results[0].equals("")); |
+ REPORTER_ASSERT(r, results[1].equals("")); |
+ |
+ results.reset(); |
+ SkStrSplit("", "\n", kAll_SkStrSplitResult, &results); |
+ REPORTER_ASSERT(r, results.count() == 0); |
+ |
+ results.reset(); |
+ SkStrSplit("a", "\n", kAll_SkStrSplitResult, &results); |
+ REPORTER_ASSERT(r, results.count() == 1); |
+ REPORTER_ASSERT(r, results[0].equals("a")); |
+ |
+ results.reset(); |
+ SkStrSplit(",,", ",", kAll_SkStrSplitResult, &results); |
+ REPORTER_ASSERT(r, results.count() == 3); |
+ REPORTER_ASSERT(r, results[0].equals("")); |
+ REPORTER_ASSERT(r, results[1].equals("")); |
+ REPORTER_ASSERT(r, results[2].equals("")); |
+ |
+ results.reset(); |
+ SkStrSplit(",a,b,", ",", kAll_SkStrSplitResult, &results); |
+ REPORTER_ASSERT(r, results.count() == 4); |
+ REPORTER_ASSERT(r, results[0].equals("")); |
+ REPORTER_ASSERT(r, results[1].equals("a")); |
+ REPORTER_ASSERT(r, results[2].equals("b")); |
+ REPORTER_ASSERT(r, results[3].equals("")); |
} |