Added tests on workers's bridges

This commit is contained in:
Igor Chevdar
2017-12-05 18:08:51 +03:00
committed by Igor Chevdar
parent 8df6ff5215
commit 86e221ed58
5 changed files with 92 additions and 0 deletions
+24
View File
@@ -564,6 +564,30 @@ task worker3(type: RunKonanTest) {
source = "runtime/workers/worker3.kt"
}
task worker4(type: RunKonanTest) {
disabled = (project.testTarget == 'wasm32') // Workers need pthreads.
goldValue = "Got 42\nOK\n"
source = "runtime/workers/worker4.kt"
}
task worker5(type: RunKonanTest) {
disabled = (project.testTarget == 'wasm32') // Workers need pthreads.
goldValue = "Got 3\nOK\n"
source = "runtime/workers/worker5.kt"
}
task worker6(type: RunKonanTest) {
disabled = (project.testTarget == 'wasm32') // Workers need pthreads.
goldValue = "Got 42\nOK\n"
source = "runtime/workers/worker6.kt"
}
task worker7(type: RunKonanTest) {
disabled = (project.testTarget == 'wasm32') // Workers need pthreads.
goldValue = "Input\nGot kotlin.Unit\nOK\n"
source = "runtime/workers/worker7.kt"
}
task superFunCall(type: RunKonanTest) {
goldValue = "<fun:C><fun:C1>\n<fun:C><fun:C3>\n"
source = "codegen/basics/superFunCall.kt"
@@ -0,0 +1,17 @@
package runtime.workers.worker4
import kotlin.test.*
import konan.worker.*
@Test fun runTest() {
val worker = startWorker()
val future = worker.schedule(TransferMode.CHECKED, { 41 }) {
input -> input + 1
}
future.consume {
result -> println("Got $result")
}
worker.requestTermination().consume { _ -> }
println("OK")
}
@@ -0,0 +1,17 @@
package runtime.workers.worker5
import kotlin.test.*
import konan.worker.*
@Test fun runTest() {
val worker = startWorker()
val future = worker.schedule(TransferMode.CHECKED, { "zzz".shallowCopy() }) {
input -> input.length
}
future.consume {
result -> println("Got $result")
}
worker.requestTermination().consume { _ -> }
println("OK")
}
@@ -0,0 +1,17 @@
package runtime.workers.worker6
import kotlin.test.*
import konan.worker.*
@Test fun runTest() {
val worker = startWorker()
val future = worker.schedule(TransferMode.CHECKED, { 42 }) {
input -> input.toString()
}
future.consume {
result -> println("Got $result")
}
worker.requestTermination().consume { _ -> }
println("OK")
}
@@ -0,0 +1,17 @@
package runtime.workers.worker7
import kotlin.test.*
import konan.worker.*
@Test fun runTest() {
val worker = startWorker()
val future = worker.schedule(TransferMode.CHECKED, { "Input".shallowCopy() }) {
input -> println(input)
}
future.consume {
result -> println("Got $result")
}
worker.requestTermination().consume { _ -> }
println("OK")
}