diff --git a/js/js.tests/test/org/jetbrains/k2js/test/semantics/StandardClassesTest.java b/js/js.tests/test/org/jetbrains/k2js/test/semantics/StandardClassesTest.java index 8aed08084d8..24f3ea5f355 100644 --- a/js/js.tests/test/org/jetbrains/k2js/test/semantics/StandardClassesTest.java +++ b/js/js.tests/test/org/jetbrains/k2js/test/semantics/StandardClassesTest.java @@ -62,4 +62,8 @@ public final class StandardClassesTest extends SingleFileTranslationTest { public void testArrayFactoryMethods() throws Exception { checkFooBoxIsOk(); } + + public void testStringBuilder() throws Exception { + checkFooBoxIsOk(); + } } \ No newline at end of file diff --git a/js/js.translator/testFiles/kotlin_lib.js b/js/js.translator/testFiles/kotlin_lib.js index 191c57320b9..63ff1646dd7 100644 --- a/js/js.translator/testFiles/kotlin_lib.js +++ b/js/js.translator/testFiles/kotlin_lib.js @@ -510,6 +510,7 @@ String.prototype.contains = function (s) { }, { append:function (obj) { this.string = this.string + obj.toString(); + return this; }, toString:function () { return this.string; diff --git a/js/js.translator/testFiles/standardClasses/cases/stringBuilder.kt b/js/js.translator/testFiles/standardClasses/cases/stringBuilder.kt new file mode 100644 index 00000000000..6fa8db32f82 --- /dev/null +++ b/js/js.translator/testFiles/standardClasses/cases/stringBuilder.kt @@ -0,0 +1,13 @@ +package foo + +import java.util.StringBuilder + +fun box(): String { + val s = StringBuilder() + s.append("a") + s.append("b")?.append("c") + s.append("d")!!.append("e") + + if (s.toString() != "abcde") return s.toString() + return "OK" +} \ No newline at end of file