This pull request modifies the --compare-file-text option, which was previously just a binary option, to accept an additional parameter. There are now 3 behaviors:
--compare-file-text -- Like before, enables the feature
--no-compare-file-text -- Like before, disables the feature
--compare-file-text=force -- New! Enables the feature, and doesn't let it be auto-disabled
We need this behavior because we're using --catalog-only in our workflow, and this currently auto-disables the feature because the second catalog in the non-existent diff is a "NoOp" catalog. With this change, our generated catalog will be populated with the content of static files rather than a reference to them, which is what we want.
I chose this implementation because it preserves existing behavior while still not introducing yet another command line argument. I added an integration test for this as well.
Checklist
[x] Make sure that all of the tests pass, and fix any that don't. Just run rake in your checkout directory, or review the CI job triggered whenever you push to a pull request.
[x] Make sure that there is 100% test coverage by running rake coverage:spec or ignoring untestable sections of code with # :nocov comments. If you need help getting to 100% coverage please ask; however, don't just submit code with no tests.
[x] If you have added a new command line option, we would greatly appreciate a corresponding integration test that exercises it from start to finish. This is optional but recommended.
Overview
This pull request modifies the
--compare-file-text
option, which was previously just a binary option, to accept an additional parameter. There are now 3 behaviors:--compare-file-text
-- Like before, enables the feature--no-compare-file-text
-- Like before, disables the feature--compare-file-text=force
-- New! Enables the feature, and doesn't let it be auto-disabledWe need this behavior because we're using
--catalog-only
in our workflow, and this currently auto-disables the feature because the second catalog in the non-existent diff is a "NoOp" catalog. With this change, our generated catalog will be populated with the content of static files rather than a reference to them, which is what we want.I chose this implementation because it preserves existing behavior while still not introducing yet another command line argument. I added an integration test for this as well.
Checklist
rake
in your checkout directory, or review the CI job triggered whenever you push to a pull request.rake coverage:spec
or ignoring untestable sections of code with# :nocov
comments. If you need help getting to 100% coverage please ask; however, don't just submit code with no tests.