From d0b04fd2ea4f37116ba29478b55d221d1c67894b Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Tue, 2 Jun 2020 13:54:15 +0200 Subject: [PATCH] Basic interaction test for buffer --- sf-writer/test/main.cpp | 1 + sf-writer/test/test_ImageAssembler.cpp | 32 ++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 sf-writer/test/test_ImageAssembler.cpp diff --git a/sf-writer/test/main.cpp b/sf-writer/test/main.cpp index 296a468..94aeb99 100644 --- a/sf-writer/test/main.cpp +++ b/sf-writer/test/main.cpp @@ -1,5 +1,6 @@ #include "gtest/gtest.h" #include "test_WriterH5Writer.cpp" +#include "test_ImageAssembler.cpp" using namespace std; diff --git a/sf-writer/test/test_ImageAssembler.cpp b/sf-writer/test/test_ImageAssembler.cpp new file mode 100644 index 0000000..0071015 --- /dev/null +++ b/sf-writer/test/test_ImageAssembler.cpp @@ -0,0 +1,32 @@ +#include + +#include "ImageAssembler.hpp" +#include "gtest/gtest.h" + +using namespace std; +using namespace core_buffer; + +TEST(ImageAssembler, basic_interaction) +{ + size_t n_modules = 3; + uint64_t bunch_id = 0; + + ImageAssembler assembler(n_modules); + + ASSERT_EQ(assembler.is_slot_free(bunch_id), true); + + auto buffer_block = make_unique(); + auto buffer_ptr = buffer_block.get(); + + for (size_t i_module=0; i_module < n_modules; i_module++) { + assembler.process(bunch_id, i_module, buffer_ptr); + } + + ASSERT_EQ(assembler.is_slot_full(bunch_id), true); + + auto metadata = assembler.get_metadata_buffer(bunch_id); + auto data = assembler.get_data_buffer(bunch_id); + + assembler.free_slot(bunch_id); + ASSERT_EQ(assembler.is_slot_free(bunch_id), true); +}