119 Commits

Author SHA1 Message Date
Markus Reiter
4e26fdfcf6 Add test for non-TTY brew cask search. 2017-07-10 00:09:32 +02:00
Markus Reiter
dccdac55a8 Add helper for testing TTY output. 2017-07-08 00:57:08 +02:00
Mike McQuaid
cb3a47d9e2 Fix brew tests on High Sierra.
The `brew test` tests were failing as they were unable to include
`test/unit/assertions`. This is because it's a gem and we were setting
the `GEM_HOME` so system gems were being ignored.

While I was there and examining the `$LOAD_PATH`: reduce the number of
things we add there by using `Bundler.with_clean_env` and only adding
`HOMEBREW_LIBRARY_PATH` in the `$LOAD_PATH` if it isn't already there
(which it always is [and has to be] for integration tests).

This also seems to have the side effect of speeding up integration
tests from 1m26s to 1m8s on my machine.
2017-07-07 15:20:19 +01:00
Markus Reiter
4af1d2265b Add symlink for High Sierra test bottle. 2017-06-09 14:02:57 +02:00
Mike McQuaid
2269518768 Merge pull request #2746 from MikeMcQuaid/cleanup-tests
tests: cleanup tests.
2017-06-08 16:16:55 +03:00
Mike McQuaid
c572081f8b formula_desc_cop: tweak some rules.
Allow some specific lowercase words and provide an autocorrect for some
of these rules.
2017-06-08 15:13:10 +03:00
Mike McQuaid
7d5b8a5cea tests: cleanup tests.
Remove pending tests that are never run on CI (i.e. require `--online`),
remove fixtures for those tests and just make `--official-cmd-taps`
run by `--online` instead.
2017-06-07 16:25:07 +01:00
Mike McQuaid
28cd0d3856 Fix Linux build
Remove `testbottest` formula (this should have lived in the `brew
test-bot` repository from the outset) and make various other changes to
fix the Linux build here.
2017-05-30 09:51:06 +01:00
Markus Reiter
3139383fe6 Merge pull request #2623 from rednoah/master
Support GPG (signed data) container in Homebrew Cask
2017-05-19 20:48:35 +02:00
Reinhard Pointner
5c59b3352f Support GPG (signed data) container in Homebrew Cask (test case) 2017-05-11 16:27:45 +08:00
Markus Reiter
5828eefd01 Remove to_s from some Pathnames. 2017-05-08 13:37:28 +02:00
Mike McQuaid
57db2e539e Revert "Merge pull request #2597 from MikeMcQuaid/vendor-gems"
This reverts commit 3e4547f52e7ebec633f8bfefc8a396d944edf908, reversing
changes made to 6edf9382bcc1240ad6f97c8b752cfe56cef9965d.
2017-05-07 17:28:39 +01:00
Mike McQuaid
e1bbab6ca6 Revert "Merge pull request #2603 from MikeMcQuaid/tweak-gem-vendoring"
This reverts commit 2372872974d1049c2beafe7dedb7f8f882502058, reversing
changes made to 3e4547f52e7ebec633f8bfefc8a396d944edf908.
2017-05-07 17:28:37 +01:00
Mike McQuaid
33f83be10e Tweak Gem vendoring.
If people have `HOMEBREW_RUBY_PATH` set then things explode in a rather
confusing fashion. Instead, run `bundle` for them with the arguments
that they'd want.

