From 2b0a3d528f5623f28d8f4ecb7682836920e6c391 Mon Sep 17 00:00:00 2001 From: Technorama team Date: Sun, 27 Jun 2004 06:06:11 +0000 Subject: add more tests --- test/tc_cipher.rb | 20 ++++++++++++++++++++ test/tc_digest.rb | 27 ++++++++++++++++++++------- test/tc_hmac.rb | 27 +++++++++++++-------------- 3 files changed, 53 insertions(+), 21 deletions(-) diff --git a/test/tc_cipher.rb b/test/tc_cipher.rb index 6149eca..2f619ca 100755 --- a/test/tc_cipher.rb +++ b/test/tc_cipher.rb @@ -70,6 +70,26 @@ class TC_Cipher < Test::Unit::TestCase def test_dup assert_equal(@c1.name, @c1.dup.name, "dup") assert_equal(@c1.name, @c1.clone.name, "clone") + + @c1.encrypt + @c1.key = @key + @c1.iv = @iv + + tmpc = @c1.dup + + s1 = @c1.update(@data) + @c1.final + s2 = tmpc.update(@data) + tmpc.final + assert_equal(s1, s2, "encrypt dup") + end + def test_reset + @c1.encrypt + @c1.key = @key + @c1.iv = @iv + + s1 = @c1.update(@data) + @c1.final + @c1.reset + s2 = @c1.update(@data) + @c1.final + assert_equal(s1, s2, "encrypt reset") end def teardown @c1 = @c2 = nil diff --git a/test/tc_digest.rb b/test/tc_digest.rb index 400f505..b1afcf8 100755 --- a/test/tc_digest.rb +++ b/test/tc_digest.rb @@ -28,21 +28,21 @@ class TC_Digest < Test::Unit::TestCase @d1 = OpenSSL::Digest::Digest::new("MD5") @d2 = OpenSSL::Digest::MD5.new @md = Digest::MD5.new + + @data = "DATA" end def test_digest - data = "DATA" - assert_equal(@md.digest, @d1.digest) assert_equal(@md.hexdigest, @d1.hexdigest) - @d1 << data - @d2 << data - @md << data + @d1 << @data + @d2 << @data + @md << @data assert_equal(@md.digest, @d1.digest) assert_equal(@md.hexdigest, @d1.hexdigest) assert_equal(@d1.digest, @d2.digest) assert_equal(@d1.hexdigest, @d2.hexdigest) - assert_equal(@md.digest, OpenSSL::Digest::MD5.digest(data)) - assert_equal(@md.hexdigest, OpenSSL::Digest::MD5.hexdigest(data)) + assert_equal(@md.digest, OpenSSL::Digest::MD5.digest(@data)) + assert_equal(@md.hexdigest, OpenSSL::Digest::MD5.hexdigest(@data)) end def test_eql assert(@d1 == @d2, "==") @@ -55,8 +55,21 @@ class TC_Digest < Test::Unit::TestCase assert_equal(16, @d1.size, "size") end def test_dup + @d1.update(@data) assert_equal(@d1.name, @d1.dup.name, "dup") assert_equal(@d1.name, @d1.clone.name, "clone") + assert_equal(@d1.digest, @d1.clone.digest, "clone .digest") + end + def test_reset + @d1.update(@data) + dig1 = @d1.digest + + @d1.reset + + @d1.update(@data) + dig2 = @d1.digest + + assert_equal(dig1, dig2, "reset") end def teardown @d1 = @d2 = @md = nil diff --git a/test/tc_hmac.rb b/test/tc_hmac.rb index 57eb2c0..d452d57 100755 --- a/test/tc_hmac.rb +++ b/test/tc_hmac.rb @@ -26,25 +26,24 @@ include OpenSSL class TC_HMAC < Test::Unit::TestCase def setup - ## - # None - # + @digest = Digest::MD5.new + @key = "KEY" + @data = "DATA" + + @h1 = HMAC::new(@key, @digest) + @h2 = HMAC::new(@key, @digest) end def test_hmac - digest = Digest::MD5.new - key = "KEY" - data = "DATA" - - h = HMAC::new(key, digest) - h.update(data) + @h1.update(@data) - assert_equal(HMAC::digest(digest, key, data), h.digest, "digest") - assert_equal(HMAC::hexdigest(digest, key, data), h.hexdigest, "hexdigest") + assert_equal(HMAC::digest(@digest, @key, @data), @h1.digest, "digest") + assert_equal(HMAC::hexdigest(@digest, @key, @data), @h1.hexdigest, "hexdigest") end def test_dup - ## - # TODO: Make some test case for - # + @h1.update(@data) + h = @h1.dup + + assert_equal(@h1.digest, h.digest, "dup digest") end def teardown ## -- cgit v1.2.3