diff options
Diffstat (limited to 'unittest/test_hash.c')
-rw-r--r-- | unittest/test_hash.c | 57 |
1 files changed, 35 insertions, 22 deletions
diff --git a/unittest/test_hash.c b/unittest/test_hash.c index 823d8e13..5278560e 100644 --- a/unittest/test_hash.c +++ b/unittest/test_hash.c @@ -17,41 +17,54 @@ // This file contains tests for functions in hash.c. #include "../src/ccache.h" +#include "../src/hash.h" #include "framework.h" -TEST_SUITE(hash) +TEST_SUITE(mdfour) TEST(test_vectors_from_rfc_1320_should_be_correct) { - struct mdfour h; + { + struct hash *h = hash_init(); + hash_string(h, ""); + CHECK_STR_EQ_FREE2("31d6cfe0d16ae931b73c59d7e0c089c0-0", hash_result(h)); + hash_free(h); + } - hash_start(&h); - hash_string(&h, ""); - CHECK_STR_EQ_FREE2("31d6cfe0d16ae931b73c59d7e0c089c0-0", hash_result(&h)); + { + struct hash *h = hash_init(); + hash_string(h, "a"); + CHECK_STR_EQ_FREE2("bde52cb31de33e46245e05fbdbd6fb24-1", hash_result(h)); + hash_free(h); + } - hash_start(&h); - hash_string(&h, "a"); - CHECK_STR_EQ_FREE2("bde52cb31de33e46245e05fbdbd6fb24-1", hash_result(&h)); + { + struct hash *h = hash_init(); + hash_string(h, "message digest"); + CHECK_STR_EQ_FREE2("d9130a8164549fe818874806e1c7014b-14", hash_result(h)); + hash_free(h); + } - hash_start(&h); - hash_string(&h, "message digest"); - CHECK_STR_EQ_FREE2("d9130a8164549fe818874806e1c7014b-14", hash_result(&h)); - - hash_start(&h); - hash_string( - &h, - "12345678901234567890123456789012345678901234567890123456789012345678901234567890"); - CHECK_STR_EQ_FREE2("e33b4ddc9c38f2199c3e7b164fcc0536-80", hash_result(&h)); + { + struct hash *h = hash_init(); + hash_string( + h, + "12345678901234567890123456789012345678901234567890123456789012345678901" + "234567890"); + CHECK_STR_EQ_FREE2("e33b4ddc9c38f2199c3e7b164fcc0536-80", hash_result(h)); + hash_free(h); + } } TEST(hash_result_should_be_idempotent) { - struct mdfour h; + struct hash *h = hash_init(); + + hash_string(h, ""); + CHECK_STR_EQ_FREE2("31d6cfe0d16ae931b73c59d7e0c089c0-0", hash_result(h)); + CHECK_STR_EQ_FREE2("31d6cfe0d16ae931b73c59d7e0c089c0-0", hash_result(h)); - hash_start(&h); - hash_string(&h, ""); - CHECK_STR_EQ_FREE2("31d6cfe0d16ae931b73c59d7e0c089c0-0", hash_result(&h)); - CHECK_STR_EQ_FREE2("31d6cfe0d16ae931b73c59d7e0c089c0-0", hash_result(&h)); + hash_free(h); } TEST_SUITE_END |