diff options
| author | Mike McQuaid | 2017-03-21 17:31:31 +0000 |
|---|---|---|
| committer | GitHub | 2017-03-21 17:31:31 +0000 |
| commit | 4117d198ccff6b220ca3e26882f1f3904130b984 (patch) | |
| tree | 86a9e08a44b57912588b939fc2388bb9a16b4da2 /Library/Homebrew/test | |
| parent | 7095b9b3c7ca8584a4e7528aa62f0ae87e3afdc0 (diff) | |
| parent | f59eb358c29c5f40601a99e3f1bf7e8e891f10ba (diff) | |
| download | brew-4117d198ccff6b220ca3e26882f1f3904130b984.tar.bz2 | |
Merge pull request #1732 from zmwangx/hint-migrations
Hint at new location of migrated formulae
Diffstat (limited to 'Library/Homebrew/test')
| -rw-r--r-- | Library/Homebrew/test/blacklist_spec.rb | 115 | ||||
| -rw-r--r-- | Library/Homebrew/test/cmd/log_spec.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/test/missing_formula_spec.rb | 179 |
3 files changed, 180 insertions, 116 deletions
diff --git a/Library/Homebrew/test/blacklist_spec.rb b/Library/Homebrew/test/blacklist_spec.rb deleted file mode 100644 index 01882167d..000000000 --- a/Library/Homebrew/test/blacklist_spec.rb +++ /dev/null @@ -1,115 +0,0 @@ -require "blacklist" - -describe "Blacklist" do - matcher(:be_blacklisted) { match(&method(:blacklisted?)) } - - context "rubygems" do - %w[gem rubygem rubygems].each do |s| - subject { s } - - it { is_expected.to be_blacklisted } - end - end - - context "latex" do - %w[latex tex tex-live texlive TexLive].each do |s| - subject { s } - - it { is_expected.to be_blacklisted } - end - end - - context "pip" do - subject { "pip" } - - it { is_expected.to be_blacklisted } - end - - context "pil" do - subject { "pil" } - - it { is_expected.to be_blacklisted } - end - - context "macruby" do - subject { "MacRuby" } - - it { is_expected.to be_blacklisted } - end - - context "lzma" do - %w[lzma liblzma].each do |s| - subject { s } - - it { is_expected.to be_blacklisted } - end - end - - context "gtest" do - %w[gtest googletest google-test].each do |s| - subject { s } - - it { is_expected.to be_blacklisted } - end - end - - context "gmock" do - %w[gmock googlemock google-mock].each do |s| - subject { s } - - it { is_expected.to be_blacklisted } - end - end - - context "sshpass" do - subject { "sshpass" } - - it { is_expected.to be_blacklisted } - end - - context "gsutil" do - subject { "gsutil" } - - it { is_expected.to be_blacklisted } - end - - context "clojure" do - subject { "clojure" } - - it { is_expected.to be_blacklisted } - end - - context "osmium" do - %w[osmium Osmium].each do |s| - subject { s } - - it { is_expected.to be_blacklisted } - end - end - - context "gfortran" do - subject { "gfortran" } - - it { is_expected.to be_blacklisted } - end - - context "play" do - subject { "play" } - - it { is_expected.to be_blacklisted } - end - - context "haskell-platform" do - subject { "haskell-platform" } - - it { is_expected.to be_blacklisted } - end - - context "xcode", :needs_macos do - %w[xcode Xcode].each do |s| - subject { s } - - it { is_expected.to be_blacklisted } - end - end -end diff --git a/Library/Homebrew/test/cmd/log_spec.rb b/Library/Homebrew/test/cmd/log_spec.rb index bdbca8912..b9e3e8d3e 100644 --- a/Library/Homebrew/test/cmd/log_spec.rb +++ b/Library/Homebrew/test/cmd/log_spec.rb @@ -33,7 +33,7 @@ describe "brew log", :integration_test do expect { brew "log", "#{shallow_tap}/testball" } .to output(/This is a test commit for Testball/).to_stdout - .and output(/Warning: The git repository is a shallow clone/).to_stderr + .and output(%r{Warning: homebrew/shallow is a shallow clone}).to_stderr .and be_a_success expect(shallow_tap.path/".git/shallow").to exist, "A shallow clone should have been created." diff --git a/Library/Homebrew/test/missing_formula_spec.rb b/Library/Homebrew/test/missing_formula_spec.rb new file mode 100644 index 000000000..f395965a6 --- /dev/null +++ b/Library/Homebrew/test/missing_formula_spec.rb @@ -0,0 +1,179 @@ +require "missing_formula" + +describe Homebrew::MissingFormula do + context "::reason" do + subject { described_class.reason("gem") } + + it { is_expected.to_not be_nil } + end + + context "::blacklisted_reason" do + matcher(:be_blacklisted) do + match(&Homebrew::MissingFormula.method(:blacklisted_reason)) + end + + context "rubygems" do + %w[gem rubygem rubygems].each do |s| + subject { s } + + it { is_expected.to be_blacklisted } + end + end + + context "latex" do + %w[latex tex tex-live texlive TexLive].each do |s| + subject { s } + + it { is_expected.to be_blacklisted } + end + end + + context "pip" do + subject { "pip" } + + it { is_expected.to be_blacklisted } + end + + context "pil" do + subject { "pil" } + + it { is_expected.to be_blacklisted } + end + + context "macruby" do + subject { "MacRuby" } + + it { is_expected.to be_blacklisted } + end + + context "lzma" do + %w[lzma liblzma].each do |s| + subject { s } + + it { is_expected.to be_blacklisted } + end + end + + context "gtest" do + %w[gtest googletest google-test].each do |s| + subject { s } + + it { is_expected.to be_blacklisted } + end + end + + context "gmock" do + %w[gmock googlemock google-mock].each do |s| + subject { s } + + it { is_expected.to be_blacklisted } + end + end + + context "sshpass" do + subject { "sshpass" } + + it { is_expected.to be_blacklisted } + end + + context "gsutil" do + subject { "gsutil" } + + it { is_expected.to be_blacklisted } + end + + context "clojure" do + subject { "clojure" } + + it { is_expected.to be_blacklisted } + end + + context "osmium" do + %w[osmium Osmium].each do |s| + subject { s } + + it { is_expected.to be_blacklisted } + end + end + + context "gfortran" do + subject { "gfortran" } + + it { is_expected.to be_blacklisted } + end + + context "play" do + subject { "play" } + + it { is_expected.to be_blacklisted } + end + + context "haskell-platform" do + subject { "haskell-platform" } + + it { is_expected.to be_blacklisted } + end + + context "xcode", :needs_macos do + %w[xcode Xcode].each do |s| + subject { s } + + it { is_expected.to be_blacklisted } + end + end + end + + context "::tap_migration_reason" do + subject { described_class.tap_migration_reason(formula) } + + before do + Tap.clear_cache + tap_path = Tap::TAP_DIRECTORY/"homebrew/homebrew-foo" + tap_path.mkpath + (tap_path/"tap_migrations.json").write <<-EOS.undent + { "migrated-formula": "homebrew/bar" } + EOS + end + + context "with a migrated formula" do + let(:formula) { "migrated-formula" } + it { is_expected.to_not be_nil } + end + + context "with a missing formula" do + let(:formula) { "missing-formula" } + it { is_expected.to be_nil } + end + end + + context "::deleted_reason" do + subject { described_class.deleted_reason(formula) } + + before do + Tap.clear_cache + tap_path = Tap::TAP_DIRECTORY/"homebrew/homebrew-foo" + tap_path.mkpath + (tap_path/"deleted-formula.rb").write "placeholder" + + tap_path.cd do + shutup do + system "git", "init" + system "git", "add", "--all" + system "git", "commit", "-m", "initial state" + system "git", "rm", "deleted-formula.rb" + system "git", "commit", "-m", "delete formula 'deleted-formula'" + end + end + end + + context "with a deleted formula" do + let(:formula) { "homebrew/foo/deleted-formula" } + it { is_expected.to_not be_nil } + end + + context "with a formula that never existed" do + let(:formula) { "homebrew/foo/missing-formula" } + it { is_expected.to be_nil } + end + end +end |
