@@ -9,7 +9,7 @@ task installDependenciesMochaNode(type: NpmTask, dependsOn: [npmInstall]) {
9
9
" mocha@$mocha_version " ,
10
10
" source-map-support@$source_map_support_version " ,
11
11
' --no-save' ]
12
- if (project. hasProperty(" teamcity" )) args + = [" mocha-teamcity-reporter@$mocha_teamcity_reporter_version " ]
12
+ if (project. hasProperty(" teamcity" )) args. addAll( [" mocha-teamcity-reporter@$mocha_teamcity_reporter_version " ])
13
13
}
14
14
15
15
def compileJsLegacy = tasks. hasProperty(" compileKotlinJsLegacy" )
@@ -22,9 +22,9 @@ def compileTestJsLegacy = tasks.hasProperty("compileTestKotlinJsLegacy")
22
22
23
23
// todo: use atomicfu-transformed test files here (not critical)
24
24
task testMochaNode (type : NodeTask , dependsOn : [compileTestJsLegacy, installDependenciesMochaNode]) {
25
- script = file(" $node . nodeModulesDir /node_modules/mocha/bin/mocha" )
26
- args = [compileTestJsLegacy. outputFile, ' --require' , ' source-map-support/register' ]
27
- if (project. hasProperty(" teamcity" )) args + = [' --reporter' , ' mocha-teamcity-reporter' ]
25
+ script = file(" ${ node.nodeProjectDir.getAsFile().get() } /node_modules/mocha/bin/mocha" )
26
+ args = [compileTestJsLegacy. outputFile. path , ' --require' , ' source-map-support/register' ]
27
+ if (project. hasProperty(" teamcity" )) args. addAll( [' --reporter' , ' mocha-teamcity-reporter' ])
28
28
}
29
29
30
30
def jsLegacyTestTask = project. tasks. findByName(' jsLegacyTest' ) ? jsLegacyTest : jsTest
@@ -40,8 +40,8 @@ task installDependenciesMochaChrome(type: NpmTask, dependsOn: [npmInstall]) {
40
40
" kotlin@$kotlin_version " ,
41
41
" kotlin-test@$kotlin_version " ,
42
42
' --no-save' ]
43
- if (project. hasProperty(" teamcity" )) args + = [
44
- " mocha-teamcity-reporter@$mocha_teamcity_reporter_version " ]
43
+ if (project. hasProperty(" teamcity" )) args. addAll( [
44
+ " mocha-teamcity-reporter@$mocha_teamcity_reporter_version " ])
45
45
}
46
46
47
47
def mochaChromeTestPage = file(" $buildDir /test-page.html" )
@@ -51,19 +51,20 @@ task prepareMochaChrome(dependsOn: [compileTestJsLegacy, installDependenciesMoch
51
51
}
52
52
53
53
prepareMochaChrome. doLast {
54
+ def nodeProjDir = node. nodeProjectDir. getAsFile(). get()
54
55
mochaChromeTestPage. text = """ <!DOCTYPE html>
55
56
<html>
56
57
<head>
57
58
<title>Mocha Tests</title>
58
59
<meta charset="utf-8">
59
- <link rel="stylesheet" href="$n ode . nodeModulesDir /node_modules/mocha/mocha.css">
60
+ <link rel="stylesheet" href="$n odeProjDir /node_modules/mocha/mocha.css">
60
61
</head>
61
62
<body>
62
63
<div id="mocha"></div>
63
- <script src="$n ode . nodeModulesDir /node_modules/mocha/mocha.js"></script>
64
+ <script src="$n odeProjDir /node_modules/mocha/mocha.js"></script>
64
65
<script>mocha.setup('bdd');</script>
65
- <script src="$n ode . nodeModulesDir /node_modules/kotlin/kotlin.js"></script>
66
- <script src="$n ode . nodeModulesDir /node_modules/kotlin-test/kotlin-test.js"></script>
66
+ <script src="$n odeProjDir /node_modules/kotlin/kotlin.js"></script>
67
+ <script src="$n odeProjDir /node_modules/kotlin-test/kotlin-test.js"></script>
67
68
<script src="$compileJsLegacy . outputFile "></script>
68
69
<script src="$compileTestJsLegacy . outputFile "></script>
69
70
<script>mocha.run();</script>
@@ -73,9 +74,9 @@ prepareMochaChrome.doLast {
73
74
}
74
75
75
76
task testMochaChrome (type : NodeTask , dependsOn : prepareMochaChrome) {
76
- script = file(" $node . nodeModulesDir /node_modules/mocha-headless-chrome/bin/start" )
77
- args = [compileTestJsLegacy. outputFile, ' --file' , mochaChromeTestPage]
78
- if (project. hasProperty(" teamcity" )) args + = [' --reporter' , ' mocha-teamcity-reporter' ]
77
+ script = file(" ${ node.nodeProjectDir.getAsFile().get() } /node_modules/mocha-headless-chrome/bin/start" )
78
+ args = [compileTestJsLegacy. outputFile. path , ' --file' , mochaChromeTestPage]
79
+ if (project. hasProperty(" teamcity" )) args. addAll( [' --reporter' , ' mocha-teamcity-reporter' ])
79
80
}
80
81
81
82
// todo: Commented out because mocha-headless-chrome does not work on TeamCity
@@ -90,13 +91,13 @@ task installDependenciesMochaJsdom(type: NpmTask, dependsOn: [npmInstall]) {
90
91
" jsdom-global@$jsdom_global_version " ,
91
92
" source-map-support@$source_map_support_version " ,
92
93
' --no-save' ]
93
- if (project. hasProperty(" teamcity" )) args + = [" mocha-teamcity-reporter@$mocha_teamcity_reporter_version " ]
94
+ if (project. hasProperty(" teamcity" )) args. addAll( [" mocha-teamcity-reporter@$mocha_teamcity_reporter_version " ])
94
95
}
95
96
96
97
task testMochaJsdom (type : NodeTask , dependsOn : [compileTestJsLegacy, installDependenciesMochaJsdom]) {
97
- script = file(" $node . nodeModulesDir /node_modules/mocha/bin/mocha" )
98
- args = [compileTestJsLegacy. outputFile, ' --require' , ' source-map-support/register' , ' --require' , ' jsdom-global/register' ]
99
- if (project. hasProperty(" teamcity" )) args + = [' --reporter' , ' mocha-teamcity-reporter' ]
98
+ script = file(" ${ node.nodeProjectDir.getAsFile().get() } /node_modules/mocha/bin/mocha" )
99
+ args = [compileTestJsLegacy. outputFile. path , ' --require' , ' source-map-support/register' , ' --require' , ' jsdom-global/register' ]
100
+ if (project. hasProperty(" teamcity" )) args. addAll( [' --reporter' , ' mocha-teamcity-reporter' ])
100
101
}
101
102
102
103
jsLegacyTestTask. dependsOn testMochaJsdom
0 commit comments