aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorJack Nagel2013-04-07 00:49:56 -0500
committerJack Nagel2013-04-07 20:59:49 -0500
commit25fde847fc9804af9b17ac81e8ffd58ceda246da (patch)
tree92619cd3d6024b982a713def6bc41ce15c02d8f1 /Library
parent9f7cafb240b394ce0765226ccbcd1fcf9ce6e709 (diff)
downloadhomebrew-25fde847fc9804af9b17ac81e8ffd58ceda246da.tar.bz2
Tests for Checksum class
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/checksum.rb17
-rw-r--r--Library/Homebrew/test/test_checksum.rb23
2 files changed, 30 insertions, 10 deletions
diff --git a/Library/Homebrew/checksum.rb b/Library/Homebrew/checksum.rb
index 28ca023fe..a4e38e0ad 100644
--- a/Library/Homebrew/checksum.rb
+++ b/Library/Homebrew/checksum.rb
@@ -1,22 +1,19 @@
class Checksum
attr_reader :hash_type, :hexdigest
+ alias_method :to_s, :hexdigest
TYPES = [:sha1, :sha256]
- def initialize type=:sha1, val=nil
- @hash_type = type
- @hexdigest = val.to_s
+ def initialize(hash_type, hexdigest)
+ @hash_type = hash_type
+ @hexdigest = hexdigest
end
def empty?
- @hexdigest.empty?
+ hexdigest.empty?
end
- def to_s
- @hexdigest
- end
-
- def == other
- @hash_type == other.hash_type and @hexdigest == other.hexdigest
+ def ==(other)
+ hash_type == other.hash_type && hexdigest == other.hexdigest
end
end
diff --git a/Library/Homebrew/test/test_checksum.rb b/Library/Homebrew/test/test_checksum.rb
new file mode 100644
index 000000000..80cd60d2d
--- /dev/null
+++ b/Library/Homebrew/test/test_checksum.rb
@@ -0,0 +1,23 @@
+require 'testing_env'
+require 'checksum'
+
+class ChecksumTests < Test::Unit::TestCase
+ def test_empty?
+ assert_empty Checksum.new(:sha1, '')
+ end
+
+ def test_equality
+ a = Checksum.new(:sha1, 'deadbeef'*5)
+ b = Checksum.new(:sha1, 'deadbeef'*5)
+ assert_equal a, b
+
+ a = Checksum.new(:sha1, 'deadbeef'*5)
+ b = Checksum.new(:sha1, 'feedface'*5)
+ assert_not_equal a, b
+
+ a = Checksum.new(:sha1, 'deadbeef'*5)
+ b = Checksum.new(:sha256, 'deadbeef'*5)
+ assert_not_equal a, b
+ end
+end
+