summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/library/scala/util/Properties.scala2
-rw-r--r--test/junit/scala/util/SpecVersionTest.scala25
2 files changed, 5 insertions, 22 deletions
diff --git a/src/library/scala/util/Properties.scala b/src/library/scala/util/Properties.scala
index 6995f452fa..fb28132dfe 100644
--- a/src/library/scala/util/Properties.scala
+++ b/src/library/scala/util/Properties.scala
@@ -185,7 +185,7 @@ private[scala] trait PropertiesTrait {
def isJavaAtLeast(version: String): Boolean = {
def versionOf(s: String): Int = s.indexOf('.') match {
case 1 if s.charAt(0) == '1' =>
- val v = versionOf(s.substring(2))
+ val v = s.substring(2).toInt
if (v < 9) v else -1
case -1 => s.toInt
case _ => -1
diff --git a/test/junit/scala/util/SpecVersionTest.scala b/test/junit/scala/util/SpecVersionTest.scala
index 2b69f288fa..4c16ff08fb 100644
--- a/test/junit/scala/util/SpecVersionTest.scala
+++ b/test/junit/scala/util/SpecVersionTest.scala
@@ -50,30 +50,13 @@ class SpecVersionTest {
}
@Test def variousBadVersionStrings(): Unit = {
- assertThrows[NumberFormatException] { sut7 isJavaAtLeast "1.9" }
+ assertThrows[NumberFormatException](sut7.isJavaAtLeast("1.9"), _ == "Not a version: 1.9")
assertThrows[NumberFormatException] { sut9 isJavaAtLeast "1.9" }
assertThrows[NumberFormatException] { sut7 isJavaAtLeast "9.1" }
assertThrows[NumberFormatException] { sut9 isJavaAtLeast "9.1" }
- }
- @Test(expected = classOf[NumberFormatException])
- def badVersion(): Unit = {
- sut7 isJavaAtLeast "1.a"
- }
- @Test(expected = classOf[NumberFormatException])
- def noVersion(): Unit = {
- sut7 isJavaAtLeast ""
- }
- @Test(expected = classOf[NumberFormatException])
- def dotOnly(): Unit = {
- sut7 isJavaAtLeast "."
- }
- @Test(expected = classOf[NumberFormatException])
- def leadingDot(): Unit = {
- sut7 isJavaAtLeast ".5"
- }
- @Test(expected = classOf[NumberFormatException])
- def notASpec(): Unit = {
- sut7 isJavaAtLeast "1.7.1"
+ val badvs = List("1.1.8", "1.", "1.a", "", ".", ".5", "1.7.1")
+
+ for (v <- badvs) assertThrows[NumberFormatException](sut7.isJavaAtLeast(v))
}
}