/** * ModuleTests for Msg * $Id$ * $HeadURL$ * $Author$ */ #pragma once #include #include #include #include #include #include #include namespace AlarmManagement { class AlmTests : public QObject , protected AlarmManagement::Interface::Ftc::ConfigureAlarmsReplyHandler { Q_OBJECT public: explicit AlmTests(QObject *parent = nullptr); ~AlmTests(); bool init(int domainId, int testId, int operatorId); bool testsSuccessful() const { return m_bTestsSuccessful; } public Q_SLOTS: void startTest(); protected Q_SLOTS: void tryConfigureAlarms(); void tryConfigureAlarmsList(); void trySendEvent(); void tryCreateParticipant(); void failExit(); void ExitSuccess(); protected: void onConfigureAlarmsReply(const Core::FunctionReplyObject &replyObject) override final; private: void checkAlarm(); std::shared_ptr m_ddsConnector; std::shared_ptr m_ftcAlm; std::shared_ptr m_dtcAlm; std::shared_ptr m_dtsEem; std::shared_ptr m_dtsPpm; int m_testId; bool m_bTestsSuccessful; int m_operatorId; NGL::INGLLogger &m_logger; int m_participantIndex; }; } // namespace AlarmManagement