From 56d7ffd3221ce7f21d570aeab8c254063921668a Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Mon, 25 May 2020 13:59:24 +0200 Subject: [PATCH] Fix test for ReplayH5Reader --- sf-replay/test/test_ReplayH5Reader.cpp | 54 +++++++++++++------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/sf-replay/test/test_ReplayH5Reader.cpp b/sf-replay/test/test_ReplayH5Reader.cpp index 68983dc..3c8d0bb 100644 --- a/sf-replay/test/test_ReplayH5Reader.cpp +++ b/sf-replay/test/test_ReplayH5Reader.cpp @@ -10,24 +10,23 @@ TEST(ReplayH5Reader, basic_interaction) auto root_folder = "."; auto device_name = "fast_device"; size_t pulse_id = 65; - uint16_t source_id = 1; + uint16_t source_id = 124; // This 2 must be compatible by design. BufferH5Writer writer(root_folder, device_name); - ReplayH5Reader reader(root_folder, device_name, source_id, pulse_id); + ReplayH5Reader reader(root_folder, device_name); ModuleFrame w_metadata; - ReplayModuleFrameBuffer r_metadata; + ModuleFrame* r_metadata; auto w_frame_buffer = make_unique(MODULE_N_PIXELS); - auto r_frame_buffer = make_unique( - MODULE_N_PIXELS * REPLAY_READ_BUFFER_SIZE); + char* r_frame_buffer; // Setup test values. w_metadata.pulse_id = pulse_id; w_metadata.frame_index = 2; w_metadata.daq_rec = 3; w_metadata.n_received_packets = 128; - w_metadata.module_id = 4; + w_metadata.module_id = source_id; for (size_t i=0; ipulse_id, pulse_id); + ASSERT_EQ(r_metadata->module_id, source_id); + ASSERT_EQ(r_metadata->frame_index, 2); + ASSERT_EQ(r_metadata->daq_rec, 3); + ASSERT_EQ(r_metadata->n_received_packets, 128); // Data as well. auto offset = MODULE_N_PIXELS * (pulse_id-1); @@ -63,6 +51,22 @@ TEST(ReplayH5Reader, basic_interaction) w_frame_buffer[i] = r_frame_buffer[offset + i]; } + for (uint64_t i_pulse=0; i_pulse<100; i_pulse++) { + + // Verify that all but the saved pulse_id are zero. + if (i_pulse == pulse_id) { + continue; + } + + reader.get_buffer(i_pulse, r_metadata, r_frame_buffer); + + ASSERT_EQ(r_metadata->pulse_id, 0); + ASSERT_EQ(r_metadata->frame_index, 0); + ASSERT_EQ(r_metadata->daq_rec, 0); + ASSERT_EQ(r_metadata->n_received_packets, 0); + ASSERT_EQ(r_metadata->module_id, 0); + } + reader.close_file(); } @@ -75,9 +79,7 @@ TEST(ReplayH5Reader, missing_frame) // This 2 must be compatible by design. BufferH5Writer writer(root_folder, device_name); - ReplayH5Reader reader(root_folder, device_name, 1, pulse_id); - - + ReplayH5Reader reader(root_folder, device_name); ModuleFrame w_metadata; ModuleFrame r_metadata;