Check that code can still be parsed after a format #2742
Merged
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.
Description
In rare cases it can happen that formatted code can not be compiled anymore. Add additional checking in
KtLintAssertThat
that linting of formatted code still succeeds during unit tests. For release testing, the CLI has been expanded with a new (hidden) option that forces lint to run after format, and to stop execution as soon as the formatted code can not be compiled anymore.Note that this still does not guarantee 100% that formatted code will be compilable. The additional tests will only ensure that they won't go unnoticed when the problem occurs in unit tests, or in the sample projects that are used for release testing.
Closes #2691
Checklist
Before submitting the PR, please check following (checks which are not relevant may be ignored):
Closes #<xxx>
orFixes #<xxx>
(replace<xxx>
with issue number)Documentation is updated. See difference between snapshot and release documentation