// RUN: %target-run-simple-swift 2>&1 | %FileCheck %s // REQUIRES: executable_test import StdlibUnittest #if os(Linux) || os(FreeBSD) || os(PS4) || os(Android) || os(Windows) import Glibc #else import Darwin #endif _setTestSuiteFailedCallback() { print("abort()") } // // Test that harness aborts when a test crashes if a child process exits with a // non-zero code after all tests have finished running. // var TestSuiteChildExits = TestSuite("TestSuiteChildExits") TestSuiteChildExits.test("passes") { atexit { _exit(1) } } // CHECK: [ RUN ] TestSuiteChildExits.passes // CHECK: [ OK ] TestSuiteChildExits.passes // CHECK: TestSuiteChildExits: All tests passed // CHECK: Abnormal child process termination: Exit(1). // CHECK: The child process failed during shutdown, aborting. // CHECK: abort() runAllTests()