Files
kotlin-fork/kotlin-native/backend.native/tests/framework/kt42397/test.swift
T
Alexander Shabalin 77e2b9f9a0 Disable running checkers by default (#4644)
* Make checkers be disabled by default

* Allow running checkers in test launcher
2021-01-26 17:38:03 +03:00

41 lines
1.0 KiB
Swift

import Kt42397
class Results {
var aFoo: Int32 = 0
var bFoo: Int32 = 0
}
func runTestKt42397(pointer: UnsafeMutableRawPointer) -> UnsafeMutableRawPointer? {
autoreleasepool {
KnlibraryKt.enableMemoryChecker()
let results = pointer.bindMemory(to: Results.self, capacity: 1).pointee
results.aFoo = A().foo()
results.bFoo = B.Companion().foo()
}
return nil
}
func testKt42397() throws {
let results = Results()
let resultsPtr = UnsafeMutablePointer<Results>.allocate(capacity: 1)
resultsPtr.initialize(to: results)
var thread: pthread_t? = nil
let result = pthread_create(&thread, nil, runTestKt42397, resultsPtr)
try assertEquals(actual: result, expected: 0)
pthread_join(thread!, nil)
try assertEquals(actual: results.aFoo, expected: 1)
try assertEquals(actual: results.bFoo, expected: 2)
}
// -------- Execution of the test --------
class TestTests : SimpleTestProvider {
override init() {
super.init()
test("Kt42397", testKt42397)
}
}