112 lines
3.3 KiB
C++
Executable File
112 lines
3.3 KiB
C++
Executable File
/**
|
|
* @RDE_HEADER@
|
|
* ISM Function Topic test executable
|
|
* $Id$
|
|
* @RDE_HEADER@
|
|
* Module Tests for FLM
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
* Created by Iuliana Ojog, SLSE, 2017-04-05
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <FileManagement/flm_ftc.h>
|
|
#include <FileManagement/flm_dtc.h>
|
|
#include <FileManagement/flm_db.h>
|
|
#include <FileManagement/flm_db_impl_custom.h>
|
|
#include <FileManagement/flm_ftc_types.h>
|
|
|
|
#include <DDS/DDSConnector/dds_connector.h>
|
|
|
|
#include <FileManagement/logger.h>
|
|
#include <QPixmap>
|
|
#include <ngldb/db_service_handler.h>
|
|
|
|
namespace FileManagement
|
|
{
|
|
using DbHandler = NGLDB::DbServiceHandler<DatabaseInterface>;
|
|
class FlmTests : public QObject
|
|
, protected FileManagement::Interface::Ftc::FolderModifyReplyHandler
|
|
, protected FileManagement::Interface::Ftc::FolderRemoveReplyHandler
|
|
, protected FileManagement::Interface::Ftc::FileContentModifyReplyHandler
|
|
, protected FileManagement::Interface::Ftc::FileContentRemoveReplyHandler
|
|
, protected FileManagement::Interface::Ftc::FileContentExportReplyHandler
|
|
, protected FileManagement::Interface::Ftc::GetFileContentDataReplyHandler
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit FlmTests(QObject *parent = nullptr);
|
|
~FlmTests();
|
|
|
|
bool init(int domainId, int testId, int folderId, int fileContentId, int operatorId);
|
|
bool testsSuccessful() const { return m_bTestsSuccessful; }
|
|
|
|
public Q_SLOTS:
|
|
void startTest();
|
|
protected Q_SLOTS:
|
|
// folder
|
|
void tryCreateFolder();
|
|
void tryModifyFolder();
|
|
void tryRemoveFolder();
|
|
int createFolder(int parentFolderId, const QString &folderName, bool isHidden = false);
|
|
|
|
// file content
|
|
void tryCreateFileContent();
|
|
void tryModifyFileContent();
|
|
void tryRemoveFileContent();
|
|
void tryExportFileContent();
|
|
void tryGetContent();
|
|
void tryUpdateStatus();
|
|
|
|
// plans etc.
|
|
void tryCreatePlan();
|
|
void tryCreateFav();
|
|
void tryCreateSymbol();
|
|
|
|
// custom dtc's
|
|
void tryGetAllTemplates();
|
|
void tryGetAllPlans();
|
|
void tryGetAllFavs();
|
|
void tryGetAllSymbols();
|
|
|
|
protected:
|
|
// folder
|
|
void onFolderModifyReply(const Core::FunctionReplyObject &replyObject) override final;
|
|
void onFolderRemoveReply(const Core::FunctionReplyObject &replyObject) override final { onReply(replyObject); }
|
|
|
|
// file content
|
|
void onFileContentModifyReply(const Core::FunctionReplyObject &replyObject) override final;
|
|
void onFileContentRemoveReply(const Core::FunctionReplyObject &replyObject) override final { onReply(replyObject); }
|
|
void onFileContentExportReply(const Core::FunctionReplyObject &replyObject) override final { onReply(replyObject); }
|
|
void onGetFileContentDataReply(const GetFileContentDataReply &replyObject) override final;
|
|
|
|
// general
|
|
void onError(const QString &reason);
|
|
void onReply(const Core::FunctionReplyObject &replyObject);
|
|
void failExit();
|
|
bool checkContentSize(int fileId);
|
|
|
|
private:
|
|
std::shared_ptr<DDSConnector::DdsConnector> m_ddsConnector;
|
|
std::shared_ptr<FileManagement::Interface::Ftc> m_ftc;
|
|
std::shared_ptr<FileManagement::Interface::Dtc> m_dtc;
|
|
std::shared_ptr<FileManagement::DatabaseInterface> m_db;
|
|
std::shared_ptr<FileManagement::DbHandler> m_dbHandler;
|
|
|
|
std::vector<uint8_t> m_content;
|
|
|
|
// given
|
|
int m_testId;
|
|
int m_folderId;
|
|
int m_fileContentId;
|
|
int m_operatorId;
|
|
bool m_bTestsSuccessful;
|
|
|
|
LOGGER_T m_logger;
|
|
|
|
};
|
|
|
|
} // namespace FileManagement
|