Add ReportManager and Report unit tests
Introduced ReportFactory to seperate Report and ReportManager
unit tests. Implemented mocks for Report, ReportManager and
ReportFactory classes. Added tests for DBus Properties and Methods
provided by telemetry service.
Tested:
- Ran unit-tests with success
Change-Id: I1860e280d26ee4becc52de98dd65e5697d26b376
Signed-off-by: Wludzik, Jozef <jozef.wludzik@intel.com>
diff --git a/src/interfaces/report_factory.hpp b/src/interfaces/report_factory.hpp
new file mode 100644
index 0000000..9273d03
--- /dev/null
+++ b/src/interfaces/report_factory.hpp
@@ -0,0 +1,28 @@
+#pragma once
+
+#include "interfaces/report.hpp"
+#include "interfaces/report_manager.hpp"
+#include "interfaces/types.hpp"
+
+#include <chrono>
+#include <memory>
+
+class ReportManager;
+
+namespace interfaces
+{
+
+class ReportFactory
+{
+ public:
+ virtual ~ReportFactory() = default;
+
+ virtual std::unique_ptr<interfaces::Report>
+ make(const std::string& name, const std::string& reportingType,
+ bool emitsReadingsSignal, bool logToMetricReportsCollection,
+ std::chrono::milliseconds period,
+ const ReadingParameters& metricParams,
+ ReportManager& reportManager) const = 0;
+};
+
+} // namespace interfaces