Fix validation of 'git' and 'files' options #20
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.
I found an issue when running the analyzer the following way:
I got a warning
Undefined offset: 0
, due to the logic aroundexplode
for thefiles
option, followed by the expected exceptionYou must set 'files' or 'git' options.
.I moved the validation and normalizing of the
files
option to its own class with its corresponding tests.I also added integration tests for the
AnalyzeCommand
that verify thegit
andfiles
validation logic I changed.One thing I noticed is that currently it is not possible to write tests for the command without modifying your
src
or whatever folder you pass to the test. It might be a good idea to createAnalyzer
objects and inject them to the app in order to make them testable or create a folder for testing with fixture files.