tests: add leaves & prune integration tests
Closes Homebrew/homebrew#48943. Signed-off-by: Baptiste Fontaine <batifon@yahoo.fr>
This commit is contained in:
parent
570345d1a0
commit
eba429d947
@ -639,6 +639,56 @@ class IntegrationCommandTests < Homebrew::TestCase
|
|||||||
(HOMEBREW_REPOSITORY/".git").rmtree
|
(HOMEBREW_REPOSITORY/".git").rmtree
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_leaves
|
||||||
|
formula_dir = CoreFormulaRepository.new.formula_dir
|
||||||
|
formula_file1 = formula_dir/"testball1.rb"
|
||||||
|
formula_file2 = formula_dir/"testball2.rb"
|
||||||
|
formula_file1.write <<-EOS.undent
|
||||||
|
class Testball1 < Formula
|
||||||
|
url "https://example.com/testball1-0.1.tar.gz"
|
||||||
|
end
|
||||||
|
EOS
|
||||||
|
formula_file2.write <<-EOS.undent
|
||||||
|
class Testball2 < Formula
|
||||||
|
url "https://example.com/testball2-0.1.tar.gz"
|
||||||
|
depends_on "testball1"
|
||||||
|
end
|
||||||
|
EOS
|
||||||
|
assert_equal "", cmd("leaves")
|
||||||
|
|
||||||
|
(HOMEBREW_CELLAR/"testball1/0.1/somedir").mkpath
|
||||||
|
assert_equal "testball1", cmd("leaves")
|
||||||
|
|
||||||
|
(HOMEBREW_CELLAR/"testball2/0.1/somedir").mkpath
|
||||||
|
assert_equal "testball2", cmd("leaves")
|
||||||
|
ensure
|
||||||
|
(HOMEBREW_CELLAR/"testball1").rmtree
|
||||||
|
(HOMEBREW_CELLAR/"testball2").rmtree
|
||||||
|
formula_file1.unlink
|
||||||
|
formula_file2.unlink
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_prune
|
||||||
|
share = (HOMEBREW_PREFIX/"share")
|
||||||
|
|
||||||
|
(share/"pruneable/directory/here").mkpath
|
||||||
|
(share/"notpruneable/file").write "I'm here"
|
||||||
|
FileUtils.ln_s "/i/dont/exist/no/really/i/dont", share/"pruneable_symlink"
|
||||||
|
|
||||||
|
assert_match %r{Would remove \(empty directory\): .*/pruneable/directory/here},
|
||||||
|
cmd("prune", "--dry-run")
|
||||||
|
assert_match "Pruned 1 symbolic links and 3 directories",
|
||||||
|
cmd("prune")
|
||||||
|
refute (share/"pruneable").directory?
|
||||||
|
assert (share/"notpruneable").directory?
|
||||||
|
refute (share/"pruneable_symlink").symlink?
|
||||||
|
|
||||||
|
assert_equal "Nothing pruned",
|
||||||
|
cmd("prune", "--verbose")
|
||||||
|
ensure
|
||||||
|
share.rmtree
|
||||||
|
end
|
||||||
|
|
||||||
def test_custom_command
|
def test_custom_command
|
||||||
mktmpdir do |path|
|
mktmpdir do |path|
|
||||||
cmd = "int-test-#{rand}"
|
cmd = "int-test-#{rand}"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user