In Cask specs, we have recently introduced a couple of specialized
`shared_examples` directories. Those new directories are organized
below their respective packages (for instance,
`cask/artifact/shared_examples` and `cask/cmd/shared_examples`).
This commit moves the rest of the shared examples accordingly.
See also:
https://github.com/Homebrew/brew/pull/5247
This change allows us to remove the `RSpec/IteratedExpectation` rule from `.rubocop_todo.yml` as we no longer iterate over each path to check existence.
Note: We this PR didn't change the subsequent test checking for the negative expectations as this isn't part of the rule (see: https://github.com/rubocop-hq/rubocop-rspec/issues/278).
Gatekeeper's Path Randomization is currently making automated
installation a nightmare. Let's manually toggle the (undocumented) app
translocation bit in the `com.apple.quarantine` extended attribute.
While we're at it, let's also toss in some fixes:
- zip downloads with improper permissions that prevent us from
quarantining
- quarantine/release/skip downloads as requested by the user
Use 124 max line length everywhere. Also, reduce tap max line length to
189 as Homebrew/homebrew-core has that as a maximum now. In future
Homebrew/homebrew-core will also be reduced to 124 maximum line length.
I’ve noticed the deadlock test in `cask/system_command_spec.rb` appears to fail spuriously, e. g. in #4529.
Details:
https://travis-ci.org/Homebrew/brew/jobs/406827725#L297-L318
With the spec taking 2 seconds on average on my 2017 MBP, I feel it’s
entirely plausible for the aging test-bot hardware to get knocked by
the 15-second timeout.
Given that the spec will pass early anyway if it passes, I feel it’s
reasonable to bump the timeout to 30 seconds.