Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(615)

Unified Diff: tests/corelib/string_test.dart

Issue 17281002: Make String.startsWith take an optional start index. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Address review comments. Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sdk/lib/core/string.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/corelib/string_test.dart
diff --git a/tests/corelib/string_test.dart b/tests/corelib/string_test.dart
index 451973364d1a71d934a72439806f462fb2bc36cf..aeb00c32f368957e853a8d99e118b0e327df38b3 100644
--- a/tests/corelib/string_test.dart
+++ b/tests/corelib/string_test.dart
@@ -127,6 +127,29 @@ class StringTest {
Expect.isTrue("".startsWith(""));
Expect.isFalse("".startsWith("s"));
+ Expect.isFalse("strstr".startsWith("s", 1));
+ Expect.isFalse("strstr".startsWith("s", 2));
+ Expect.isTrue("strstr".startsWith("s", 3));
+ Expect.isFalse("strstr".startsWith("s", 4));
+
+ Expect.isFalse("strstr".startsWith("st", 1));
+ Expect.isFalse("strstr".startsWith("st", 2));
+ Expect.isTrue("strstr".startsWith("st", 3));
+ Expect.isFalse("strstr".startsWith("st", 4));
+
+ Expect.isFalse("strstr".startsWith("str", 1));
+ Expect.isFalse("strstr".startsWith("str", 2));
+ Expect.isTrue("strstr".startsWith("str", 3));
+ Expect.isFalse("strstr".startsWith("str", 4));
+
+ Expect.isTrue("str".startsWith("", 0));
+ Expect.isTrue("str".startsWith("", 1));
+ Expect.isTrue("str".startsWith("", 2));
+ Expect.isTrue("str".startsWith("", 3));
+
+ Expect.throws(() => "str".startsWith("", -1));
+ Expect.throws(() => "str".startsWith("", 4));
+
var regexp = new RegExp("s(?:tr?)?");
Expect.isTrue("s".startsWith(regexp));
Expect.isTrue("st".startsWith(regexp));
@@ -140,6 +163,30 @@ class StringTest {
Expect.isTrue("".startsWith(new RegExp("")));
Expect.isTrue("".startsWith(new RegExp("a?")));
+
+ Expect.isFalse("strstr".startsWith(regexp, 1));
+ Expect.isFalse("strstr".startsWith(regexp, 2));
+ Expect.isTrue("strstr".startsWith(regexp, 3));
+ Expect.isFalse("strstr".startsWith(regexp, 4));
+
+ Expect.isTrue("str".startsWith(new RegExp(""), 0));
+ Expect.isTrue("str".startsWith(new RegExp(""), 1));
+ Expect.isTrue("str".startsWith(new RegExp(""), 2));
+ Expect.isTrue("str".startsWith(new RegExp(""), 3));
+ Expect.isTrue("str".startsWith(new RegExp("a?"), 0));
+ Expect.isTrue("str".startsWith(new RegExp("a?"), 1));
+ Expect.isTrue("str".startsWith(new RegExp("a?"), 2));
+ Expect.isTrue("str".startsWith(new RegExp("a?"), 3));
+
+ Expect.throws(() => "str".startsWith(regexp, -1));
+ Expect.throws(() => "str".startsWith(regexp, 4));
+
+ regexp = new RegExp("^str");
+ Expect.isTrue("strstr".startsWith(regexp));
+ Expect.isTrue("strstr".startsWith(regexp, 0));
+ Expect.isFalse("strstr".startsWith(regexp, 1));
+ Expect.isFalse("strstr".startsWith(regexp, 2));
+ Expect.isFalse("strstr".startsWith(regexp, 3)); // Second "str" isn't at ^.
}
static testIndexOf() {
« no previous file with comments | « sdk/lib/core/string.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698