From 1ee4fe72a51be8a71b275cf33514eab7b2a28268 Mon Sep 17 00:00:00 2001 From: Jonas Gunz Date: Tue, 21 Sep 2021 17:25:57 +0200 Subject: tests: database.c --- tests/database.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 tests/database.c (limited to 'tests/database.c') diff --git a/tests/database.c b/tests/database.c new file mode 100644 index 0000000..18c7ec4 --- /dev/null +++ b/tests/database.c @@ -0,0 +1,42 @@ +/* + * tests/database.c + * (c) 2021 Jonas Gunz + * License: MIT + */ + +#include "tests.h" + +#include "../src/database.h" +#include "../src/zonefile.h" + +START_TEST ( test_database_parse_zonefile ) { + int ret; + char qname[128]; + int qname_len; + database_t db; + database_rdata_t data; + + qname_len = fqdn_to_qname("test.example.com.", 18, qname, 128); + ck_assert_int_gt(qname_len, 0); + + database_init( &db ); + ck_assert_ptr_nonnull( db.zone ); + + ret = zonefile_to_database( &db, "tests/zone.file" ); + ck_assert_int_eq(ret,0); + + ret = database_query( &data, &db, qname, qname_len, 1, 1 ); + ck_assert_int_eq(ret, 0); + + database_destroy(&db); + ck_assert_ptr_null( db.zone ); +} END_TEST + + +TCase* test_database(void) { + TCase *tc = tcase_create("Database"); + + tcase_add_test(tc, test_database_parse_zonefile); + + return tc; +} -- cgit v1.2.3