Skip to content

Wrong sbt.testing.Runner#done's return value is printed with fork in Test := true #3510

@lihaoyi

Description

@lihaoyi

With fork in Test := true, two different sets of Frameworks & Runners appear to be instantiated: I'm guessing one in the original process, one in the forked process. Both .done() methods get called, but it is the runner without all the test information who's done() method gets printed. Hence if you were relying on your Runner/Task to aggregate information and print it out at the end of the test session, with fork in Test := true returning it from done doesn't work: e.g. in the case of uTest, which prints a nice test-summary and failure-summary, the summary shows "0 tests" when fork in Test := true

Workaround: use println in the .done() method to print the done message myself. I lose all the [info] spam in the LHS of the terminal when I do this, but it's not a huge loss...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions