jfjoch_tests: Fix tests for writing calibration
Build Packages / build:rpm (rocky8_nocuda) (push) Successful in 11m48s
Build Packages / build:rpm (rocky9_nocuda) (push) Successful in 15m17s
Build Packages / build:rpm (ubuntu2404_nocuda) (push) Successful in 15m24s
Build Packages / Generate python client (push) Successful in 37s
Build Packages / build:rpm (ubuntu2204) (push) Failing after 5m6s
Build Packages / build:rpm (rocky8_sls9) (push) Successful in 17m12s
Build Packages / Create release (push) Has been skipped
Build Packages / build:rpm (ubuntu2204_nocuda) (push) Successful in 17m23s
Build Packages / Build documentation (push) Successful in 1m22s
Build Packages / build:rpm (rocky8) (push) Successful in 19m0s
Build Packages / build:rpm (rocky9) (push) Successful in 19m40s
Build Packages / build:rpm (rocky9_sls9) (push) Successful in 19m49s
Build Packages / build:rpm (rocky8_nocuda) (pull_request) Successful in 11m23s
Build Packages / build:rpm (ubuntu2404) (push) Successful in 17m37s
Build Packages / build:rpm (ubuntu2404_nocuda) (pull_request) Successful in 13m51s
Build Packages / build:rpm (ubuntu2204_nocuda) (pull_request) Successful in 16m23s
Build Packages / build:rpm (rocky9_nocuda) (pull_request) Successful in 16m46s
Build Packages / Generate python client (pull_request) Successful in 38s
Build Packages / build:rpm (rocky8_sls9) (pull_request) Successful in 15m40s
Build Packages / Build documentation (pull_request) Successful in 1m41s
Build Packages / Create release (pull_request) Has been skipped
Build Packages / build:rpm (rocky9_sls9) (pull_request) Successful in 16m36s
Build Packages / build:rpm (rocky8) (pull_request) Successful in 9m48s
Build Packages / build:rpm (ubuntu2204) (pull_request) Successful in 11m21s
Build Packages / build:rpm (ubuntu2404) (pull_request) Successful in 10m35s
Build Packages / build:rpm (rocky9) (pull_request) Successful in 12m34s
Build Packages / Unit tests (push) Successful in 1h8m22s
Build Packages / Unit tests (pull_request) Successful in 59m39s
Build Packages / build:rpm (rocky8_nocuda) (push) Successful in 11m48s
Build Packages / build:rpm (rocky9_nocuda) (push) Successful in 15m17s
Build Packages / build:rpm (ubuntu2404_nocuda) (push) Successful in 15m24s
Build Packages / Generate python client (push) Successful in 37s
Build Packages / build:rpm (ubuntu2204) (push) Failing after 5m6s
Build Packages / build:rpm (rocky8_sls9) (push) Successful in 17m12s
Build Packages / Create release (push) Has been skipped
Build Packages / build:rpm (ubuntu2204_nocuda) (push) Successful in 17m23s
Build Packages / Build documentation (push) Successful in 1m22s
Build Packages / build:rpm (rocky8) (push) Successful in 19m0s
Build Packages / build:rpm (rocky9) (push) Successful in 19m40s
Build Packages / build:rpm (rocky9_sls9) (push) Successful in 19m49s
Build Packages / build:rpm (rocky8_nocuda) (pull_request) Successful in 11m23s
Build Packages / build:rpm (ubuntu2404) (push) Successful in 17m37s
Build Packages / build:rpm (ubuntu2404_nocuda) (pull_request) Successful in 13m51s
Build Packages / build:rpm (ubuntu2204_nocuda) (pull_request) Successful in 16m23s
Build Packages / build:rpm (rocky9_nocuda) (pull_request) Successful in 16m46s
Build Packages / Generate python client (pull_request) Successful in 38s
Build Packages / build:rpm (rocky8_sls9) (pull_request) Successful in 15m40s
Build Packages / Build documentation (pull_request) Successful in 1m41s
Build Packages / Create release (pull_request) Has been skipped
Build Packages / build:rpm (rocky9_sls9) (pull_request) Successful in 16m36s
Build Packages / build:rpm (rocky8) (pull_request) Successful in 9m48s
Build Packages / build:rpm (ubuntu2204) (pull_request) Successful in 11m21s
Build Packages / build:rpm (ubuntu2404) (pull_request) Successful in 10m35s
Build Packages / build:rpm (rocky9) (pull_request) Successful in 12m34s
Build Packages / Unit tests (push) Successful in 1h8m22s
Build Packages / Unit tests (pull_request) Successful in 59m39s
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
#include "../common/DiffractionExperiment.h"
|
||||
#include "../writer/FileWriter.h"
|
||||
#include "../reader/JFJochHDF5Reader.h"
|
||||
#include "../compression/JFJochCompressor.h"
|
||||
|
||||
TEST_CASE("HDF5DataType_Sign","[HDF5]") {
|
||||
HDF5DataType type_u8((uint8_t)0), type_fl(0.0f), type_i32((int32_t) 0), type_u32((uint32_t) 0);
|
||||
@@ -85,6 +86,9 @@ TEST_CASE("JFJochReader_MasterFile_Calibration", "[HDF5][Full]") {
|
||||
std::vector<uint16_t> calib_1(200*300, 10);
|
||||
std::vector<int32_t> calib_2(100*400, 55);
|
||||
std::vector<float> calib_f(100*400, 1234.56f);
|
||||
JFJochBitShuffleCompressor compressor(CompressionAlgorithm::BSHUF_LZ4);
|
||||
auto calib_1_compressed = compressor.Compress(calib_1);
|
||||
|
||||
{
|
||||
StartMessage start_message;
|
||||
x.FillMessage(start_message);
|
||||
@@ -92,14 +96,21 @@ TEST_CASE("JFJochReader_MasterFile_Calibration", "[HDF5][Full]") {
|
||||
CompressedImage calibration_01(calib_1, 200, 300);
|
||||
CompressedImage calibration_02(calib_2, 100, 400);
|
||||
CompressedImage calibration_f(calib_f, 100, 400);
|
||||
CompressedImage calibration_01_lz4(
|
||||
calib_1_compressed.data(), calib_1_compressed.size(),
|
||||
200, 300, CompressedImageMode::Uint16, CompressionAlgorithm::BSHUF_LZ4
|
||||
);
|
||||
|
||||
calibration_01.Channel("c1");
|
||||
calibration_02.Channel("c2");
|
||||
calibration_f.Channel("cf");
|
||||
calibration_01_lz4.Channel("c1_lz4");
|
||||
|
||||
EndMessage end_message;
|
||||
end_message.max_image_number = 0;
|
||||
std::unique_ptr<NXmx> master = std::make_unique<NXmx>(start_message);
|
||||
master->WriteCalibration(calibration_01);
|
||||
master->WriteCalibration(calibration_01_lz4);
|
||||
master->WriteCalibration(calibration_02);
|
||||
master->WriteCalibration(calibration_f);
|
||||
master->Finalize(end_message);
|
||||
@@ -109,10 +120,11 @@ TEST_CASE("JFJochReader_MasterFile_Calibration", "[HDF5][Full]") {
|
||||
JFJochHDF5Reader reader;
|
||||
REQUIRE_NOTHROW(reader.ReadFile("test_reader_calibration_master.h5"));
|
||||
auto dataset = reader.GetDataset();
|
||||
REQUIRE(dataset->calibration_data.size() == 3);
|
||||
REQUIRE(dataset->calibration_data.size() == 4);
|
||||
CHECK(dataset->calibration_data[0] == "c1");
|
||||
CHECK(dataset->calibration_data[1] == "c2");
|
||||
CHECK(dataset->calibration_data[2] == "cf");
|
||||
CHECK(dataset->calibration_data[1] == "c1_lz4");
|
||||
CHECK(dataset->calibration_data[2] == "c2");
|
||||
CHECK(dataset->calibration_data[3] == "cf");
|
||||
|
||||
std::vector<uint8_t> buffer;
|
||||
std::vector<uint8_t> buff_2;
|
||||
@@ -120,22 +132,29 @@ TEST_CASE("JFJochReader_MasterFile_Calibration", "[HDF5][Full]") {
|
||||
CompressedImage test;
|
||||
REQUIRE_NOTHROW(test = reader.ReadCalibration(buffer, "c1"));
|
||||
CHECK(test.GetByteDepth() == 2);
|
||||
CHECK(test.GetHeight() == 200);
|
||||
CHECK(test.GetWidth() == 300);
|
||||
CHECK(test.GetHeight() == 300);
|
||||
CHECK(test.GetWidth() == 200);
|
||||
CHECK(test.GetMode() == CompressedImageMode::Uint16);
|
||||
CHECK(reinterpret_cast<const uint16_t *>(test.GetUncompressedPtr(buff_2))[76] == 10);
|
||||
|
||||
REQUIRE_NOTHROW(test = reader.ReadCalibration(buffer, "c1_lz4"));
|
||||
CHECK(test.GetByteDepth() == 2);
|
||||
CHECK(test.GetHeight() == 300);
|
||||
CHECK(test.GetWidth() == 200);
|
||||
CHECK(test.GetMode() == CompressedImageMode::Uint16);
|
||||
CHECK(reinterpret_cast<const uint16_t *>(test.GetUncompressedPtr(buff_2))[76] == 10);
|
||||
|
||||
REQUIRE_NOTHROW(test = reader.ReadCalibration(buffer, "c2"));
|
||||
CHECK(test.GetByteDepth() == 4);
|
||||
CHECK(test.GetHeight() == 100);
|
||||
CHECK(test.GetWidth() == 400);
|
||||
CHECK(test.GetHeight() == 400);
|
||||
CHECK(test.GetWidth() == 100);
|
||||
CHECK(test.GetMode() == CompressedImageMode::Int32);
|
||||
CHECK(reinterpret_cast<const int32_t *>(test.GetUncompressedPtr(buff_2))[76] == 55);
|
||||
|
||||
REQUIRE_NOTHROW(test = reader.ReadCalibration(buffer, "cf"));
|
||||
CHECK(test.GetByteDepth() == 4);
|
||||
CHECK(test.GetHeight() == 100);
|
||||
CHECK(test.GetWidth() == 400);
|
||||
CHECK(test.GetHeight() == 400);
|
||||
CHECK(test.GetWidth() == 100);
|
||||
CHECK(test.GetMode() == CompressedImageMode::Float32);
|
||||
CHECK(reinterpret_cast<const float *>(test.GetUncompressedPtr(buff_2))[76] == Catch::Approx(1234.56f));
|
||||
}
|
||||
|
||||
@@ -1656,9 +1656,9 @@ TEST_CASE("JFJochIntegrationTest_TCP_calibration", "[JFJochReceiver]") {
|
||||
pedestal_g1[j] = j % RAW_MODULE_COLS;
|
||||
pedestal_g2[j] = i * (RAW_MODULE_LINES) + j / RAW_MODULE_COLS; // line number
|
||||
}
|
||||
calibration.Pedestal(1,0).LoadPedestal(pedestal_g1);
|
||||
calibration.Pedestal(2,0).LoadPedestal(pedestal_g2);
|
||||
calibration.Pedestal(0,0).LoadPedestal(pedestal_g0);
|
||||
calibration.Pedestal(i,0).LoadPedestal(pedestal_g0);
|
||||
calibration.Pedestal(i,1).LoadPedestal(pedestal_g1);
|
||||
calibration.Pedestal(i,2).LoadPedestal(pedestal_g2);
|
||||
}
|
||||
|
||||
// Setup acquisition device
|
||||
|
||||
Reference in New Issue
Block a user