xref: /netbsd-src/external/bsd/ntp/dist/tests/libntp/recvbuff.c (revision 50c1bace9687b37ab860a3ac85b157d33cb3f3d6)
1 /*	$NetBSD: recvbuff.c,v 1.3 2022/10/09 21:41:04 christos Exp $	*/
2 
3 #include "config.h"
4 
5 #include "recvbuff.h"
6 
7 #include "unity.h"
8 
9 void setUp(void);
10 void test_Initialization(void);
11 void test_GetAndFree(void);
12 void test_GetAndFill(void);
13 
14 void
setUp(void)15 setUp(void)
16 {
17 	init_recvbuff(RECV_INIT);
18 	init_lib();
19 
20 	return;
21 }
22 
23 void
test_Initialization(void)24 test_Initialization(void) {
25 	TEST_ASSERT_EQUAL_UINT(RECV_INIT, free_recvbuffs());
26 	TEST_ASSERT_EQUAL_UINT(0, full_recvbuffs());
27 	TEST_ASSERT_FALSE(has_full_recv_buffer());
28 	TEST_ASSERT_NULL(get_full_recv_buffer());
29 }
30 
31 void
test_GetAndFree(void)32 test_GetAndFree(void) {
33 	u_long initial = free_recvbuffs();
34 	recvbuf_t* buf = get_free_recv_buffer(TRUE);
35 
36 	TEST_ASSERT_EQUAL_UINT(initial-1, free_recvbuffs());
37 	freerecvbuf(buf);
38 	TEST_ASSERT_EQUAL_UINT(initial, free_recvbuffs());
39 }
40 
41 
42 void
test_GetAndFill(void)43 test_GetAndFill(void) {
44 	// int initial = free_recvbuffs();
45 	recvbuf_t* buf = get_free_recv_buffer(TRUE);
46 
47 	add_full_recv_buffer(buf);
48 	TEST_ASSERT_EQUAL_UINT(1, full_recvbuffs());
49 	TEST_ASSERT_TRUE(has_full_recv_buffer());
50 	TEST_ASSERT_EQUAL_PTR(buf, get_full_recv_buffer());
51 }
52