]> CyberLeo.Net >> Repos - FreeBSD/releng/10.2.git/blob - contrib/ntp/tests/libntp/g_recvbuff.cpp
Fix a regression with SA-15:24 patch that prevented NIS from
[FreeBSD/releng/10.2.git] / contrib / ntp / tests / libntp / g_recvbuff.cpp
1 #include "g_libntptest.h"
2
3 extern "C" {
4 #include "recvbuff.h"
5 };
6
7 class recvbuffTest : public libntptest {
8 protected:
9         virtual void SetUp() {
10                 init_recvbuff(RECV_INIT);
11         }
12 };
13
14 TEST_F(recvbuffTest, Initialization) {
15         EXPECT_EQ(RECV_INIT, free_recvbuffs());
16         EXPECT_EQ(0, full_recvbuffs());
17         EXPECT_FALSE(has_full_recv_buffer());
18         EXPECT_TRUE(get_full_recv_buffer() == NULL);
19 }
20
21 TEST_F(recvbuffTest, GetAndFree) {
22         int initial = free_recvbuffs();
23         recvbuf_t* buf = get_free_recv_buffer();
24
25         EXPECT_EQ(initial-1, free_recvbuffs());
26         freerecvbuf(buf);
27         EXPECT_EQ(initial, free_recvbuffs());
28 }
29
30 TEST_F(recvbuffTest, GetAndFill) {
31         int initial = free_recvbuffs();
32         recvbuf_t* buf = get_free_recv_buffer();
33
34         add_full_recv_buffer(buf);
35         EXPECT_EQ(1, full_recvbuffs());
36         EXPECT_TRUE(has_full_recv_buffer());
37         EXPECT_EQ(buf, get_full_recv_buffer());
38 }