From 8b558ac023282c283e56eff56fae3c88f04c5e24 Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Mon, 20 Apr 2020 16:47:02 +0200 Subject: [PATCH] Update test with pulse_id metadata --- core-buffer/test/test_FastH5Writer.cpp | 37 ++++++++++++++++---------- 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/core-buffer/test/test_FastH5Writer.cpp b/core-buffer/test/test_FastH5Writer.cpp index eecd290..581b8a0 100644 --- a/core-buffer/test/test_FastH5Writer.cpp +++ b/core-buffer/test/test_FastH5Writer.cpp @@ -87,50 +87,59 @@ TEST(FastH5Writer, SWMR) auto output_buffer = make_unique(512 * 1024 * 2); auto input_buffer = make_unique(1000*512*1024); + auto pulse_id_buffer = make_unique(1000); auto input_ptr = (uint16_t*)(input_buffer.get()); auto output_ptr = (uint16_t*)(output_buffer.get()); + auto pulse_id_ptr = (uint64_t*)(pulse_id_buffer.get()); for (size_t i=0; i<512*1024; i++) { uint16_t* image_ptr = (uint16_t*)(output_buffer.get()); image_ptr[i] = 99; } - UdpFrameMetadata metadata; - metadata.pulse_id = pulse_id; - metadata.frame_index = 2; - metadata.daq_rec = 3; - metadata.n_recv_packets = 128; - FastH5Writer writer( BufferUtils::FILE_MOD, 512, 1024, device_name, root_folder); - writer.set_pulse_id(0); - writer.add_scalar_metadata("pulse_id"); - writer.add_scalar_metadata("frame_id"); - writer.add_scalar_metadata("daq_rec"); - writer.add_scalar_metadata("received_packets"); + writer.set_pulse_id(0); auto filename = BufferUtils::get_filename( root_folder, device_name, pulse_id); - auto file_frame_index = BufferUtils::get_file_frame_index(pulse_id); H5::H5File input_file(filename, H5F_ACC_RDONLY | H5F_ACC_SWMR_READ); auto image_dataset = input_file.openDataSet("image"); + auto pulse_id_dataset = input_file.openDataSet("pulse_id"); image_dataset.read(input_ptr, H5::PredType::NATIVE_UINT16); EXPECT_EQ(input_ptr[0], 0); EXPECT_EQ(input_ptr[512*1024], 0); - writer.set_pulse_id(0); + pulse_id_dataset.read(pulse_id_ptr, H5::PredType::NATIVE_UINT64); + EXPECT_EQ(pulse_id_ptr[0], 0); + EXPECT_EQ(pulse_id_ptr[1], 0); + + pulse_id = 0; + writer.set_pulse_id(pulse_id); writer.write_data(output_buffer.get()); + writer.write_scalar_metadata("pulse_id", &pulse_id); image_dataset.read(input_ptr, H5::PredType::NATIVE_UINT16); EXPECT_EQ(input_ptr[0], 99); EXPECT_EQ(input_ptr[512*1024], 0); - writer.set_pulse_id(1); + pulse_id_dataset.read(pulse_id_ptr, H5::PredType::NATIVE_UINT64); + EXPECT_EQ(pulse_id_ptr[0], 0); + EXPECT_EQ(pulse_id_ptr[1], 0); + + pulse_id = 1; + writer.set_pulse_id(pulse_id); writer.write_data(output_buffer.get()); + writer.write_scalar_metadata("pulse_id", &pulse_id); + image_dataset.read(input_ptr, H5::PredType::NATIVE_UINT16); EXPECT_EQ(input_ptr[0], 99); EXPECT_EQ(input_ptr[512*1024], 99); + + pulse_id_dataset.read(pulse_id_ptr, H5::PredType::NATIVE_UINT64); + EXPECT_EQ(pulse_id_ptr[0], 0); + EXPECT_EQ(pulse_id_ptr[1], 1); } \ No newline at end of file