From ce50c7f13d9845e0a06ced1b0ade9229b95019d2 Mon Sep 17 00:00:00 2001 From: Ilya Gorbunov Date: Sat, 26 Nov 2016 06:45:18 +0300 Subject: [PATCH] Fix in test to deal with java 6 not accepting leading plus. --- libraries/stdlib/test/text/ParsePrimitivesJVMTest.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libraries/stdlib/test/text/ParsePrimitivesJVMTest.kt b/libraries/stdlib/test/text/ParsePrimitivesJVMTest.kt index 30fc5326afd..5000e821c1a 100644 --- a/libraries/stdlib/test/text/ParsePrimitivesJVMTest.kt +++ b/libraries/stdlib/test/text/ParsePrimitivesJVMTest.kt @@ -139,7 +139,7 @@ class ParsePrimitivesJVMTest { private class CompareBehaviorContext(val convertOrFail: (String) -> T, val convertOrNull: (String) -> T?) { fun assertProduce(input: String, output: T) { - assertEquals(output, convertOrFail(input)) + assertEquals(output, convertOrFail(input.removeLeadingPlusOnJava6())) assertEquals(output, convertOrNull(input)) } @@ -152,7 +152,7 @@ private class CompareBehaviorContext(val convertOrFail: (String) -> T, private class CompareBehaviorWithRadixContext(val convertOrFail: String.(Int) -> T, val convertOrNull: String.(Int) -> T?) { fun assertProduce(radix: Int, input: String, output: T) { - assertEquals(output, input.convertOrFail(radix)) + assertEquals(output, input.removeLeadingPlusOnJava6().convertOrFail(radix)) assertEquals(output, input.convertOrNull(radix)) } @@ -163,3 +163,8 @@ private class CompareBehaviorWithRadixContext(val convertOrFail: String. assertNull (input.convertOrNull(radix), message = "On input \"$input\" with radix $radix") } } + +private val isJava6 = System.getProperty("java.version").startsWith("1.6.") + +private fun String.removeLeadingPlusOnJava6(): String = + if (isJava6) removePrefix("+") else this \ No newline at end of file