Skip to content

Test suite threaded fails due to automatic parallelism in tasty-1.5.4 #1

Description

@sternenseemann

tasty-1.5.4 automatically parallelizes test suites when compiled with -threaded now, so the test suite now fails with eAddressInUse:

Test suite threaded: RUNNING...
unix domain socket
  Unix path name
    connect to non-existing path name: OK
    server\client stream:              FAIL
      Exception: eAddressInUse
      HasCallStack backtrace:
        collectBacktraces, called at libraries/ghc-internal/src/GHC/Internal/Exception.hs:169:13 in ghc-internal:GHC.Internal.Exception
        toExceptionWithBacktrace, called at libraries/ghc-internal/src/GHC/Internal/IO.hs:260:11 in ghc-internal:GHC.Internal.IO
        throwIO, called at ./Control/Concurrent/Async.hs:78:13 in tasty-1.5.4-3srz6oRb6XUEXTfq3bDHX2:Control.Concurrent.Async
      
      
      Use -p '/Unix path name.server\\client stream/' to rerun this test only.
    server\client datagram:            FAIL
      Exception: Woum5ag3oohuaLee.socket: removeLink: does not exist (No such file or directory)
      HasCallStack backtrace:
        collectBacktraces, called at libraries/ghc-internal/src/GHC/Internal/Exception.hs:169:13 in ghc-internal:GHC.Internal.Exception
        toExceptionWithBacktrace, called at libraries/ghc-internal/src/GHC/Internal/IO.hs:260:11 in ghc-internal:GHC.Internal.IO
        throwIO, called at ./Control/Concurrent/Async.hs:78:13 in tasty-1.5.4-3srz6oRb6XUEXTfq3bDHX2:Control.Concurrent.Async
      
      
      Use -p '/Unix path name.server\\client datagram/' to rerun this test only.
  Abstract path name
    connect to non-existing path name: FAIL
      platform_test/linux/Platform.hs:25:
      connection should have failed
      Use -p '/Abstract path name.connect to non-existing path name/' to rerun this test only.
    server\client stream:              OK
    server\client datagram:            OK

3 out of 6 tests failed (0.05s)
Test suite threaded: FAIL

This can be patched using inOrderedTestGroup or redesigning the test suite to not reuse the same names. You can probably just copy what I did for the test suite of socket: lpeterse/haskell-socket#73

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions