diff options
| author | Jack Nagel | 2013-10-30 00:43:10 -0500 |
|---|---|---|
| committer | Jack Nagel | 2013-10-30 10:16:20 -0500 |
| commit | 2dd44f77914f1e0927064735e771298cee533e7a (patch) | |
| tree | c9f7ba765d72f33195a75934f4ad6b983b33a699 /Library/Homebrew | |
| parent | a5b2814770f4c1a564d73b3a30ca40b86f99711a (diff) | |
| download | brew-2dd44f77914f1e0927064735e771298cee533e7a.tar.bz2 | |
Resource: push conditional down into #verify_download_integrity
Diffstat (limited to 'Library/Homebrew')
| -rw-r--r-- | Library/Homebrew/resource.rb | 7 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_resource.rb | 6 |
2 files changed, 7 insertions, 6 deletions
diff --git a/Library/Homebrew/resource.rb b/Library/Homebrew/resource.rb index c7d73ffa7..8fd9dc7b3 100644 --- a/Library/Homebrew/resource.rb +++ b/Library/Homebrew/resource.rb @@ -48,8 +48,7 @@ class Resource # If block is given, yield to that block # A target or a block must be given, but not both def stage(target=nil) - fetched = fetch - verify_download_integrity(fetched) if fetched.respond_to?(:file?) and fetched.file? + verify_download_integrity(fetch) mktemp(download_name) do downloader.stage if block_given? @@ -75,7 +74,9 @@ class Resource end def verify_download_integrity fn - fn.verify_checksum(checksum) + if fn.respond_to?(:file?) && fn.file? + fn.verify_checksum(checksum) + end rescue ChecksumMissingError opoo "Cannot verify integrity of #{fn.basename}" puts "A checksum was not provided for this resource" diff --git a/Library/Homebrew/test/test_resource.rb b/Library/Homebrew/test/test_resource.rb index 50ebd4c0f..d895c2cb6 100644 --- a/Library/Homebrew/test/test_resource.rb +++ b/Library/Homebrew/test/test_resource.rb @@ -106,15 +106,15 @@ class ResourceTests < Test::Unit::TestCase fn = Pathname.new('test') checksum = @resource.sha1('baadidea'*5) - fn.expects(:verify_checksum). - with(checksum).raises(ChecksumMissingError) + fn.stubs(:file? => true) + fn.expects(:verify_checksum).raises(ChecksumMissingError) fn.expects(:sha1) shutup { @resource.verify_download_integrity(fn) } end def test_verify_download_integrity_mismatch - fn = Object.new + fn = stub(:file? => true) checksum = @resource.sha1('baadidea'*5) fn.expects(:verify_checksum).with(checksum). |
