diff options
Diffstat (limited to 'Library/Homebrew/test')
| -rw-r--r-- | Library/Homebrew/test/test_cleaner.rb | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Library/Homebrew/test/test_cleaner.rb b/Library/Homebrew/test/test_cleaner.rb new file mode 100644 index 000000000..e9e9c96ef --- /dev/null +++ b/Library/Homebrew/test/test_cleaner.rb @@ -0,0 +1,38 @@ +require 'testing_env' + +require 'extend/ARGV' # needs to be after test/unit to avoid conflict with OptionsParser +ARGV.extend(HomebrewArgvExtension) + +require 'cleaner' + +class CleanerTestBall < Formula + def initialize name=nil + @url="file:///#{TEST_FOLDER}/tarballs/testball-0.1.tbz" + @homepage = 'http://example.com/' + super "cleanertestball" + end + + def install + TEST_FOLDER.cd do + bin.mkpath + lib.mkpath + cp 'mach/a.out', bin + cp 'mach/fat.dylib', lib + cp 'mach/x86_64.dylib', lib + cp 'mach/i386.dylib', lib + end + end +end + +class CleanerTests < Test::Unit::TestCase + def test_clean_file + f = CleanerTestBall.new + nostdout { f.brew { f.install } } + + assert_nothing_raised { Cleaner.new f } + assert_equal 0100555, (f.bin/'a.out').stat.mode + assert_equal 0100444, (f.lib/'fat.dylib').stat.mode + assert_equal 0100444, (f.lib/'x86_64.dylib').stat.mode + assert_equal 0100444, (f.lib/'i386.dylib').stat.mode + end +end |
