Skip to content
This repository was archived by the owner on Dec 31, 2019. It is now read-only.

Remove process.exit(0) from processEnding to fix false positives on CI server - #113

Open
nathanmarks wants to merge 1 commit into
douglasduteil:masterfrom
nathanmarks:remove-process-exit-0
Open

nathanmarks wants to merge 1 commit into
douglasduteil:masterfrom
nathanmarks:remove-process-exit-0

Conversation

@nathanmarks

Copy link
Copy Markdown

FYI, there were already 4 failing tests -- this patch didn't cause those.

Using substack/tape as an example, the test harness listens for process.exit before printing results, and conditionally calling process.exit() with a non zero exit code.

I noticed that with a failing tests, tape does not even print the results because the exit routine is hijacked:

image

At the moment, the processEnding function in cover.js causes the process to exit with an exit code of 0 (as long as istanbul has no errors with coverage). As a consequence, the tests are assumed to have finished without error. This means that generating coverage on travis (or any other CI server) requires running the test suite twice unless you want to get false positives.

Correct me if I'm wrong -- but removing this process.exit() call shouldn't affect any users unless their test suite hangs by itself.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant