Uploaded image for project: 'Swift Driver'
  1. Swift Driver
  2. SWIFT-209

Test suite emits fatal errors when executed without an accessible server

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Open
    • Priority: Major - P3
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:

      Description

      Despite the instance setUp() failing the test when the client or collection are nil, the test method continues to execute and emits a fail error attempting to unwrap the optional.

      $ swift test --filter testListIndexes &> crash.log
      [beaker: swift-driver] swift-147 $ symbolicate-linux-fatal .build/x86_64-unknown-linux/debug/MongoSwiftPackageTests.xctest crash.log 
      Test Suite 'Selected tests' started at 2018-09-13 13:48:51.178
      Test Suite 'MongoCollectionTests' started at 2018-09-13 13:48:51.179
      Test Case 'MongoCollectionTests.testListIndexes' started at 2018-09-13 13:48:51.179
      /home/jmikola/workspace/mongodb/swift-driver/Tests/MongoSwiftTests/MongoCollectionTests.swift:63: error: MongoCollectionTests.testListIndexes : XCTAssertTrue failed -
      /home/jmikola/workspace/mongodb/swift-driver/Tests/MongoSwiftTests/MongoCollectionTests.swift:64: error: MongoCollectionTests.testListIndexes : failed - Setup failed: commandError(message: "No suitable servers found (`serverSelectionTryOnce` set): [connection refused calling ismaster on \'localhost:27017\']")
      Fatal error: Unexpectedly found nil while unwrapping an Optional value
      Current stack trace:
      0    libswiftCore.so      0x00007f0c79214ce8    _swift_stdlib_reportFatalError + 168 
      1    libswiftCore.so      0x00007f0c78f6c83a    function signature specialization <Arg[1] = [Closure Propagated : reabstraction thunk helper from @callee_guaranteed (@unowned Swift.UnsafeBufferPointer<Swift.UInt8>) -> () to @escaping @callee_guaranteed (@unowned Swift.UnsafeBufferPointer<Swift.UInt8>) -> (@out ()), Argument Types : [@callee_guaranteed (@unowned Swift.UnsafeBufferPointer<Swift.UInt8>) -> ()]> of generic specialization <()> of Swift.StaticString.withUTF8Buffer<A>((Swift.UnsafeBufferPointer<Swift.UInt8>) -> A) -> A + 58 
      2    libswiftCore.so      0x00007f0c791a9d2e    partial apply forwarder for closure #2 (Swift.UnsafeBufferPointer<Swift.UInt8>) -> () in Swift._fatalErrorMessage(_: Swift.StaticString, _: Swift.StaticString, file: Swift.StaticString, line: Swift.UInt, flags: Swift.UInt32) -> Swift.Never + 110 
      3    libswiftCore.so      0x00007f0c78f6c83a    function signature specialization <Arg[1] = [Closure Propagated : reabstraction thunk helper from @callee_guaranteed (@unowned Swift.UnsafeBufferPointer<Swift.UInt8>) -> () to @escaping @callee_guaranteed (@unowned Swift.UnsafeBufferPointer<Swift.UInt8>) -> (@out ()), Argument Types : [@callee_guaranteed (@unowned Swift.UnsafeBufferPointer<Swift.UInt8>) -> ()]> of generic specialization <()> of Swift.StaticString.withUTF8Buffer<A>((Swift.UnsafeBufferPointer<Swift.UInt8>) -> A) -> A + 58 
      4    libswiftCore.so      0x00007f0c79104c29    function signature specialization <Arg[2] = Dead, Arg[3] = Dead> of Swift._fatalErrorMessage(_: Swift.StaticString, _: Swift.StaticString, file: Swift.StaticString, line: Swift.UInt, flags: Swift.UInt32) -> Swift.Never + 105 
      5    libswiftCore.so      0x00007f0c78f6c313    Swift._fatalErrorMessage(_: Swift.StaticString, _: Swift.StaticString, file: Swift.StaticString, line: Swift.UInt, flags: Swift.UInt32) -> Swift.Never + 19 
      6    MongoSwiftPackageTests.xctest 0x0000562dc9bb664f    MongoSwiftTests.MongoCollectionTests.testListIndexes() throws -> () + 287 at MongoCollectionTests.swift:273
      7    MongoSwiftPackageTests.xctest 0x0000562dc9bde904    partial apply forwarder for MongoSwiftTests.MongoCollectionTests.testListIndexes() throws -> () + 20 at <compiler-generated>:0
      8    MongoSwiftPackageTests.xctest 0x0000562dc9aed136    reabstraction thunk helper from @escaping @callee_guaranteed () -> (@error @owned Swift.Error) to @escaping @callee_guaranteed (@in_guaranteed ()) -> (@out (), @error @owned Swift.Error) + 22 at <compiler-generated>:0
      9    MongoSwiftPackageTests.xctest 0x0000562dc9bdebab    partial apply forwarder for reabstraction thunk helper from @escaping @callee_guaranteed () -> (@error @owned Swift.Error) to @escaping @callee_guaranteed (@in_guaranteed ()) -> (@out (), @error @owned Swift.Error) + 27 at <compiler-generated>:0
      10   libXCTest.so         0x00007f0c79cfc021    partial apply forwarder for reabstraction thunk helper from @escaping @callee_guaranteed (@in_guaranteed ()) -> (@out (), @error @owned Swift.Error) to @escaping @callee_guaranteed () -> (@error @owned Swift.Error) + 17 
      11   libXCTest.so         0x00007f0c79cfbe1c    partial apply forwarder for closure #1 (XCTest.XCTestCase) throws -> () in XCTest.(test in _3BE257A46ADB477C7BF2D39968B39F9D)<A where A: XCTest.XCTestCase>((A) -> () throws -> ()) -> (XCTest.XCTestCase) throws -> () + 76 
      12   libXCTest.so         0x00007f0c79cfbda4    partial apply forwarder for reabstraction thunk helper from @escaping @callee_guaranteed (@guaranteed XCTest.XCTestCase) -> (@error @owned Swift.Error) to @escaping @callee_guaranteed (@in_guaranteed XCTest.XCTestCase) -> (@out (), @error @owned Swift.Error) + 20 
      13   libXCTest.so         0x00007f0c79cfcb69    reabstraction thunk helper from @escaping @callee_guaranteed (@guaranteed XCTest.XCTestCase) -> (@error @owned Swift.Error) to @escaping @callee_guaranteed (@in_guaranteed XCTest.XCTestCase) -> (@out (), @error @owned Swift.Error)partial apply forwarder with unmangled suffix ".64" + 9 
      14   libXCTest.so         0x00007f0c79cfc307    partial apply forwarder for reabstraction thunk helper from @escaping @callee_guaranteed (@in_guaranteed XCTest.XCTestCase) -> (@out (), @error @owned Swift.Error) to @escaping @callee_guaranteed (@guaranteed XCTest.XCTestCase) -> (@error @owned Swift.Error) + 39 
      15   libXCTest.so         0x00007f0c79ce8bb8    XCTest.XCTestCase.invokeTest() -> () + 72 
      16   libXCTest.so         0x00007f0c79ce883a    XCTest.XCTestCase.perform(XCTest.XCTestRun) -> () + 314 
      17   libXCTest.so         0x00007f0c79ce1cd0    XCTest.XCTest.run() -> () + 640 
      18   libXCTest.so         0x00007f0c79ce108e    XCTest.XCTestSuite.perform(XCTest.XCTestRun) -> () + 654 
      19   libXCTest.so         0x00007f0c79ce15b0    XCTest.XCTestSuite.perform(XCTest.XCTestRun) -> () + 1968 
      20   libXCTest.so         0x00007f0c79ce7bb8    XCTest.XCTMain(Swift.Array<(testCaseClass: XCTest.XCTestCase.Type, allTests: Swift.Array<(Swift.String, (XCTest.XCTestCase) throws -> ())>)>) -> Swift.Never + 3960 
      21   MongoSwiftPackageTests.xctest 0x0000562dc9af56f0    main + 336 at LinuxMain.swift:13
      22   libc.so.6                          0x00007f0c775fdab0 __libc_start_main + 231
      23   MongoSwiftPackageTests.xctest 0x0000562dc99e75ea    _start + 42 
      Exited with signal code 4
      

        Attachments

          Activity

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            jmikola Jeremy Mikola
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Dates

              Created:
              Updated: