ifw-daq 3.1.0
IFW Data Acquisition modules
Loading...
Searching...
No Matches
dpmClientMock.hpp
Go to the documentation of this file.
1/**
2 * @file
3 * @ingroup daq_ocm_libdaq_test
4 * @copyright 2022 ESO - European Southern Observatory
5 *
6 * @brief `daq::DpmClient`
7 */
8#ifndef DAQ_MOCK_DPMCLIENT_MOCK_HPP
9#define DAQ_MOCK_DPMCLIENT_MOCK_HPP
10#include <daq/dpmClient.hpp>
11
12#include <gmock/gmock.h>
13
14namespace daq {
15
16/**
17 * Combined mock and fake of interface to DPM server
18 */
19class DpmClientMock : public DpmClient {
20public:
21 /**
22 * Schedule merging.
23 */
24 MOCK_METHOD(boost::future<State>,
26 (std::string const& spec, std::optional<std::string> const& status),
27 (override));
28
29 /**
30 * Abort merging.
31 */
32 MOCK_METHOD(boost::future<State>, AbortAsync, (std::string const& id), (override));
33 MOCK_METHOD(void, StartMonitorStatus, (std::string const& id), (override));
34 MOCK_METHOD(void, StopMonitorStatus, (std::string const& id), (override));
35
36 auto ConnectStatusSignal(StatusSignal::slot_type const& slot)
37 -> boost::signals2::connection override {
38 return status_signal.connect(slot);
39 }
40
41 auto ConnectStorageSignal(StorageSignal::slot_type const& slot)
42 -> boost::signals2::connection override {
43 return storage_signal.connect(slot);
44 }
47};
48
49} // namespace daq
50#endif
Combined mock and fake of interface to DPM server.
MOCK_METHOD(void, StartMonitorStatus,(std::string const &id),(override))
MOCK_METHOD(void, StopMonitorStatus,(std::string const &id),(override))
auto ConnectStorageSignal(StorageSignal::slot_type const &slot) -> boost::signals2::connection override
Connect slot to storage change signal.
StatusSignal status_signal
MOCK_METHOD(boost::future< State >, ScheduleAsync,(std::string const &spec, std::optional< std::string > const &status),(override))
Schedule merging.
auto ConnectStatusSignal(StatusSignal::slot_type const &slot) -> boost::signals2::connection override
Connect slot to status change signal.
StorageSignal storage_signal
MOCK_METHOD(boost::future< State >, AbortAsync,(std::string const &id),(override))
Abort merging.
Interface to DPM server.
Definition: dpmClient.hpp:41
virtual void StopMonitorStatus(std::string const &id)=0
Stop monitoring DAQ status.
virtual auto ScheduleAsync(std::string const &spec, std::optional< std::string > const &status) -> boost::future< State >=0
Schedule merging.
boost::signals2::signal< void(Status)> StatusSignal
Definition: dpmClient.hpp:44
virtual void StartMonitorStatus(std::string const &id)=0
Start monitoring DAQ status.
virtual auto AbortAsync(std::string const &id) -> boost::future< State >=0
Abort merging.
boost::signals2::signal< void(std::filesystem::space_info)> StorageSignal
Definition: dpmClient.hpp:43
daq::DpmClient