2238 Commits

Author SHA1 Message Date
Mike McQuaid
7853406fb4 Merge pull request #1515 from alyssais/formula_cache
Fix flaky tests.
2016-11-18 15:37:49 +00:00
Mike McQuaid
e8d5040141 testbottest: don't use TEST_FIXTURE_DIR.
This isn't defined for formulae.
2016-11-18 14:08:40 +00:00
Kaito Udagawa
e9815bf2bd install: add tests with custom requirements 2016-11-18 20:47:46 +09:00
Zhiming Wang
00532a3e3a
formula: update test_fixtures path
Fix regression caused by #1364.
2016-11-17 15:54:51 -05:00
Alyssa Ross
5baf16f50e Revert "uninstall: skip some flaky tests for now."
This reverts commit 50c964df2ebda125366a94f0e8701eaeb0d98fa7.
2016-11-17 14:26:00 +00:00
Alyssa Ross
8bfc205a87 tab: clear Formula.installed cache when created.
This was causing the flaky tests that #1508 started skipping.

This is the second time that `Formula.installed`'s cache has bitten
me with intermittent test failures, and I'd like it to be the last,
so I've made it so the cache is cleared automatically when a tab is
created. This _should_ mean that the cache is cleared any time it
needs to be, with the exception of when a Keg is created artificially
with no tab. I don't think there's anything I can do to automatically
handle that use-case, though.
2016-11-17 14:26:00 +00:00
Markus Reiter
7457af2b23 Move test files back directly to test/. 2016-11-16 23:52:38 +01:00
Markus Reiter
9dc1f8f3cd Require integration_command_test_case in testing_env. 2016-11-16 23:52:38 +01:00
Markus Reiter
9d82acbf30 Separate Homebrew::TestCase from testing_env. 2016-11-16 23:52:38 +01:00
Markus Reiter
7b9fd538fa Move integration_mocks to test/support/helper. 2016-11-16 23:52:38 +01:00
Markus Reiter
4db1317f38 Move all remaining fixtures to test/support/fixtures. 2016-11-16 23:52:38 +01:00
Markus Reiter
4efdbbde06 Rename fs_leak_log to fs_leak.log and move to tmp. 2016-11-16 23:52:37 +01:00
Markus Reiter
6b6b27126d Reorder and rename test files. 2016-11-16 23:52:37 +01:00
Mike McQuaid
50c964df2e uninstall: skip some flaky tests for now.
These will be fixed properly later but this will avoid causing
unnecessary CI failures.
2016-11-15 14:32:13 +00:00
Mike McQuaid
484e3e0769 Merge pull request #1498 from alyssais/uninstall_developer_warning
Warn developers when uninstalling a dependency
2016-11-15 08:15:42 +00:00
Misty De Meo
30fdbe089b Merge pull request #1435 from mistydemeo/dev_tools_version
Add "null version" class, and return compiler versions/build versions as Version objects
2016-11-14 13:44:03 -08:00
Markus Reiter
3a01fbadcd Merge pull request #1362 from reitermarkus/rubocop
Update RuboCop to 0.45.0.
2016-11-14 16:50:24 +01:00
Alyssa Ross
3c310b2e3d Warn developers when uninstalling a dependency
Suggested in #1084.

Made the existing warning output entirely to STDERR, because
previously the first line went to STDERR and subsequent ones went
to STDOUT.
2016-11-14 12:13:34 +00:00
Mike McQuaid
5a5cbe41bd Merge pull request #1497 from alyssais/uninstall_keg_to_formula
keg: don't rely on #to_formula
2016-11-14 08:02:51 +00:00
Alyssa Ross
f7f72093a8 keg: don't rely on #to_formula
It doesn't always work.
For example, a keg could have been installed with a formula from a
URL, which Homebrew now does not know how to access.

Fixes #1496.
2016-11-13 23:20:38 +00:00
Markus Reiter
59e2d67721 No if/unless-modifier on multiline blocks. 2016-11-13 23:37:40 +01:00
Mike McQuaid
2a53d14b51 Merge pull request #1217 from MatzFan/invalid_build_option_warnings
Invalid build option warnings - supersedes #1088
2016-11-13 10:50:51 +00:00
Bruce Steedman
592905d3da fix test 2016-11-12 12:13:27 +00:00
Mike McQuaid
b32fafa82c formulary: don't warn on old formula name from keg/rack.
If there’s an old installation of e.g. `apple-gcc42` from when it was
part of `homebrew/core` then the tab will say it was from the
`homebrew/core` tap and then we’ll complain at the user (see #1459 for
an example). Instead, we only want to complain when the user actually
types in `homebrew/core/apple-gcc42` into a `brew` command.

