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.
Adds basic code coverage collection on CI.
The Arcade SDK doesn't play well with coverage tools. This PR starts Coverlet to prepare assemblies before the tests run and stops it to calculate results after tests succeed.
There are three outstanding issues till now.
The paths in embedded PDBs of assemblies built with
DeterministicSourcePaths
(which is enabled byContinuousIntegrationBuild
) flag don't point to local source, so Coverlet can't tell which assembly to process. InstrumentationHelper.HasPdb always returns false for deterministic source paths coverlet-coverage/coverlet#363Azure Pipelines coverage board doesn't merge reports from different jobs. Codecov works fine on this.
There isn't the try-finally block in MSBuild, so if any test failed... :)