@@ -61,12 +61,17 @@ class CharSequenceExtensionsTest {
61
61
62
62
@Test
63
63
fun codePointCount () {
64
+ assertEquals(0 , " " .codePointCount())
64
65
assertEquals(0 , " " .codePointCount(beginIndex = 0 , endIndex = 0 ))
65
66
assertEquals(0 , " abc" .codePointCount(beginIndex = 1 , endIndex = 1 ))
66
67
68
+ assertEquals(3 , " abc" .codePointCount())
67
69
assertEquals(3 , " abc" .codePointCount(beginIndex = 0 , endIndex = 3 ))
70
+ assertEquals(2 , " a\uFFFF " .codePointCount())
68
71
assertEquals(2 , " a\uFFFF " .codePointCount(beginIndex = 0 , endIndex = 2 ))
72
+ assertEquals(1 , " \uD83E\uDD95 " .codePointCount())
69
73
assertEquals(1 , " \uD83E\uDD95 " .codePointCount(beginIndex = 0 , endIndex = 2 ))
74
+ assertEquals(2 , " \uD83E\uDD95\uD83E\uDD96 " .codePointCount())
70
75
assertEquals(2 , " \uD83E\uDD95\uD83E\uDD96 " .codePointCount(beginIndex = 0 , endIndex = 4 ))
71
76
72
77
assertEquals(2 , " abc" .codePointCount(beginIndex = 1 , endIndex = 3 ))
@@ -80,7 +85,9 @@ class CharSequenceExtensionsTest {
80
85
81
86
@Test
82
87
fun codePointCount_with_unmatched_surrogates () {
88
+ assertEquals(2 , " \uDD95\uD83E " .codePointCount())
83
89
assertEquals(2 , " \uDD95\uD83E " .codePointCount(beginIndex = 0 , endIndex = 2 ))
90
+ assertEquals(3 , " \uDD95\uD83E\uDD95\uD83E " .codePointCount())
84
91
assertEquals(3 , " \uDD95\uD83E\uDD95\uD83E " .codePointCount(beginIndex = 0 , endIndex = 4 ))
85
92
86
93
assertEquals(1 , " \uDD95\uD83E " .codePointCount(beginIndex = 1 , endIndex = 2 ))
0 commit comments