/** * AES Function Topic Client test executable * $Id$ * $HeadURL$ * $Author$ */ #pragma once #include "aes_test_base.h" namespace AreaEffectSimulation { class TestChargeAdministration final : public TestBase , protected AreaEffectSimulation::Interface::Ftc::ChargeAdministrationModifyReplyHandler { Q_OBJECT public: explicit TestChargeAdministration(QObject *parent = nullptr); bool init(int domainId, int exerciseId, int testId) override; bool checkBaseData(const AreaEffectSimulation::ChargeAdministration &a, const AreaEffectSimulation::ChargeAdministration &b) const; public Q_SLOTS: void startTest() override { if (m_testId == 0) tryCreateChargeAdministration(); else tryCreateCA();} private Q_SLOTS: void tryCreateChargeAdministration(); void tryCreateCA(); void tryCreateChargeAdministration(int, int, int); void tryModifyChargeAdministration(); protected Q_SLOTS: void chargeAdministrationChanged(const AreaEffectSimulation::ChargeAdministration &data, DataModification modType); protected: void onChargeAdministrationModifyReply(const Core::FunctionReplyObject &replyObject) override; private: AreaEffectSimulation::ChargeAdministration m_caData; }; } // namespace AreaEffectSimulation