summaryrefslogtreecommitdiff
path: root/tests/libntp/g_recvbuff.cpp
diff options
context:
space:
mode:
authorCy Schubert <cy@FreeBSD.org>2015-07-01 03:12:13 +0000
committerCy Schubert <cy@FreeBSD.org>2015-07-01 03:12:13 +0000
commit873997f35a991eee09ed91148a0cf332360380da (patch)
tree5b1ffa3ad0e56e0e9f2991011729791ee86d7632 /tests/libntp/g_recvbuff.cpp
parent4ba32eb5a8bf3455c09d1513ed2af8d2c861a6ba (diff)
Notes
Diffstat (limited to 'tests/libntp/g_recvbuff.cpp')
-rw-r--r--tests/libntp/g_recvbuff.cpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/libntp/g_recvbuff.cpp b/tests/libntp/g_recvbuff.cpp
new file mode 100644
index 0000000000000..799802d8b484b
--- /dev/null
+++ b/tests/libntp/g_recvbuff.cpp
@@ -0,0 +1,38 @@
+#include "g_libntptest.h"
+
+extern "C" {
+#include "recvbuff.h"
+};
+
+class recvbuffTest : public libntptest {
+protected:
+ virtual void SetUp() {
+ init_recvbuff(RECV_INIT);
+ }
+};
+
+TEST_F(recvbuffTest, Initialization) {
+ EXPECT_EQ(RECV_INIT, free_recvbuffs());
+ EXPECT_EQ(0, full_recvbuffs());
+ EXPECT_FALSE(has_full_recv_buffer());
+ EXPECT_TRUE(get_full_recv_buffer() == NULL);
+}
+
+TEST_F(recvbuffTest, GetAndFree) {
+ int initial = free_recvbuffs();
+ recvbuf_t* buf = get_free_recv_buffer();
+
+ EXPECT_EQ(initial-1, free_recvbuffs());
+ freerecvbuf(buf);
+ EXPECT_EQ(initial, free_recvbuffs());
+}
+
+TEST_F(recvbuffTest, GetAndFill) {
+ int initial = free_recvbuffs();
+ recvbuf_t* buf = get_free_recv_buffer();
+
+ add_full_recv_buffer(buf);
+ EXPECT_EQ(1, full_recvbuffs());
+ EXPECT_TRUE(has_full_recv_buffer());
+ EXPECT_EQ(buf, get_full_recv_buffer());
+}