Closes #1459.
2016-11-11 16:42:29 +00:00
Mike McQuaid
2ce17a1137 Merge pull request #1082 from alyssais/uninstall_dependancy_error
uninstall: refuse when dependents still installed
2016-11-11 08:23:57 +00:00
Misty De Meo
c7be025229 CompilerSelector: fix null check, tests 2016-11-10 15:09:36 -08:00
Misty De Meo
16529a4de5 Version: allow coercing non-versions in comparisons
These are needed due to the raw string and fixnum comparisons which
exist for legacy reasons, for instance compiler version and build
comparisons.
2016-11-10 15:08:36 -08:00
Misty De Meo
b6acb9cb47 Version: allow comparing against nil 2016-11-10 15:08:36 -08:00
Misty De Meo
fbcf500a48 Version.parse: return Version::NULL for unparseable strings 2016-11-10 15:08:36 -08:00
Misty De Meo
9bac107b31 Add Version::NULL singleton 2016-11-10 15:08:36 -08:00
Misty De Meo
9f03a0b255 Tap tests: sort tap names for comparison 2016-11-08 11:38:59 -08:00
Markus Reiter
f863d61374 Move vendor/bundle up one level to HOMEBREW_LIBRARY_PATH. 2016-10-29 18:28:07 +02:00
Alyssa Ross
ec83d1decb uninstall: remove more integration tests 2016-10-26 15:07:06 +01:00
Alyssa Ross
b71ce88fa1 test_uninstall: style fixes 2016-10-26 00:04:12 +01:00
Alyssa Ross
bb30b01d5d uninstall: go easier on the integration tests 2016-10-25 23:53:59 +01:00
Alyssa Ross
3702e561d6 uninstall: test should_check_for_dependents? 2016-10-25 23:53:10 +01:00
Alyssa Ross
c4c855b9fc ARGV: extract #values from missing 2016-10-25 22:36:13 +01:00
Alyssa Ross
a4dc835ba0 uninstall: call Formula#missing_dependencies directly 2016-10-25 22:36:13 +01:00
Alyssa Ross
ef13f8eaca uninstall: only <=1 Diagnostic.missing_deps call 2016-10-25 22:34:35 +01:00
Alyssa Ross
452691528d Revert "keg: fallback to missing_deps if deps not in tab"
This reverts commit da1caba17c624f03fa8e6fbe59683f57fb7ac17a.
2016-10-25 22:34:35 +01:00
Alyssa Ross
ae3f53a1ec keg: fallback to missing_deps if deps not in tab 2016-10-25 22:34:35 +01:00
Alyssa Ross
8e3e8e31c2 missing: add tests for not missing and hide 2016-10-25 22:34:35 +01:00
Alyssa Ross
7792acda52 uninstall: allow dependent checks to be by-passed
Dependent can be bypassed with `--ignore-dependencies`.
This is now the default for `HOMEBREW_DEVELOPER`s.
2016-10-25 22:34:35 +01:00
Alyssa Ross
13d705c5e7 integration tests: preserve HOMEBREW_DEVELOPER
This means that run_as_not_developer can be used in integration tests
2016-10-25 22:34:34 +01:00
Alyssa Ross
ecb1075390 uninstall: check for dependents even with --force 2016-10-25 22:34:34 +01:00
Alyssa Ross
888c44b238 uninstall: fix dependent order bug 2016-10-25 22:34:34 +01:00
Alyssa Ross
08c898f280 integration tests: testball install overridable 2016-10-25 22:34:34 +01:00
Alyssa Ross
08f3aecf6b uninstall: consistent spelling of "dependent"
@ilovezfs pointed out that Homebrew generally uses "dependent", rather than
"dependant".
2016-10-25 22:34:34 +01:00
Alyssa Ross
6f0aabe707 uninstall: refuse when dependants still installed
Closes #934.
2016-10-25 22:34:34 +01:00
Josh Hagins
9c519bbdbc keg_relocate: refactor relocate_text_files
Replace relocate_text_files with three methods that clarify intent:
replace_locations_with_placeholders, replace_placeholders_with_locations
and replace_text_in_files, the first two calling the third.
2016-10-24 16:21:08 -04:00