jfjoch_writer: Not dependent on gRPC
This commit is contained in:
@@ -3,12 +3,9 @@
|
||||
#include <catch2/catch.hpp>
|
||||
#include <filesystem>
|
||||
|
||||
#include "../writer/JFJochWriterService.h"
|
||||
#include "../writer/StreamWriter.h"
|
||||
#include "../writer/HDF5Objects.h"
|
||||
#include "../common/ZMQImagePusher.h"
|
||||
#include "../receiver/JFJochReceiverService.h"
|
||||
#include "../acquisition_device/HLSSimulatedDevice.h"
|
||||
|
||||
TEST_CASE("StreamWriterTest_ZMQ","[JFJochWriter]") {
|
||||
RegisterHDF5Filter();
|
||||
@@ -17,9 +14,6 @@ TEST_CASE("StreamWriterTest_ZMQ","[JFJochWriter]") {
|
||||
ZMQContext context;
|
||||
std::string zmq_addr = "inproc://#1";
|
||||
|
||||
grpc::ServerContext grpc_context;
|
||||
JFJochProtoBuf::Empty empty;
|
||||
|
||||
DiffractionExperiment x(DetectorGeometry(2));
|
||||
x.FilePrefix("subdir/JFJochWriterTest").NumTriggers(1).ImagesPerTrigger(5)
|
||||
.UseInternalPacketGenerator(true).Mode(DetectorMode::Raw).PedestalG0Frames(0);
|
||||
@@ -62,47 +56,3 @@ TEST_CASE("StreamWriterTest_ZMQ","[JFJochWriter]") {
|
||||
REQUIRE(std::filesystem::remove("subdir/JFJochWriterTest_data_000.h5"));
|
||||
REQUIRE(std::filesystem::remove("subdir"));
|
||||
}
|
||||
|
||||
|
||||
TEST_CASE("JFJochWriterServiceTest_ZMQ","[JFJochWriter]") {
|
||||
RegisterHDF5Filter();
|
||||
|
||||
Logger logger("test");
|
||||
ZMQContext context;
|
||||
std::string zmq_addr = "inproc://#1";
|
||||
|
||||
JFJochWriterService writer(context, logger);
|
||||
|
||||
grpc::ServerContext grpc_context;
|
||||
JFJochProtoBuf::Empty empty;
|
||||
|
||||
DiffractionExperiment x(DetectorGeometry(2));
|
||||
x.FilePrefix("JFJochWriterTest").NumTriggers(1).ImagesPerTrigger(5)
|
||||
.UseInternalPacketGenerator(true)
|
||||
.Mode(DetectorMode::Raw).PedestalG0Frames(0);
|
||||
|
||||
JFModuleGainCalibration empty_gain;
|
||||
|
||||
AcquisitionDeviceGroup aq_devices;
|
||||
for (int i = 0; i < x.GetDataStreamsNum(); i++)
|
||||
aq_devices.AddHLSDevice(64);
|
||||
|
||||
ZMQImagePusher pusher (context, {zmq_addr});
|
||||
JFJochReceiverService fpga_receiver_service(aq_devices, logger, pusher);
|
||||
|
||||
JFJochProtoBuf::WriterInput writer_input;
|
||||
writer_input.set_zmq_receiver_address(zmq_addr);
|
||||
|
||||
JFJochReceiverOutput receiver_output;
|
||||
JFJochProtoBuf::WriterOutput writer_output;
|
||||
|
||||
REQUIRE(x.GetImageNum() == 5);
|
||||
REQUIRE(writer.Start(&grpc_context, &writer_input, &empty).ok());
|
||||
|
||||
REQUIRE_NOTHROW(fpga_receiver_service.Start(x, nullptr));
|
||||
REQUIRE_NOTHROW(receiver_output = fpga_receiver_service.Stop());
|
||||
REQUIRE(writer.Stop(&grpc_context, &empty, &writer_output).ok());
|
||||
|
||||
REQUIRE(writer_output.nimages() == 5);
|
||||
//TODO: Check contest of HDF5 file
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user