From 0502580850639ec890eecb5f2f46479945320663 Mon Sep 17 00:00:00 2001 From: Falk Werner Date: Sun, 14 Jun 2020 21:15:39 +0200 Subject: [PATCH] added test for dirbuffer --- meson.build | 1 + test/webfuse/tests/provider/test_dirbuffer.cc | 32 +++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 test/webfuse/tests/provider/test_dirbuffer.cc diff --git a/meson.build b/meson.build index 86cef0e..4842fea 100644 --- a/meson.build +++ b/meson.build @@ -244,6 +244,7 @@ alltests = executable('alltests', 'test/webfuse/tests/adapter/operation/test_getattr.cc', 'test/webfuse/tests/adapter/operation/test_lookup.cc', 'test/webfuse/tests/provider/test_client_protocol.cc', + 'test/webfuse/tests/provider/test_dirbuffer.cc', 'test/webfuse/tests/provider/operation/test_close.cc', 'test/webfuse/tests/provider/operation/test_getattr.cc', 'test/webfuse/tests/provider/operation/test_lookup.cc', diff --git a/test/webfuse/tests/provider/test_dirbuffer.cc b/test/webfuse/tests/provider/test_dirbuffer.cc new file mode 100644 index 0000000..b4dfe58 --- /dev/null +++ b/test/webfuse/tests/provider/test_dirbuffer.cc @@ -0,0 +1,32 @@ +#include "webfuse/provider/impl/dirbuffer.h" +#include + +TEST(DirBuffer, CreateDispose) +{ + wfp_dirbuffer * buffer = wfp_impl_dirbuffer_create(); + wfp_impl_dirbuffer_dispose(buffer); +} + +TEST(DirBuffer, Add) +{ + wfp_dirbuffer * buffer = wfp_impl_dirbuffer_create(); + wfp_impl_dirbuffer_add(buffer, "answer", 42); + + ASSERT_EQ(1, json_array_size(buffer->entries)); + + json_t * entry = json_array_get(buffer->entries, 0); + ASSERT_STREQ("answer", json_string_value(json_object_get(entry, "name"))); + ASSERT_EQ(42, json_integer_value(json_object_get(entry, "inode"))); + + wfp_impl_dirbuffer_dispose(buffer); +} + +TEST(DirBuffer, Take) +{ + wfp_dirbuffer * buffer = wfp_impl_dirbuffer_create(); + json_t * entries = wfp_impl_dirbuffer_take(buffer); + wfp_impl_dirbuffer_dispose(buffer); + + ASSERT_TRUE(json_is_array(entries)); + json_decref(entries); +}