Also, move `macho` requires into the module itself; it's a pain having
to do everything for Bundler before requiring `pathname` which is a core
Ruby class.
2017-05-07 15:33:54 +01:00
Mike McQuaid
ee253e465b Vendor all Homebrew's gems.
Homebrew's actually ended up using a fair few gems. While we want to
avoid Bundler at runtime (and this PR still does that, in fact uses
Bundler even less at runtime than it did before) writing our own version
to use at build-time seems redundant.
2017-05-07 13:52:57 +01:00
Mike McQuaid
d02b4f321d Hide sensitive tokens from install/test/post.
Hide these tokens to avoid malicious subprocesses e.g. sending them
over the network. Also, support using these tokens with environment
filtering and clear `HOMEBREW_PATH` from subprocesses to stop them
sniffing it. Finally, use `HOMEBREW_PATH` to detect Homebrew’s user’s
PATH for e.g. `brew doctor` etc.
2017-04-22 16:31:19 +01:00
Markus Reiter
5c51c4e23b Fix test for chmod +x on binaries. 2017-04-21 14:52:35 +02:00
Valentin VĂLCIU
7532545140 add command 'cask outdated' 2017-03-15 22:58:25 +02:00
Markus Reiter
b24dc2268a Move brew cask --version into separate file. 2017-03-08 15:49:37 +01:00
Markus Reiter
9fc6c7b2be Move Cask specs into brew tests. 2017-03-05 23:08:14 +01:00
Markus Reiter
b9c9f0f687 Move Cask test helpers to test/support. 2017-03-05 19:13:06 +01:00
Markus Reiter
cc4fb35ae4 Move Cask shared_examples to test/support. 2017-03-05 00:57:34 +01:00
Markus Reiter
487294f815 Remove Minitest. 2017-02-28 22:48:57 +01:00
Markus Reiter
a554902380 Add mktmpdir helper method. 2017-02-28 15:06:32 +01:00
Markus Reiter
bb18f52516 Merge pull request #2215 from reitermarkus/spec-integration-test-helper
Use `around` hook for shared "integration test" context.
2017-02-27 17:50:54 +01:00
Markus Reiter
83c1b39946 Use around hook for shared "integration test" context. 2017-02-27 16:36:02 +01:00
Markus Reiter
76acd1e6ee Convert Version test to spec. 2017-02-27 16:27:07 +01:00
Markus Reiter
004e8175c6 Add formula spec helper. 2017-02-25 13:26:50 +01:00
Markus Reiter
ec0f2187a2 Avoid warnings when HOMEBREW_PREFIX/bin is not in PATH. 2017-02-25 09:08:05 +01:00
Markus Reiter
9dda84ad6b Add integration test helper methods. 2017-02-23 09:23:22 +01:00
Markus Reiter
8bb46baebb Add RSpec support for integration commands. 2017-02-21 20:23:47 +01:00
Markus Reiter
5ec9597810 Convert OS::Mac::Keg test to spec. 2017-02-21 04:52:53 +01:00
Michael Ledin
92fe130cbb Use TEST_TMPDIR in rmdir tests. 2017-02-19 08:02:00 +03:00
Michael Ledin
5c185eaa43 Expand glob patterns. 2017-02-19 08:02:00 +03:00
Markus Reiter
ecb17f4f1d Add test for uninstall before removing artifacts. 2017-02-16 17:46:23 +01:00
Markus Reiter
e70d28cba1 Add test to check if rubocop-cask version is is outdated. 2017-02-12 23:06:35 +01:00
Alyssa Ross
9e97eadccb rubocop: trailing comma in multiline method calls
Discussed in
https://github.com/Homebrew/brew/pull/1987/files#r100693581.

This was originally ommitted because it wasn't compatible with Ruby 1.8.
(See https://github.com/Homebrew/legacy-homebrew/pull/48144#r49928971).
2017-02-12 15:11:38 +00:00
Markus Reiter
cdcf362fc0 Add spec_helper. 2017-02-11 15:59:54 +01:00
Markus Reiter
9d96a5c512 Use Open3 for integration tests instead of manually forking. 2017-02-11 13:42:11 +01:00
ilovezfs
67bdeb463a Revert "Use Open3 for integration tests instead of manually forking." 2017-02-10 19:28:40 -08:00
Markus Reiter
956daf37a0 Use Open3 for integration tests instead of manually forking. 2017-02-09 17:17:48 +01:00
Markus Reiter
4eef60c6a6 Remove TestCask class. 2017-02-03 21:52:51 +01:00
Markus Reiter
98b6766f4e Require formulary and tap in Homebrew::TestCase. 2017-02-03 17:27:36 +01:00
Markus Reiter
ac92144654 Add comment about FSLeakLogger to Homebrew::TestCase. 2017-02-03 17:27:36 +01:00
Markus Reiter
b765853969 Use constant array of constants in Homebrew::TestCase. 2017-02-03 17:27:36 +01:00
Markus Reiter
f35c6c8cf1 Don’t use before_setup and after_teardown. 2017-02-03 17:27:36 +01:00
Markus Reiter
e40c63f77c Use array of constants to set up test directories. 2017-02-03 17:27:36 +01:00
Markus Reiter
f717831a03 Move Cask fixtures to test/support/fixtures. 2017-01-25 13:33:12 +01:00
Alyssa Ross
62a0c3a6f5 tests: remove env helper 2017-01-23 13:39:33 +00:00
Alyssa Ross
19e61355b3 tests: remove with_git_env method
A common git environment is now used in all tests, so this is no longer
required.
2017-01-22 20:54:37 +00:00