[Interop][Test] Add test for CEnumVar.value property

This commit is contained in:
Sergey Bogolepov
2020-05-19 14:36:47 +07:00
committed by Sergey Bogolepov
parent bab4b61d9c
commit 740e56f1a5
3 changed files with 29 additions and 0 deletions
+10
View File
@@ -3477,6 +3477,10 @@ createInterop("cunion") {
it.defFile 'interop/basics/cunion.def'
}
createInterop("cenums") {
it.defFile 'interop/basics/cenums.def'
}
createInterop("carrayPointers") {
it.defFile 'interop/basics/carrayPointers.def'
}
@@ -3736,6 +3740,12 @@ interopTest("interop_union") {
source = "interop/basics/union.kt"
}
interopTest("interop_enums") {
disabled = (project.testTarget == 'wasm32') // No interop for wasm yet.
interop = 'cenums'
source = "interop/basics/enums.kt"
}
interopTest("interop_array_pointers") {
disabled = (project.testTarget == 'wasm32') // No interop for wasm yet.
interop = 'carrayPointers'
@@ -0,0 +1,4 @@
---
enum E {
A, B, C
};
@@ -0,0 +1,15 @@
import cenums.*
import kotlinx.cinterop.*
import kotlin.test.*
fun main() {
memScoped {
val e = alloc<E.Var>()
e.value = E.C
assertEquals(E.C, e.value)
assertFailsWith<NotImplementedError> {
e.value = TODO()
}
}
}