diff options
| author | Max Howell | 2010-09-11 20:22:54 +0100 |
|---|---|---|
| committer | Adam Vandenberg | 2011-03-12 11:55:02 -0800 |
| commit | 768910283a40afc2f76ef196d1464f0bbb2349cd (patch) | |
| tree | 0befe8fb3c3d8e967a34a29b11b6d85ecbfcbc9b /Library/Homebrew/test/test_external_deps.rb | |
| parent | 97f654701d17c8605632a0d77570a2d9c6893ddf (diff) | |
| download | brew-768910283a40afc2f76ef196d1464f0bbb2349cd.tar.bz2 | |
Refactor the brew command into one file per command
The code was sucking. To the extent that maintenance was hard. It's a lot
easier to work with code that is sensibly split at sensible boundaries. So
now it is more like that.
But the refactor is minimal. Because we don't want you to have more merge
hell than absolutely necessary.
If you merge you will need to pay attention to brew.h.rb (as it is deleted)
and bin/brew (as command logic is gone). It will be painful, but you will just
have to help git out by moving any changes around manually.
Note compatibility.rb. It ensures that any function renames or removals don't
break anything. We're pretty serious about backwards compatibility. And that's
because we encourage you to hack around with the innards. And we couldn't do
that if we would then just make stuff disappear behind your back.
Diffstat (limited to 'Library/Homebrew/test/test_external_deps.rb')
| -rw-r--r-- | Library/Homebrew/test/test_external_deps.rb | 34 |
1 files changed, 4 insertions, 30 deletions
diff --git a/Library/Homebrew/test/test_external_deps.rb b/Library/Homebrew/test/test_external_deps.rb index 2b96e7678..30b3540d9 100644 --- a/Library/Homebrew/test/test_external_deps.rb +++ b/Library/Homebrew/test/test_external_deps.rb @@ -3,38 +3,12 @@ require 'testing_env' require 'extend/ARGV' # needs to be after test/unit to avoid conflict with OptionsParser ARGV.extend(HomebrewArgvExtension) +require 'extend/string' require 'test/testball' require 'formula_installer' require 'utils' -# Custom formula installer that checks deps but does not -# run the install code. We also override the external dep -# install messages, so for instance the Python check doesnt -# look for the pip formula (which isn't avaialble in test -# mode.) -class DontActuallyInstall < FormulaInstaller - def install_private f ; end - - def pyerr dep - "Python module install message." - end - - def plerr dep - "Perl module install message." - end - - def rberr dep - "Ruby module install message." - end - - def jrberr dep - "JRuby module install message." - end -end - - - class BadPerlBall <TestBall depends_on "notapackage" => :perl @@ -102,14 +76,14 @@ end class ExternalDepsTests < Test::Unit::TestCase def check_deps_fail f - assert_raises(RuntimeError) do - DontActuallyInstall.new.install f.new + assert_raises(UnsatisfiedExternalDependencyError) do + FormulaInstaller.check_external_deps f.new end end def check_deps_pass f assert_nothing_raised do - DontActuallyInstall.new.install f.new + FormulaInstaller.check_external_deps f.new end end |
