Anywhere we can use `blob/master` we can use `blob/HEAD` instead. This
will make life easier if we ever rename our default branch in future
(once/if Git and GitHub provides the necessary tooling to do so).
- Depending on context, I've gone for either "denylist" or "disallow"
here. "Disallow" for things in sentences, or actions, and "denylist"
for list of things.
This commit adds a broken test, which is meant to expose a flaw in the
constructor of `Cask::Config`.
That (broken) test still passes because there’s also a flaw in our
test helper code.
The helper flaw happens to neutralize the `Cask::Config` flaw.
Previously, the JSON-based cask config loader was untested.
This commit changes the interface to accept a string, making the loader
easier to test. The commit also adds a test.
Previously tests which hit `odeprecated` would print warnings but not
always raise exceptions or fail. Combine this with the ability to have
`odeprecated` to turn into `odisabled` on certain dates and you have
tests that may fail just on the clock changing (this is bad).
Instead, ensure that tests always raise deprecations as exceptions so
that new deprecations will have their tests handled immediately.
- This also required auto-fixes for Layout/EmptyLinesAroundBlockBody and
Layout/InconsistentIndentation once the auto-fixer had got rid of the
"redundant begin"s.
Currently the tests casks found in "/Homebrew/test/support/fixtures/cask/Casks" and "/Homebrew/test/support/fixtures/third-party/Casks" aren't included in the paths checked when running "brew cask style".
This change includes these test cask paths in the checked paths, and also includes the auto style fixes made by running `brew cask style --fix`.
In some cases, certain Casks shouldn't be resubmitted for specific reasons: difficult to maintain, developers maintain their own version, ...
To make sure these cases are restricted - we can add them to a blacklist and have the blacklist checked as part of the `brew cask audit` steps.