Throw IOOB on invalid index in JS StringBuilder.get to adhere contract

This commit is contained in:
Abduqodiri Qurbonzoda
2019-03-13 22:00:01 +03:00
parent 814d6cf39c
commit a369496aca
2 changed files with 14 additions and 1 deletions
@@ -75,4 +75,16 @@ class StringBuilderTest {
assertTrue(sb.isEmpty())
assertEquals("test", s)
}
@Test fun get() {
val sb = StringBuilder()
sb.append("test")
assertEquals('t', sb[0])
assertEquals('e', sb[1])
assertEquals('s', sb[2])
assertEquals('t', sb[3])
assertFailsWith<IndexOutOfBoundsException> { assertEquals('t', sb[-1]) }
assertFailsWith<IndexOutOfBoundsException> { assertEquals('t', sb[4]) }
}
}