[K/N] Move cinterop tests from standalone to codegen/box

^KT-61259
This commit is contained in:
Vladimir Sukharev
2023-12-05 22:40:02 +01:00
committed by Space Team
parent 0b0ba3160f
commit c09e8909d4
40 changed files with 672 additions and 266 deletions
+29
View File
@@ -0,0 +1,29 @@
// TARGET_BACKEND: NATIVE
// MODULE: cinterop
// FILE: toKString.def
---
const char* empty() { return ""; }
const char* foo() { return "foo"; }
const char* kuku() { return "куку"; }
const char* invalid_utf8() { return "\x85\xAF"; }
const char* zero_in_the_middle() { return "before zero\0after zero"; }
// MODULE: main(cinterop)
// FILE: main.kt
@file:OptIn(kotlinx.cinterop.ExperimentalForeignApi::class)
import toKString.*
import kotlinx.cinterop.*
import kotlin.native.*
import kotlin.test.*
fun box(): String {
assertEquals("", empty()!!.toKStringFromUtf8())
assertEquals("foo", foo()!!.toKStringFromUtf8())
assertEquals("куку", kuku()!!.toKStringFromUtf8())
assertEquals("\uFFFD\uFFFD", invalid_utf8()!!.toKStringFromUtf8())
assertEquals("before zero", zero_in_the_middle()!!.toKStringFromUtf8())
return "OK"
}