]> CyberLeo.Net >> Repos - FreeBSD/releng/10.2.git/blob - contrib/ntp/tests/libntp/recvbuff.c
Upgrade NTP to 4.2.8p4.
[FreeBSD/releng/10.2.git] / contrib / ntp / tests / libntp / recvbuff.c
1 #include "config.h"
2
3 #include "recvbuff.h"
4
5 #include "unity.h"
6
7 void setUp(void);
8 void test_Initialization(void);
9 void test_GetAndFree(void);
10 void test_GetAndFill(void);
11
12 void
13 setUp(void)
14 {
15         init_recvbuff(RECV_INIT);
16 }
17
18 void
19 test_Initialization(void) {
20         TEST_ASSERT_EQUAL_UINT(RECV_INIT, free_recvbuffs());
21         TEST_ASSERT_EQUAL_UINT(0, full_recvbuffs());
22         TEST_ASSERT_FALSE(has_full_recv_buffer());
23         TEST_ASSERT_NULL(get_full_recv_buffer());
24 }
25
26 void
27 test_GetAndFree(void) {
28         u_long initial = free_recvbuffs();
29         recvbuf_t* buf = get_free_recv_buffer();
30
31         TEST_ASSERT_EQUAL_UINT(initial-1, free_recvbuffs());
32         freerecvbuf(buf);
33         TEST_ASSERT_EQUAL_UINT(initial, free_recvbuffs());
34 }
35
36
37 void
38 test_GetAndFill(void) {
39         int initial = free_recvbuffs();
40         recvbuf_t* buf = get_free_recv_buffer();
41
42         add_full_recv_buffer(buf);
43         TEST_ASSERT_EQUAL_UINT(1, full_recvbuffs());
44         TEST_ASSERT_TRUE(has_full_recv_buffer());
45         TEST_ASSERT_EQUAL_PTR(buf, get_full_recv_buffer());
46 }