32 #ifndef LEDGER_CORE_TRANSACTION_TEST_HELPER_H 33 #define LEDGER_CORE_TRANSACTION_TEST_HELPER_H 36 #include <api/DynamicObject.hpp> 37 #include <wallet/bitcoin/BitcoinLikeWallet.hpp> 38 #include <wallet/bitcoin/BitcoinLikeAccount.hpp> 39 #include <wallet/bitcoin/transaction_builders/BitcoinLikeTransactionBuilder.h> 40 #include <wallet/ethereum/EthereumLikeWallet.h> 41 #include <wallet/ethereum/EthereumLikeAccount.h> 42 #include <wallet/ethereum/transaction_builders/EthereumLikeTransactionBuilder.h> 43 #include <wallet/ripple/RippleLikeWallet.h> 44 #include <wallet/ripple/RippleLikeAccount.h> 45 #include <wallet/ripple/transaction_builders/RippleLikeTransactionBuilder.h> 46 #include <wallet/tezos/TezosLikeWallet.h> 47 #include <wallet/tezos/TezosLikeAccount.h> 48 #include <wallet/tezos/transaction_builders/TezosLikeTransactionBuilder.h> 49 #include "../BaseFixture.h" 55 std::shared_ptr<api::DynamicObject> configuration;
56 std::string walletName;
57 std::string currencyName;
58 std::function<std::shared_ptr<BitcoinLikeAccount> (
const std::shared_ptr<WalletPool>&,
59 const std::shared_ptr<AbstractWallet>& )> inflate_btc;
60 std::function<std::shared_ptr<EthereumLikeAccount> (
const std::shared_ptr<WalletPool>&,
61 const std::shared_ptr<AbstractWallet>& )> inflate_eth;
63 std::function<std::shared_ptr<RippleLikeAccount> (
const std::shared_ptr<WalletPool>&,
64 const std::shared_ptr<AbstractWallet>& )> inflate_xrp;
66 std::function<std::shared_ptr<TezosLikeAccount> (
const std::shared_ptr<WalletPool>&,
67 const std::shared_ptr<AbstractWallet>& )> inflate_xtz;
72 void SetUp()
override {
79 pool = newDefaultPool();
80 wallet = wait(pool->createWallet(testData.walletName, testData.currencyName, testData.configuration));
81 account = testData.inflate_btc(pool, wallet);
82 currency = wallet->getCurrency();
85 void TearDown()
override {
86 BaseFixture::TearDown();
92 std::shared_ptr<BitcoinLikeTransactionBuilder> tx_builder() {
95 std::shared_ptr<WalletPool> pool;
96 std::shared_ptr<AbstractWallet> wallet;
97 std::shared_ptr<BitcoinLikeAccount> account;
102 virtual void SetUpConfig() = 0;
107 void SetUp()
override {
108 BaseFixture::SetUp();
114 pool = newDefaultPool();
115 wallet = wait(pool->createWallet(testData.walletName, testData.currencyName, testData.configuration));
116 account = testData.inflate_eth(pool, wallet);
117 currency = wallet->getCurrency();
120 void TearDown()
override {
121 BaseFixture::TearDown();
127 std::shared_ptr<EthereumLikeTransactionBuilder> tx_builder() {
130 std::shared_ptr<WalletPool> pool;
131 std::shared_ptr<AbstractWallet> wallet;
132 std::shared_ptr<EthereumLikeAccount> account;
137 virtual void SetUpConfig() = 0;
142 void SetUp()
override {
143 BaseFixture::SetUp();
149 pool = newDefaultPool();
150 wallet = wait(pool->createWallet(testData.walletName, testData.currencyName, testData.configuration));
151 account = testData.inflate_xrp(pool, wallet);
152 currency = wallet->getCurrency();
155 void TearDown()
override {
156 BaseFixture::TearDown();
162 std::shared_ptr<RippleLikeTransactionBuilder> tx_builder() {
165 std::shared_ptr<WalletPool> pool;
166 std::shared_ptr<AbstractWallet> wallet;
167 std::shared_ptr<RippleLikeAccount> account;
172 virtual void SetUpConfig() = 0;
177 void SetUp()
override {
178 BaseFixture::SetUp();
184 pool = newDefaultPool();
185 wallet = wait(pool->createWallet(testData.walletName, testData.currencyName, testData.configuration));
186 account = testData.inflate_xtz(pool, wallet);
187 currency = wallet->getCurrency();
190 void TearDown()
override {
191 BaseFixture::TearDown();
197 std::shared_ptr<TezosLikeTransactionBuilder> tx_builder() {
200 std::shared_ptr<WalletPool> pool;
201 std::shared_ptr<AbstractWallet> wallet;
202 std::shared_ptr<TezosLikeAccount> account;
207 virtual void SetUpConfig() = 0;
212 #endif //LEDGER_CORE_TRANSACTION_TEST_HELPER_H Definition: Account.cpp:8
Definition: BitcoinLikeTransactionBuilder.h:66
Definition: transaction_test_helper.h:105
Definition: transaction_test_helper.h:140
Definition: RippleLikeTransactionBuilder.h:67
Definition: transaction_test_helper.h:54
Definition: Currency.hpp:23
Definition: TezosLikeTransactionBuilder.h:69
Definition: transaction_test_helper.h:175
Definition: BaseFixture.h:76
Definition: transaction_test_helper.h:70
Definition: EthereumLikeTransactionBuilder.h:67