1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
require "testing_env"
require "testball"
require "cleanup"
require "fileutils"
require "pathname"
require "helper/integration_command_test_case"
class IntegrationCommandTestCleanup < IntegrationCommandTestCase
def test_cleanup
(HOMEBREW_CACHE/"test").write "test"
assert_match "#{HOMEBREW_CACHE}/test", cmd("cleanup", "--prune=all")
end
end
class CleanupTests < Homebrew::TestCase
def setup
@ds_store = Pathname.new "#{HOMEBREW_PREFIX}/Library/.DS_Store"
FileUtils.touch @ds_store
end
def teardown
FileUtils.rm_f @ds_store
ARGV.delete "--dry-run"
ARGV.delete "--prune=all"
end
def test_cleanup
shutup { Homebrew::Cleanup.cleanup }
refute_predicate @ds_store, :exist?
end
def test_cleanup_dry_run
ARGV << "--dry-run"
shutup { Homebrew::Cleanup.cleanup }
assert_predicate @ds_store, :exist?
end
def test_cleanup_formula
f1 = Class.new(Testball) { version "0.1" }.new
f2 = Class.new(Testball) { version "0.2" }.new
f3 = Class.new(Testball) { version "0.3" }.new
shutup do
f1.brew { f1.install }
f2.brew { f2.install }
f3.brew { f3.install }
end
assert_predicate f1, :installed?
assert_predicate f2, :installed?
assert_predicate f3, :installed?
shutup { Homebrew::Cleanup.cleanup_formula f3 }
refute_predicate f1, :installed?
refute_predicate f2, :installed?
assert_predicate f3, :installed?
ensure
[f1, f2, f3].each(&:clear_cache)
f3.rack.rmtree
end
def test_cleanup_logs
path = (HOMEBREW_LOGS/"delete_me")
path.mkpath
ARGV << "--prune=all"
shutup { Homebrew::Cleanup.cleanup_logs }
refute_predicate path, :exist?
end
def test_cleanup_cache_incomplete_downloads
incomplete = (HOMEBREW_CACHE/"something.incomplete")
incomplete.mkpath
shutup { Homebrew::Cleanup.cleanup_cache }
refute_predicate incomplete, :exist?
end
def test_cleanup_cache_java_cache
java_cache = (HOMEBREW_CACHE/"java_cache")
java_cache.mkpath
shutup { Homebrew::Cleanup.cleanup_cache }
refute_predicate java_cache, :exist?
end
def test_cleanup_cache_npm_cache
npm_cache = (HOMEBREW_CACHE/"npm_cache")
npm_cache.mkpath
shutup { Homebrew::Cleanup.cleanup_cache }
refute_predicate npm_cache, :exist?
end
end
|