[K/N][tests] Migrate console runtime tests to new testing infra ^KT-61259

This commit is contained in:
Alexander Shabalin
2023-11-01 13:32:25 +01:00
committed by Space Team
parent 2abf9bccba
commit 6ca8f546fe
62 changed files with 311 additions and 347 deletions
@@ -0,0 +1,2 @@
*.in binary
*.out binary
@@ -0,0 +1,28 @@
// OUTPUT_DATA_FILE: println.out
@file:OptIn(kotlinx.cinterop.ExperimentalForeignApi::class)
import kotlinx.cinterop.toKString
fun main() {
println("Hello, world!")
println(123.toByte())
println(239)
println(true)
println(3.14159)
println('A')
println("Привет")
println("\uD800\uDC00")
println("")
// Illegal surrogate pair -> default output
println("\uDC00\uD800")
// Lone surrogate -> default output
println("\uD80012")
println("\uDC0012")
println("12\uD800")
// https://github.com/JetBrains/kotlin-native/issues/1091
val array = byteArrayOf(0xF0.toByte(), 0x9F.toByte(), 0x98.toByte(), 0xA5.toByte())
array.decodeToString().apply { println(this) }
array.toKString().apply { println(this) }
}
@@ -0,0 +1,15 @@
Hello, world!
123
239
true
3.14159
A
Привет
𐀀
12
12
12
😥
😥
@@ -0,0 +1 @@
Hello World
@@ -0,0 +1,8 @@
// INPUT_DATA_FILE: readLine.in
import kotlin.test.*
fun main() {
assertEquals("Hello World", readLine())
assertNull(readLine())
}
@@ -0,0 +1,7 @@
// INPUT_DATA_FILE: readLineEmpty.in
import kotlin.test.*
fun main() {
assertNull(readLine())
}
@@ -0,0 +1 @@
@@ -0,0 +1,8 @@
// INPUT_DATA_FILE: readLineSingleEmptyLine.in
import kotlin.test.*
fun main() {
assertEquals("", readLine())
assertNull(readLine())
}
@@ -0,0 +1,7 @@
first
second
aaaaaa bbb
c
Привет!
A very long line of input with length of more than initial buffer size
@@ -0,0 +1,16 @@
// INPUT_DATA_FILE: readln.in
import kotlin.test.*
fun main() {
assertEquals("first", readln())
assertEquals("", readln())
assertEquals("second", readln())
// NOTE: Between `bbb` and `c` is "\r\n". `readln()` treats it as a single line separator on all platforms.
assertContentEquals("aaaaaa\rbbb".encodeToByteArray(), readln().encodeToByteArray())
assertEquals("c", readln())
assertEquals("Привет!", readln())
assertEquals("A very long line of input with length of more than initial buffer size", readln())
assertNull(readlnOrNull())
assertFailsWith<RuntimeException> { readln() }
}
@@ -0,0 +1,8 @@
// INPUT_DATA_FILE: readlnEmpty.in
import kotlin.test.*
fun main() {
assertFailsWith<RuntimeException> { readln() }
assertFailsWith<RuntimeException> { readln() }
}
@@ -0,0 +1,8 @@
// INPUT_DATA_FILE: readlnOrNullEmpty.in
import kotlin.test.*
fun main() {
assertNull(readlnOrNull())
assertNull(readlnOrNull())
}