Move checksum tests to separate file.

This commit is contained in:
Adam Vandenberg 2010-03-16 12:08:34 -07:00
parent 4c2a8a7f1c
commit 259ae27cc4
3 changed files with 47 additions and 21 deletions

View File

@ -1,57 +1,82 @@
require 'testing_env'
require 'extend/ARGV' # needs to be after test/unit to avoid conflict with OptionsParser
ARGV.extend(HomebrewArgvExtension)
require 'formula'
require 'utils'
class TestBall <Formula
# name parameter required for some Formula::factory
def initialize name=nil
@url="file:///#{TEST_FOLDER}/testball-0.1.tbz"
@homepage = 'http://example.com/'
super "testball"
end
def install
prefix.install "bin"
prefix.install "libexec"
end
end
class ChecksumTests < Test::Unit::TestCase
def good_checksum f
assert_nothing_raised { nostdout { f.new.brew {} } }
end
def bad_checksum f
assert_raises RuntimeError do
nostdout { f.new.brew {} }
end
end
def test_md5
valid_md5 = Class.new(TestBall) do
@md5='71aa838a9e4050d1876a295a9e62cbe6'
end
assert_nothing_raised { nostdout { valid_md5.new.brew {} } }
good_checksum valid_md5
end
def test_badmd5
invalid_md5 = Class.new(TestBall) do
@md5='61aa838a9e4050d1876a295a9e62cbe6'
end
assert_raises RuntimeError do
nostdout { invalid_md5.new.brew {} }
end
bad_checksum invalid_md5
end
def test_sha1
valid_sha1 = Class.new(TestBall) do
@sha1='6ea8a98acb8f918df723c2ae73fe67d5664bfd7e'
end
assert_nothing_raised { nostdout { valid_sha1.new.brew {} } }
good_checksum valid_sha1
end
def test_badsha1
invalid_sha1 = Class.new(TestBall) do
@sha1='7ea8a98acb8f918df723c2ae73fe67d5664bfd7e'
end
assert_raises RuntimeError do
nostdout { invalid_sha1.new.brew {} }
end
bad_checksum invalid_sha1
end
def test_sha256
valid_sha256 = Class.new(TestBall) do
@sha256='ccbf5f44743b74add648c7e35e414076632fa3b24463d68d1f6afc5be77024f8'
end
assert_nothing_raised do
nostdout { valid_sha256.new.brew {} }
end
good_checksum valid_sha256
end
def test_badsha256
invalid_sha256 = Class.new(TestBall) do
@sha256='dcbf5f44743b74add648c7e35e414076632fa3b24463d68d1f6afc5be77024f8'
end
assert_raises RuntimeError do
nostdout { invalid_sha256.new.brew {} }
end
bad_checksum invalid_sha256
end
end

View File

@ -11,6 +11,8 @@ ruby unittest.rb $*
ruby test_versions.rb $*
ruby test_checksums.rb $*
ruby test_inreplace.rb $*
# Test hardware sniffers

View File

@ -104,5 +104,4 @@ module ExtendArgvPlusYeast
end
ARGV.extend ExtendArgvPlusYeast
require 'test/test_checksums'
require 'test/test_bucket'