29 #include "gtest/gtest.h" 42 "etnkQfrWyE18qgir1RPR31Vcm8ibph8a4TArBzp9hx6qG5AtWJ4cg9BYcVmDkbLsqvag2xZuBVtzATMbGENvhbEr2GpNu7NkqX",
43 "23a662c983674c3654d2f2d7c72e055523ef6bdb8bb8290d626268e73c5b4600" 46 "etnkByEHsraTqRBdDrrV2m1kDCHa1NyBpDWJ1XeB5ZGRGtdbUcteBLwN9LBpiDF6EjDj8qEUFqasKC6RNwLHuUju7PCaanugxk",
47 "77dbbfaa83fa79c9280340893dca48a868c23a1b9f8835ec421ce7281e882509" 50 "etnkQNki9u1KyZvnh4WRDsLPQbZgcRo8WFo7JfAftDU7FZhyuxmxxHQMkkxLt8y7RwTKeH1hdMZ1V7ACPDm4HwEw1tLMWjW8Lv",
51 "5f17f13c96c6fcc8ec3f9f539ea00e8087224cd9071fbecfec07441b9e64b60b" 54 "etnk3G6WfJqgTMuuAZXcKxMmv7WpVGC977okK94spzsWc3acWLjebL1MdWN2uNqLygGEHCQWtzf81Phbz952LmK35vx7iuF2zV",
55 "7083f2c357c0fc2f2fabc5d6751d989141aad8361899d427bbc0d03ca2f2850d" 58 "etnkAo9GFotYKPmgKbEXBAHhvuwcUU1vDaedMf9TLMdQ3p7tiyE6mr1BNWtyrxDoGs9dPAJ9nKJ5jLt2Gk8oGcYE4JoSB2EreS",
59 "4b754c17b2788826bf57eb028ac8af014c3a9c126a94920c1e00924a4a98cf0d" 63 static const size_t KEYS_COUNT = 5;
67 ASSERT_TRUE(idx <
sizeof(test_addresses) /
sizeof(test_addresses[0]));
80 catch (
const std::exception &e)
82 MFATAL(
"Error creating test wallet: " << e.what());
87 static std::vector<std::string> exchange_round(std::vector<tools::wallet2>& wallets,
const std::vector<std::string>& mis)
89 std::vector<std::string> new_infos;
90 for (
size_t i = 0; i < wallets.size(); ++i) {
97 static void make_wallets(std::vector<tools::wallet2>& wallets,
unsigned int M)
99 ASSERT_TRUE(wallets.size() > 1 && wallets.size() <= KEYS_COUNT);
102 std::vector<std::string> mis(wallets.size());
104 for (
size_t i = 0; i < wallets.size(); ++i) {
105 make_wallet(i, wallets[i]);
107 mis[i] = wallets[i].get_multisig_info();
110 for (
auto& wallet: wallets) {
114 std::vector<std::string> mxis;
115 for (
size_t i = 0; i < wallets.size(); ++i) {
120 while (!mxis[0].
empty()) {
121 mxis = exchange_round(wallets, mxis);
124 for (
size_t i = 0; i < wallets.size(); ++i) {
142 std::vector<tools::wallet2> wallets(2);
143 make_wallets(wallets, 2);
148 std::vector<tools::wallet2> wallets(3);
149 make_wallets(wallets, 3);
154 std::vector<tools::wallet2> wallets(3);
155 make_wallets(wallets, 2);
160 std::vector<tools::wallet2> wallets(4);
161 make_wallets(wallets, 2);
166 std::vector<tools::wallet2> wallets(5);
167 make_wallets(wallets, 2);
std::string get_public_address_str(network_type nettype) const
#define ASSERT_FALSE(condition)
const account_keys & get_keys() const
#define ASSERT_TRUE(condition)
crypto::secret_key m_spend_secret_key