From 2b699f8f0766c5cab03d40a6143a0745847d278d Mon Sep 17 00:00:00 2001 From: Ilya Gorbunov Date: Thu, 1 Nov 2018 05:19:52 +0300 Subject: [PATCH] Add a test for CharSequence/String.regionMatches --- libraries/stdlib/test/text/StringTest.kt | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/libraries/stdlib/test/text/StringTest.kt b/libraries/stdlib/test/text/StringTest.kt index e4c467cf0f3..a163296af67 100644 --- a/libraries/stdlib/test/text/StringTest.kt +++ b/libraries/stdlib/test/text/StringTest.kt @@ -96,6 +96,24 @@ class StringTest { assertEquals("", ns.orEmpty()) } + @Test fun regionMatchesForCharSequence() = withTwoCharSequenceArgs { arg1, arg2 -> + assertTrue(arg1("abcd").regionMatches(1, arg2("debc"), 2, 2)) + assertFalse(arg1("abcd").regionMatches(1, arg2("DEBc"), 2, 2, ignoreCase = false)) + assertTrue(arg1("abcd").regionMatches(1, arg2("DEBc"), 2, 2, ignoreCase = true)) + + assertFalse(arg1("abcd").regionMatches(3, arg2(""), 2, 1)) + assertTrue(arg1("abcd").regionMatches(4, arg2(""), 0, 0)) + } + + @Test fun regionMatchesForString() { + assertTrue("abcd".regionMatches(1, "debc", 2, 2)) + assertFalse("abcd".regionMatches(1, "DEBc", 2, 2, ignoreCase = false)) + assertTrue("abcd".regionMatches(1, "DEBc", 2, 2, ignoreCase = true)) + + assertFalse("abcd".regionMatches(3, "", 2, 1)) + assertTrue("abcd".regionMatches(4, "", 0, 0)) + } + @Test fun startsWithString() { assertTrue("abcd".startsWith("ab")) assertTrue("abcd".startsWith("abcd"))