#pragma once #include "IndexerService.h" #include class MockIndexerService : public IndexerService { public: MockIndexerService(); std::optional getAccount(const QString& accountId) override; std::optional getBlockById(quint64 blockId) override; std::optional getBlockByHash(const QString& hash) override; std::optional getTransaction(const QString& hash) override; QVector getBlocks(std::optional before, int limit) override; quint64 getLatestBlockId() override; QVector getTransactionsByAccount(const QString& accountId, int offset, int limit) override; SearchResults search(const QString& query) override; private: void generateData(); QString randomHash(); QString randomAccountId(); Transaction generatePublicTransaction(); Transaction generatePrivacyPreservingTransaction(); Transaction generateProgramDeploymentTransaction(); QVector m_blocks; QMap m_blocksByHash; QMap m_transactionsByHash; QMap m_accounts; };