@@ -25,12 +25,20 @@ import org.ice1000.julia.lang.executeCommand
25
25
import org.ice1000.julia.lang.module.juliaPath
26
26
import org.ice1000.julia.lang.module.versionOf
27
27
import org.ice1000.julia.lang.shouldBe
28
+ import org.junit.Assume.assumeFalse
29
+ import org.junit.Assume.assumeTrue
28
30
import org.junit.Test
29
31
import java.io.File
30
32
import java.io.IOException
31
33
import java.util.concurrent.TimeUnit
32
34
import kotlin.system.measureTimeMillis
33
35
36
+
37
+ private fun assumeMac () = assumeTrue(" Mac-only test" , SystemInfo .isMac)
38
+ private fun assumeNonCI () = assumeTrue(" Non CI test" , System .getenv(" CI" ).isNullOrBlank())
39
+ private fun assumeNotWindows () = assumeFalse(" Non-windows-only test" , SystemInfo .isWindows)
40
+ private fun assumeWindows () = assumeTrue(" Windows-only test" , SystemInfo .isWindows)
41
+
34
42
private fun main (args : Array <String >) {
35
43
val process = Runtime .getRuntime().exec(" $juliaPath -q" ).also {
36
44
// language=Julia
@@ -74,8 +82,7 @@ class ExecutionTest {
74
82
75
83
@Test
76
84
fun testVersion () {
77
- if (System .getenv(" CI" ).isNullOrBlank())
78
- println (versionOf(juliaPath))
85
+ println (versionOf(juliaPath))
79
86
}
80
87
81
88
/* *
@@ -84,6 +91,7 @@ class ExecutionTest {
84
91
*/
85
92
@Test(timeout = 5000L )
86
93
fun testTimeout () {
94
+ assumeNonCI()
87
95
measureTimeMillis {
88
96
// just test if it will throw exceptions
89
97
executeCommand(" git clone https://github.com/jetbrains/intellij-community" , timeLimit = 500L )
@@ -96,9 +104,8 @@ class ExecutionTest {
96
104
class JuliaExecutionTest {
97
105
@Test
98
106
fun testDocker () {
99
- // Windows
100
- if (! System .getenv(" CI" ).isNullOrBlank()) return
101
- if (! SystemInfo .isWindows) return
107
+ assumeNonCI()
108
+ assumeWindows()
102
109
val winCD = " %CD%"
103
110
val unixPWD = " \$ PWD"
104
111
val currentDir = if (SystemInfo .isWindows) winCD else unixPWD
@@ -115,6 +122,8 @@ class JuliaExecutionTest {
115
122
116
123
@Test
117
124
fun testUnixDocker () {
125
+ assumeNonCI()
126
+ assumeNotWindows()
118
127
val pwd = File (" ." ).absolutePath
119
128
val juliaFile = " ParseFunctions.jl"
120
129
val containerName = " julia"
@@ -153,9 +162,10 @@ class JuliaConfig {
153
162
class JuliaConsoleTest {
154
163
@Test
155
164
fun testShouldFolding () {
156
- if ( ! System .getenv( " CI " ).isNullOrBlank()) return
157
- if ( ! SystemInfo .isMac) return
165
+ assumeNonCI()
166
+ assumeMac()
158
167
val command = " /Applications/Julia-0.6.app/Contents/Resources/julia/bin/julia --check-bounds=no --history-file=no --inline=no --color=no --math-mode=ieee --handle-signals=no --startup-file=no --optimize=0 --compile=yes -q /Users/paul/IdeaProjects/julia-project-test2/src/Jul.jl 23 f jh"
159
168
JuliaConsoleFolding ().shouldFoldLine(command) shouldBe true
160
169
}
161
170
}
171
+
0 commit comments