Build both coverage and non-coverage tester binaries in CI#56538
Closed
rubennorte wants to merge 1 commit intofacebook:mainfrom
Closed
Build both coverage and non-coverage tester binaries in CI#56538rubennorte wants to merge 1 commit intofacebook:mainfrom
rubennorte wants to merge 1 commit intofacebook:mainfrom
Conversation
Summary: The Fantom Jest `globalSetup` builds the `fantom-tester` native binaries upfront, using `globalConfig.collectCoverage` to decide whether to build the `-coverage` flavor. However, `runner/coverageUtils.js`'s `shouldCollectCoverage()` returns `false` for some tests even when `globalConfig.collectCoverage` is true: - All benchmarks (filename matches `*Benchmark-itest.*`) - Tests with the `fantom_disable_coverage` pragma In CI coverage runs, those tests resolve their tester binary path with `enableCoverage=false` (e.g. `fantom-tester-statichermesstable-opt`), but `globalSetup` only built the `-coverage` variants, so spawn fails with `ENOENT` and the test fails with an empty stdout/stderr and exit code `-2`. When `enableCoverage` is true, also build the non-coverage tester variants so coverage-opt-out tests can find their binary. Changelog: [Internal] Differential Revision: D101819861
|
@rubennorte has exported this pull request. If you are a Meta employee, you can view the originating Diff in D101819861. |
Collaborator
|
This pull request was successfully merged by @rubennorte in dbd3255 When will my fix make it into a release? | How to file a pick request? |
|
This pull request has been merged in dbd3255. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary:
The Fantom Jest
globalSetupbuilds thefantom-testernative binariesupfront, using
globalConfig.collectCoverageto decide whether to buildthe
-coverageflavor.However,
runner/coverageUtils.js'sshouldCollectCoverage()returnsfalsefor some tests even whenglobalConfig.collectCoverageis true:*Benchmark-itest.*)fantom_disable_coveragepragmaIn CI coverage runs, those tests resolve their tester binary path with
enableCoverage=false(e.g.fantom-tester-statichermesstable-opt),but
globalSetuponly built the-coveragevariants, so spawn failswith
ENOENTand the test fails with an empty stdout/stderr and exitcode
-2.When
enableCoverageis true, also build the non-coverage testervariants so coverage-opt-out tests can find their binary.
Changelog: [Internal]
Differential Revision: D101819861