// test_fnv.c // FNV unit test for libutil // Copyright (C) 2021, Jakob Wakeling // MIT Licence #include "../fnv.h" #include "../util.h" #include "unit.h" #include int main(void) { { u32 fnv32 = fnv1a32("123456789", 9); ASSERT("T000 HASH STRING fnv1a32()", fnv32 == 0xBB86B11C); } { u32 fnv32; fnv1a32_init(&fnv32); fnv1a32_hash(&fnv32, "123456789", 9); ASSERT("T001 HASH STRING fnv1a32_hash()", fnv32 == 0xBB86B11C); } { u64 fnv64 = fnv1a64("123456789", 9); ASSERT("T002 HASH STRING fnv1a64()", fnv64 == 0x06D5573923C6CDFC); } { u64 fnv64; fnv1a64_init(&fnv64); fnv1a64_hash(&fnv64, "123456789", 9); ASSERT("T003 HASH STRING fnv1a64_hash()", fnv64 == 0x06D5573923C6CDFC); } printf("%d of %d tests passed\n", testspassed, testsrun); return testsfailed; }