blob: e3e7a978f27d0248769b4aeb2af703a79661040b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
package scala.util
import org.junit.Assert._
import org.junit.Test
import org.junit.runner.RunWith
import org.junit.runners.JUnit4
/** The java version property uses the spec version
* and must work for all "major.minor" and fail otherwise.
*/
@RunWith(classOf[JUnit4])
class SpecVersionTest {
val sut = new PropertiesTrait {
override def javaSpecVersion = "1.7"
override protected def pickJarBasedOn: Class[_] = ???
override protected def propCategory: String = "test"
// override because of vals like releaseVersion
override lazy val scalaProps = new java.util.Properties
}
// SI-7265
@Test
def comparesCorrectly(): Unit = {
assert(sut isJavaAtLeast "1.5")
assert(sut isJavaAtLeast "1.6")
assert(sut isJavaAtLeast "1.7")
assert(!(sut isJavaAtLeast "1.8"))
assert(!(sut isJavaAtLeast "1.71"))
}
@Test(expected = classOf[NumberFormatException])
def badVersion(): Unit = {
sut isJavaAtLeast "1.a"
}
@Test(expected = classOf[NumberFormatException])
def missingVersion(): Unit = {
sut isJavaAtLeast "1"
}
@Test(expected = classOf[NumberFormatException])
def noVersion(): Unit = {
sut isJavaAtLeast ""
}
@Test(expected = classOf[NumberFormatException])
def dotOnly(): Unit = {
sut isJavaAtLeast "."
}
@Test(expected = classOf[NumberFormatException])
def leadingDot(): Unit = {
sut isJavaAtLeast ".5"
}
@Test(expected = classOf[NumberFormatException])
def notASpec(): Unit = {
sut isJavaAtLeast "1.7.1"
}
}
|