diff options
| author | Joshua Peek <josh@joshpeek.com> | 2012-07-23 12:13:08 -0500 |
|---|---|---|
| committer | Joshua Peek <josh@joshpeek.com> | 2012-07-23 12:13:08 -0500 |
| commit | d6fb95b06f960e4cd11cf0aeadfd1a0c52cba060 (patch) | |
| tree | 66d3fff1277328196d75dab671c15da43bee57a0 /test | |
| parent | db88e143ba96f21502942ad7f39c19307b9a6e02 (diff) | |
Add nested md5 digest
Diffstat (limited to 'test')
| -rw-r--r-- | test/test_md5.rb | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/test/test_md5.rb b/test/test_md5.rb new file mode 100644 index 0000000..789e8b3 --- /dev/null +++ b/test/test_md5.rb @@ -0,0 +1,59 @@ +require 'linguist/md5' + +require 'test/unit' + +class TestMD5 < Test::Unit::TestCase + include Linguist + + def test_hexdigest_string + assert_equal "af0ede4f95acad6d331a813dc3904c11", MD5.hexdigest("foo") + assert_equal "05427b9908edb6995ed76faa23e4471f", MD5.hexdigest("bar") + end + + def test_hexdigest_symbol + assert_equal "450c1ae043459546517b3dd2f98250f0", MD5.hexdigest(:foo) + assert_equal "f06967526af9d7a512594b0a81b31ede", MD5.hexdigest(:bar) + + assert_not_equal MD5.hexdigest("foo"), MD5.hexdigest(:foo) + end + + def test_hexdigest_integer + assert_equal "7605ec17fd7fd213fdcd23cac302cbb4", MD5.hexdigest(1) + assert_equal "097c311a46d330e4e119ba2b1dc0f9a5", MD5.hexdigest(2) + + assert_not_equal MD5.hexdigest("1"), MD5.hexdigest(1) + end + + def test_hexdigest_boolean + assert_equal "a690a0615820e2e5c53901d8b8958509", MD5.hexdigest(true) + assert_equal "fca6a9b459e702fa93513c6a8b8c5dfe", MD5.hexdigest(false) + + assert_not_equal MD5.hexdigest("true"), MD5.hexdigest(true) + assert_not_equal MD5.hexdigest("false"), MD5.hexdigest(false) + end + + def test_hexdigest_nil + assert_equal "35589a1cc0b3ca90fc52d0e711c0c434", MD5.hexdigest(nil) + + assert_not_equal MD5.hexdigest("nil"), MD5.hexdigest(nil) + end + + def test_hexdigest_array + assert_equal "4410ec34d9e6c1a68100ca0ce033fb17", MD5.hexdigest([]) + assert_equal "a57e31bc7bce57d04dd6a07e74fd0d88", MD5.hexdigest([1]) + assert_equal "ecbda6354c6e0370df33d43ce14701f4", MD5.hexdigest([1, 2]) + assert_equal "5c42a2601d344f359017e2b76390e2cc", MD5.hexdigest([1, 2, 3]) + assert_equal "c1816755a379d2b32289647ad1870d12", MD5.hexdigest([1, 2, [3]]) + end + + def test_hexdigest_hash + assert_equal "fae8a9257e154175da4193dbf6552ef6", MD5.hexdigest({}) + assert_equal "b3646d6d84a803baa5ee2e5354057a65", MD5.hexdigest({:a => 1}) + assert_equal "92c08085470d42ca0d33dd3ec5a8e098", MD5.hexdigest({:b => 2}) + + assert_not_equal MD5.hexdigest([:b, 2]), MD5.hexdigest({:b => 2}) + + assert_equal MD5.hexdigest({:b => 2, :a => 1}), MD5.hexdigest({:a => 1, :b => 2}) + assert_equal MD5.hexdigest({:c => 3, :b => 2, :a => 1}), MD5.hexdigest({:a => 1, :b => 2, :c => 3}) + end +end |
