diff --git a/src/gui/qt-daemon/application/daemon_backend.cpp b/src/gui/qt-daemon/application/daemon_backend.cpp index b36568be..aac237ef 100644 --- a/src/gui/qt-daemon/application/daemon_backend.cpp +++ b/src/gui/qt-daemon/application/daemon_backend.cpp @@ -1113,7 +1113,7 @@ std::string daemon_backend::get_wallet_info(size_t wallet_id, view::wallet_info& GET_WALLET_OPT_BY_ID(wallet_id, w); return get_wallet_info(w, wi); } -std::string daemon_backend::get_contracts(size_t wallet_id, std::vector& contracts) +std::string daemon_backend::get_contracts(size_t wallet_id, std::vector& contracts) { tools::wallet2::escrow_contracts_container cc; GET_WALLET_OPT_BY_ID(wallet_id, w); @@ -1130,46 +1130,41 @@ std::string daemon_backend::get_contracts(size_t wallet_id, std::vector(contracts[i]) = c.second; + static_cast(contracts[i]) = c.second; contracts[i].contract_id = c.first; i++; } return API_RETURN_CODE_OK; } -std::string daemon_backend::create_proposal(size_t wallet_id, - const bc_services::contract_private_details& escrow_details, - const std::string& payment_id, - uint64_t expiration_period, - uint64_t fee, - uint64_t b_fee) +std::string daemon_backend::create_proposal(const view::create_proposal_param_gui& cpp) { - tools::wallet2::escrow_contracts_container cc; - GET_WALLET_OPT_BY_ID(wallet_id, w); + //tools::wallet2::escrow_contracts_container cc; + GET_WALLET_OPT_BY_ID(cpp.wallet_id, w); try { currency::transaction tx = AUTO_VAL_INIT(tx); currency::transaction template_tx = AUTO_VAL_INIT(template_tx); - w.w->get()->send_escrow_proposal(escrow_details, 0, 0, expiration_period, fee, b_fee, payment_id, tx, template_tx); + w.w->get()->send_escrow_proposal(cpp, tx, template_tx); //TODO: add some return API_RETURN_CODE_OK; } catch (const tools::error::not_enough_money& e) { - LOG_ERROR(get_wallet_log_prefix(wallet_id) + "send_escrow_proposal error: API_RETURN_CODE_NOT_ENOUGH_MONEY: " << e.what()); + LOG_ERROR(get_wallet_log_prefix(cpp.wallet_id) + "send_escrow_proposal error: API_RETURN_CODE_NOT_ENOUGH_MONEY: " << e.what()); std::string err_code = API_RETURN_CODE_NOT_ENOUGH_MONEY; return err_code; } catch (const std::exception& e) { - LOG_ERROR(get_wallet_log_prefix(wallet_id) + "send_escrow_proposal error: " << e.what()); + LOG_ERROR(get_wallet_log_prefix(cpp.wallet_id) + "send_escrow_proposal error: " << e.what()); std::string err_code = API_RETURN_CODE_INTERNAL_ERROR; err_code += std::string(":") + e.what(); return err_code; } catch (...) { - LOG_ERROR(get_wallet_log_prefix(wallet_id) + "send_escrow_proposal error: unknown error"); + LOG_ERROR(get_wallet_log_prefix(cpp.wallet_id) + "send_escrow_proposal error: unknown error"); return API_RETURN_CODE_INTERNAL_ERROR; } } @@ -1282,7 +1277,7 @@ std::string daemon_backend::start_pos_mining(uint64_t wallet_id) wo.need_to_update_wallet_info = true; return API_RETURN_CODE_OK; } -std::string daemon_backend::get_mining_history(uint64_t wallet_id, tools::wallet_rpc::mining_history& mh) +std::string daemon_backend::get_mining_history(uint64_t wallet_id, tools::wallet_public::mining_history& mh) { GET_WALLET_OPT_BY_ID(wallet_id, wo); @@ -1438,7 +1433,7 @@ void daemon_backend::on_new_block(size_t wallet_id, uint64_t /*height*/, const c } -void daemon_backend::on_transfer2(size_t wallet_id, const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) +void daemon_backend::on_transfer2(size_t wallet_id, const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) { view::transfer_event_info tei = AUTO_VAL_INIT(tei); tei.ti = wti; @@ -1461,7 +1456,7 @@ void daemon_backend::on_sync_progress(size_t wallet_id, const uint64_t& percents wspp.wallet_id = wallet_id; m_pview->wallet_sync_progress(wspp); } -void daemon_backend::on_transfer_canceled(size_t wallet_id, const tools::wallet_rpc::wallet_transfer_info& wti) +void daemon_backend::on_transfer_canceled(size_t wallet_id, const tools::wallet_public::wallet_transfer_info& wti) { view::transfer_event_info tei = AUTO_VAL_INIT(tei); tei.ti = wti; diff --git a/src/gui/qt-daemon/application/daemon_backend.h b/src/gui/qt-daemon/application/daemon_backend.h index bcf878ee..ca37e31e 100644 --- a/src/gui/qt-daemon/application/daemon_backend.h +++ b/src/gui/qt-daemon/application/daemon_backend.h @@ -87,11 +87,12 @@ public: std::string run_wallet(uint64_t wallet_id); std::string get_recent_transfers(size_t wallet_id, uint64_t offset, uint64_t count, view::transfers_array& tr_hist); std::string get_wallet_info(size_t wallet_id, view::wallet_info& wi); - std::string get_contracts(size_t wallet_id, std::vector& contracts); + std::string get_contracts(size_t wallet_id, std::vector& contracts); std::string create_proposal(size_t wallet_id, const bc_services::contract_private_details& escrow, const std::string& payment_id, - uint64_t expiration_period, - uint64_t fee, - uint64_t b_fee); + uint64_t expiration_period, + uint64_t fee, + uint64_t b_fee); + std::string create_proposal(const view::create_proposal_param_gui& cpp); std::string accept_proposal(size_t wallet_id, const crypto::hash& contract_id); std::string release_contract(size_t wallet_id, const crypto::hash& contract_id, const std::string& contract_over_type); std::string request_cancel_contract(size_t wallet_id, const crypto::hash& contract_id, uint64_t fee, uint64_t expiration_period); @@ -116,7 +117,7 @@ public: std::string start_pos_mining(uint64_t wallet_id); std::string stop_pos_mining(uint64_t wallet_id); std::string check_available_sources(uint64_t wallet_id, std::list& amounts); - std::string get_mining_history(uint64_t wallet_id, tools::wallet_rpc::mining_history& wrpc); + std::string get_mining_history(uint64_t wallet_id, tools::wallet_public::mining_history& wrpc); std::string get_wallet_restore_info(uint64_t wallet_id, std::string& restore_key); std::string backup_wallet(uint64_t wallet_id, const std::wstring& path); std::string reset_wallet_password(uint64_t wallet_id, const std::string& pass); @@ -154,10 +155,10 @@ private: static void prepare_wallet_status_info(wallet_vs_options& wo, view::wallet_status_info& wsi); //----- i_backend_wallet_callback ------ virtual void on_new_block(size_t wallet_id, uint64_t height, const currency::block& block); - virtual void on_transfer2(size_t wallet_id, const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined); + virtual void on_transfer2(size_t wallet_id, const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined); virtual void on_pos_block_found(size_t wallet_id, const currency::block& /*block*/); virtual void on_sync_progress(size_t wallet_id, const uint64_t& /*percents*/); - virtual void on_transfer_canceled(size_t wallet_id, const tools::wallet_rpc::wallet_transfer_info& wti); + virtual void on_transfer_canceled(size_t wallet_id, const tools::wallet_public::wallet_transfer_info& wti); std::thread m_main_worker_thread; std::atomic m_stop_singal_sent; diff --git a/src/gui/qt-daemon/application/mainwindow.cpp b/src/gui/qt-daemon/application/mainwindow.cpp index 580375cb..70866c1c 100644 --- a/src/gui/qt-daemon/application/mainwindow.cpp +++ b/src/gui/qt-daemon/application/mainwindow.cpp @@ -1433,7 +1433,7 @@ QString MainWindow::create_proposal(const QString& param) { TRY_ENTRY(); LOG_API_TIMING(); - PREPARE_ARG_FROM_JSON(view::create_proposal_param, cpp); + PREPARE_ARG_FROM_JSON(view::create_proposal_param_gui, cpp); PREPARE_RESPONSE(view::contracts_array, ar); ar.error_code = m_backend.create_proposal(cpp.wallet_id, cpp.details, cpp.payment_id, cpp.expiration_period, cpp.fee, cpp.b_fee); return MAKE_RESPONSE(ar); @@ -1441,8 +1441,6 @@ QString MainWindow::create_proposal(const QString& param) } - - QString MainWindow::accept_proposal(const QString& param) { TRY_ENTRY(); @@ -1683,7 +1681,7 @@ QString MainWindow::get_mining_history(const QString& param) LOG_API_TIMING(); //return prepare_call("get_mining_history", param, [this](const view::wallet_id_obj& a, view::api_response& ar) { PREPARE_ARG_FROM_JSON(view::wallet_id_obj, a); - PREPARE_RESPONSE(tools::wallet_rpc::mining_history, ar); + PREPARE_RESPONSE(tools::wallet_public::mining_history, ar); ar.error_code = m_backend.get_mining_history(a.wallet_id, ar.response_data); if (ar.error_code != API_RETURN_CODE_OK) diff --git a/src/gui/qt-daemon/application/view_iface.h b/src/gui/qt-daemon/application/view_iface.h index 41a66838..d0a7ebd2 100644 --- a/src/gui/qt-daemon/application/view_iface.h +++ b/src/gui/qt-daemon/application/view_iface.h @@ -17,7 +17,7 @@ DISABLE_VS_WARNINGS(4503) #include "serialization/keyvalue_serialization.h" #include "storages/portable_storage_template_helper.h" #include "rpc/core_rpc_server_commands_defs.h" -#include "wallet/wallet_rpc_server_commans_defs.h" +#include "wallet/wallet_public_structs_defs.h" #include "currency_core/offers_services_helpers.h" #include "currency_core/basic_api_response_codes.h" POP_WARNINGS @@ -340,7 +340,7 @@ public: struct transfer_event_info { - tools::wallet_rpc::wallet_transfer_info ti; + tools::wallet_public::wallet_transfer_info ti; uint64_t unlocked_balance; uint64_t balance; uint64_t total_mined; @@ -357,8 +357,8 @@ public: struct transfers_array { - std::vector unconfirmed; - std::vector history; + std::vector unconfirmed; + std::vector history; uint64_t total_history_items; BEGIN_KV_SERIALIZE_MAP() @@ -441,7 +441,7 @@ public: struct contracts_array { - std::vector contracts; + std::vector contracts; BEGIN_KV_SERIALIZE_MAP() KV_SERIALIZE(contracts) @@ -583,24 +583,6 @@ public: }; - struct create_proposal_param - { - uint64_t wallet_id; - bc_services::contract_private_details details; - std::string payment_id; - uint64_t expiration_period; - uint64_t fee; - uint64_t b_fee; - - BEGIN_KV_SERIALIZE_MAP() - KV_SERIALIZE(wallet_id) - KV_SERIALIZE(details) - KV_SERIALIZE(payment_id) - KV_SERIALIZE(expiration_period) - KV_SERIALIZE(fee) - KV_SERIALIZE(b_fee) - END_KV_SERIALIZE_MAP() - }; struct wallet_and_contract_id_param { @@ -647,6 +629,16 @@ public: }; + struct create_proposal_param_gui : public tools::wallet_public::create_proposal_param + { + uint64_t wallet_id; + + BEGIN_KV_SERIALIZE_MAP() + KV_SERIALIZE(wallet_id) + KV_CHAIN_BASE(tools::wallet_public::create_proposal_param) + END_KV_SERIALIZE_MAP() + }; + struct address_validation_response { std::string error_code; diff --git a/src/gui/qt-daemon/application/wallet_id_adapter.h b/src/gui/qt-daemon/application/wallet_id_adapter.h index 766cbf1f..b36b5bac 100644 --- a/src/gui/qt-daemon/application/wallet_id_adapter.h +++ b/src/gui/qt-daemon/application/wallet_id_adapter.h @@ -12,10 +12,10 @@ class i_backend_wallet_callback { public: virtual void on_new_block(size_t wallet_id, uint64_t /*height*/, const currency::block& /*block*/) {} - virtual void on_transfer2(size_t wallet_id, const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) {} + virtual void on_transfer2(size_t wallet_id, const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) {} virtual void on_pos_block_found(size_t wallet_id, const currency::block& /*block*/) {} virtual void on_sync_progress(size_t wallet_id, const uint64_t& /*percents*/) {} - virtual void on_transfer_canceled(size_t wallet_id, const tools::wallet_rpc::wallet_transfer_info& wti) {} + virtual void on_transfer_canceled(size_t wallet_id, const tools::wallet_public::wallet_transfer_info& wti) {} }; struct i_wallet_to_i_backend_adapter: public tools::i_wallet2_callback @@ -27,7 +27,7 @@ struct i_wallet_to_i_backend_adapter: public tools::i_wallet2_callback virtual void on_new_block(uint64_t height, const currency::block& block) { m_pbackend->on_new_block(m_wallet_id, height, block); } - virtual void on_transfer2(const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) { + virtual void on_transfer2(const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) { m_pbackend->on_transfer2(m_wallet_id, wti, balance, unlocked_balance, total_mined); } virtual void on_pos_block_found(const currency::block& wti) { @@ -36,7 +36,7 @@ struct i_wallet_to_i_backend_adapter: public tools::i_wallet2_callback virtual void on_sync_progress(const uint64_t& progress) { m_pbackend->on_sync_progress(m_wallet_id, progress); } - virtual void on_transfer_canceled(const tools::wallet_rpc::wallet_transfer_info& wti) { + virtual void on_transfer_canceled(const tools::wallet_public::wallet_transfer_info& wti) { m_pbackend->on_transfer_canceled(m_wallet_id, wti); } private: diff --git a/src/simplewallet/simplewallet.cpp b/src/simplewallet/simplewallet.cpp index 45c77b65..351acb8a 100644 --- a/src/simplewallet/simplewallet.cpp +++ b/src/simplewallet/simplewallet.cpp @@ -683,7 +683,7 @@ bool simple_wallet::show_balance(const std::vector& args/* = std::v return true; } //---------------------------------------------------------------------------------------------------- -bool print_wti(const tools::wallet_rpc::wallet_transfer_info& wti) +bool print_wti(const tools::wallet_public::wallet_transfer_info& wti) { epee::log_space::console_colors cl; if (wti.is_income) @@ -718,8 +718,8 @@ bool print_wti(const tools::wallet_rpc::wallet_transfer_info& wti) //---------------------------------------------------------------------------------------------------- bool simple_wallet::list_recent_transfers(const std::vector& args) { - std::vector unconfirmed; - std::vector recent; + std::vector unconfirmed; + std::vector recent; m_wallet->get_recent_transfers_history(recent, 0, 0); m_wallet->get_unconfirmed_transfers(unconfirmed); //workaround for missed fee @@ -743,8 +743,8 @@ bool simple_wallet::list_recent_transfers(const std::vector& args) //---------------------------------------------------------------------------------------------------- bool simple_wallet::list_recent_transfers_ex(const std::vector& args) { - std::vector unconfirmed; - std::vector recent; + std::vector unconfirmed; + std::vector recent; m_wallet->get_recent_transfers_history(recent, 0, 0); m_wallet->get_unconfirmed_transfers(unconfirmed); //workaround for missed fee diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp index 15a36e4d..3b88e195 100644 --- a/src/wallet/wallet2.cpp +++ b/src/wallet/wallet2.cpp @@ -63,7 +63,7 @@ namespace tools return max_unlock_time; } //---------------------------------------------------------------------------------------------------- -void wallet2::fill_transfer_details(const currency::transaction& tx, const tools::money_transfer2_details& td, tools::wallet_rpc::wallet_transfer_info_details& res_td) const +void wallet2::fill_transfer_details(const currency::transaction& tx, const tools::money_transfer2_details& td, tools::wallet_public::wallet_transfer_info_details& res_td) const { PROFILE_FUNC("wallet2::fill_transfer_details"); for (auto si : td.spent_indices) @@ -459,7 +459,7 @@ void wallet2::process_new_transaction(const currency::transaction& tx, uint64_t } } //---------------------------------------------------------------------------------------------------- -void wallet2::prepare_wti_decrypted_attachments(wallet_rpc::wallet_transfer_info& wti, const std::vector& decrypted_att) +void wallet2::prepare_wti_decrypted_attachments(wallet_public::wallet_transfer_info& wti, const std::vector& decrypted_att) { PROFILE_FUNC("wallet2::prepare_wti_decrypted_attachments"); tx_payer tp = AUTO_VAL_INIT(tp); @@ -511,7 +511,7 @@ void wallet2::accept_proposal(const crypto::hash& contract_id, uint64_t b_accept THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it != m_contracts.end(), "Unknow contract id: " << contract_id); THROW_IF_FALSE_WALLET_INT_ERR_EX(!contr_it->second.is_a, "contr_it->second.is_a supposed to be false, but it is " << contr_it->second.is_a); - THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.state == tools::wallet_rpc::escrow_contract_details_basic::proposal_sent, "contr_it->second.state supposed to be proposal_sent(" << tools::wallet_rpc::escrow_contract_details_basic::proposal_sent << ") but it is: " << tools::wallet_rpc::get_escrow_contract_state_name(contr_it->second.state)); + THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.state == tools::wallet_public::escrow_contract_details_basic::proposal_sent, "contr_it->second.state supposed to be proposal_sent(" << tools::wallet_public::escrow_contract_details_basic::proposal_sent << ") but it is: " << tools::wallet_public::get_escrow_contract_state_name(contr_it->second.state)); construct_tx_param construct_param = AUTO_VAL_INIT(construct_param); construct_param.fee = b_acceptance_fee; @@ -585,10 +585,10 @@ void wallet2::finish_contract(const crypto::hash& contract_id, const std::string THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it != m_contracts.end(), "Unknow contract id: " << contract_id); THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.is_a, "contr_it->second.is_a is supposed to be true, but it is " << contr_it->second.is_a); - THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_accepted - || contr_it->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent, - "incorrect contract state at finish_contract(): (" << contr_it->second.state << "), expected states: contract_accepted (" << tools::wallet_rpc::escrow_contract_details_basic::contract_accepted << "), " << - "contract_cancel_proposal_sent (" << tools::wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent << ")"); + THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.state == tools::wallet_public::escrow_contract_details_basic::contract_accepted + || contr_it->second.state == tools::wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent, + "incorrect contract state at finish_contract(): (" << contr_it->second.state << "), expected states: contract_accepted (" << tools::wallet_public::escrow_contract_details_basic::contract_accepted << "), " << + "contract_cancel_proposal_sent (" << tools::wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent << ")"); auto multisig_it = m_multisig_transfers.find(contract_id); THROW_IF_FALSE_WALLET_INT_ERR_EX(multisig_it != m_multisig_transfers.end(), "Unknow multisig id: " << contract_id); @@ -627,8 +627,8 @@ void wallet2::accept_cancel_contract(const crypto::hash& contract_id, currency:: TIME_MEASURE_FINISH_MS(timing1); THROW_IF_FALSE_WALLET_INT_ERR_EX(!contr_it->second.is_a, "contr_it->second.is_a is supposed to be false, but it is " << contr_it->second.is_a); - THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent, - "incorrect contract state: (" << contr_it->second.state << "), expected state: contract_cancel_proposal_sent (" << tools::wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent << ")"); + THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.state == tools::wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent, + "incorrect contract state: (" << contr_it->second.state << "), expected state: contract_cancel_proposal_sent (" << tools::wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent << ")"); TIME_MEASURE_START_MS(timing2); auto multisig_it = m_multisig_transfers.find(contract_id); @@ -659,10 +659,10 @@ void wallet2::request_cancel_contract(const crypto::hash& contract_id, uint64_t THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it != m_contracts.end(), "Unknow contract id: " << contract_id); THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.is_a, "contr_it->second.is_a supposed to be true at request_cancel_contract"); - THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_accepted - || contr_it->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent, - "incorrect contract state at request_cancel_contract(): " << tools::wallet_rpc::get_escrow_contract_state_name(contr_it->second.state) << ", expected states: contract_accepted (" << tools::wallet_rpc::escrow_contract_details_basic::contract_accepted << "), " << - "contract_cancel_proposal_sent (" << tools::wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent << ")"); + THROW_IF_FALSE_WALLET_INT_ERR_EX(contr_it->second.state == tools::wallet_public::escrow_contract_details_basic::contract_accepted + || contr_it->second.state == tools::wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent, + "incorrect contract state at request_cancel_contract(): " << tools::wallet_public::get_escrow_contract_state_name(contr_it->second.state) << ", expected states: contract_accepted (" << tools::wallet_public::escrow_contract_details_basic::contract_accepted << "), " << + "contract_cancel_proposal_sent (" << tools::wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent << ")"); auto multisig_it = m_multisig_transfers.find(contract_id); THROW_IF_FALSE_WALLET_INT_ERR_EX(multisig_it != m_multisig_transfers.end(), "Unknow multisig id: " << contract_id); @@ -716,24 +716,24 @@ void wallet2::scan_tx_to_key_inputs(std::vector& found_transfers, cons } } //----------------------------------------------------------------------------------------------------- -void wallet2::change_contract_state(wallet_rpc::escrow_contract_details_basic& contract, uint32_t new_state, const crypto::hash& contract_id, const wallet_rpc::wallet_transfer_info& wti) const +void wallet2::change_contract_state(wallet_public::escrow_contract_details_basic& contract, uint32_t new_state, const crypto::hash& contract_id, const wallet_public::wallet_transfer_info& wti) const { WLT_LOG_YELLOW("escrow contract STATE CHANGE (" << (contract.is_a ? "A," : "B,") << contract_id << " via tx " << get_transaction_hash(wti.tx) << ", height: " << wti.height << ") : " - << wallet_rpc::get_escrow_contract_state_name(contract.state) << " -> " << wallet_rpc::get_escrow_contract_state_name(new_state), LOG_LEVEL_1); + << wallet_public::get_escrow_contract_state_name(contract.state) << " -> " << wallet_public::get_escrow_contract_state_name(new_state), LOG_LEVEL_1); contract.state = new_state; contract.height = wti.height; // update height of last state change } //----------------------------------------------------------------------------------------------------- -void wallet2::change_contract_state(wallet_rpc::escrow_contract_details_basic& contract, uint32_t new_state, const crypto::hash& contract_id, const std::string& reason /*= "internal intention"*/) const +void wallet2::change_contract_state(wallet_public::escrow_contract_details_basic& contract, uint32_t new_state, const crypto::hash& contract_id, const std::string& reason /*= "internal intention"*/) const { WLT_LOG_YELLOW("escrow contract STATE CHANGE (" << (contract.is_a ? "A," : "B,") << contract_id << " " << reason << ") : " - << wallet_rpc::get_escrow_contract_state_name(contract.state) << " -> " << wallet_rpc::get_escrow_contract_state_name(new_state), LOG_LEVEL_1); + << wallet_public::get_escrow_contract_state_name(contract.state) << " -> " << wallet_public::get_escrow_contract_state_name(new_state), LOG_LEVEL_1); contract.state = new_state; } //----------------------------------------------------------------------------------------------------- -bool wallet2::handle_proposal(wallet_rpc::wallet_transfer_info& wti, const bc_services::proposal_body& prop) +bool wallet2::handle_proposal(wallet_public::wallet_transfer_info& wti, const bc_services::proposal_body& prop) { PROFILE_FUNC("wallet2::handle_proposal"); crypto::hash ms_id = AUTO_VAL_INIT(ms_id); @@ -742,17 +742,17 @@ bool wallet2::handle_proposal(wallet_rpc::wallet_transfer_info& wti, const bc_se if (!validate_escrow_proposal(wti, prop, decrypted_items, ms_id, cpd)) return false; - wallet_rpc::escrow_contract_details_basic& ed = epee::misc_utils::get_or_insert_value_initialized(m_contracts, ms_id); + wallet_public::escrow_contract_details_basic& ed = epee::misc_utils::get_or_insert_value_initialized(m_contracts, ms_id); ed.expiration_time = currency::get_tx_expiration_time(prop.tx_template); ed.timestamp = wti.timestamp; ed.is_a = cpd.a_addr.m_spend_public_key == m_account.get_keys().m_account_address.m_spend_public_key; - change_contract_state(ed, wallet_rpc::escrow_contract_details_basic::proposal_sent, ms_id, wti); + change_contract_state(ed, wallet_public::escrow_contract_details_basic::proposal_sent, ms_id, wti); ed.private_detailes = cpd; currency::get_payment_id_from_tx(decrypted_items, ed.payment_id); ed.proposal = prop; ed.height = wti.height; wti.contract.resize(1); - static_cast(wti.contract.back()) = ed; + static_cast(wti.contract.back()) = ed; wti.contract.back().contract_id = ms_id; //correct fee in case if it "B", cz fee is paid by "A" @@ -778,7 +778,7 @@ bool wallet2::handle_proposal(wallet_rpc::wallet_transfer_info& wti, const bc_se return true; } //----------------------------------------------------------------------------------------------------- -bool wallet2::handle_release_contract(wallet_rpc::wallet_transfer_info& wti, const std::string& release_instruction) +bool wallet2::handle_release_contract(wallet_public::wallet_transfer_info& wti, const std::string& release_instruction) { PROFILE_FUNC("wallet2::handle_release_contract"); size_t n = get_multisig_in_index(wti.tx.vin); @@ -789,12 +789,12 @@ bool wallet2::handle_release_contract(wallet_rpc::wallet_transfer_info& wti, con WLT_CHECK_AND_ASSERT_MES(it != m_contracts.end(), false, "Multisig out not found in tx template in proposal"); if (release_instruction == BC_ESCROW_SERVICE_INSTRUCTION_RELEASE_NORMAL) - change_contract_state(it->second, wallet_rpc::escrow_contract_details_basic::contract_released_normal, ms_id, wti); + change_contract_state(it->second, wallet_public::escrow_contract_details_basic::contract_released_normal, ms_id, wti); else if (release_instruction == BC_ESCROW_SERVICE_INSTRUCTION_RELEASE_CANCEL) - change_contract_state(it->second, wallet_rpc::escrow_contract_details_basic::contract_released_cancelled, ms_id, wti); + change_contract_state(it->second, wallet_public::escrow_contract_details_basic::contract_released_cancelled, ms_id, wti); else if (release_instruction == BC_ESCROW_SERVICE_INSTRUCTION_RELEASE_BURN) { - change_contract_state(it->second, wallet_rpc::escrow_contract_details_basic::contract_released_burned, ms_id, wti); + change_contract_state(it->second, wallet_public::escrow_contract_details_basic::contract_released_burned, ms_id, wti); wti.amount = it->second.private_detailes.amount_to_pay + it->second.private_detailes.amount_a_pledge + it->second.private_detailes.amount_b_pledge; if (!it->second.is_a) { @@ -812,7 +812,7 @@ bool wallet2::handle_release_contract(wallet_rpc::wallet_transfer_info& wti, con } wti.contract.resize(1); - static_cast(wti.contract.back()) = it->second; + static_cast(wti.contract.back()) = it->second; wti.contract.back().contract_id = ms_id; //if it's A(buyer) then fee paid by B(seller) @@ -824,7 +824,7 @@ bool wallet2::handle_release_contract(wallet_rpc::wallet_transfer_info& wti, con } //----------------------------------------------------------------------------------------------------- -bool wallet2::handle_contract(wallet_rpc::wallet_transfer_info& wti, const bc_services::contract_private_details& cntr, const std::vector& decrypted_attach) +bool wallet2::handle_contract(wallet_public::wallet_transfer_info& wti, const bc_services::contract_private_details& cntr, const std::vector& decrypted_attach) { PROFILE_FUNC("wallet2::handle_contract"); bool is_a = cntr.a_addr == m_account.get_public_address(); @@ -833,19 +833,19 @@ bool wallet2::handle_contract(wallet_rpc::wallet_transfer_info& wti, const bc_se if (!validate_escrow_contract(wti, cntr, is_a, decrypted_attach, ms_id, rel)) return false; - wallet_rpc::escrow_contract_details_basic& ed = epee::misc_utils::get_or_insert_value_initialized(m_contracts, ms_id); + wallet_public::escrow_contract_details_basic& ed = epee::misc_utils::get_or_insert_value_initialized(m_contracts, ms_id); ed.is_a = is_a; ed.expiration_time = currency::get_tx_expiration_time(wti.tx); if (wti.timestamp) ed.timestamp = wti.timestamp; ed.height = wti.height; ed.payment_id = wti.payment_id; - change_contract_state(ed, wallet_rpc::escrow_contract_details_basic::contract_accepted, ms_id, wti); + change_contract_state(ed, wallet_public::escrow_contract_details_basic::contract_accepted, ms_id, wti); ed.private_detailes = cntr; ed.release_body = rel; wti.contract.resize(1); - static_cast(wti.contract.back()) = ed; + static_cast(wti.contract.back()) = ed; wti.contract.back().contract_id = ms_id; //fee workaround: in consolidating transactions impossible no figure out which part of participants paid fee for tx, so we correct it @@ -860,7 +860,7 @@ bool wallet2::handle_contract(wallet_rpc::wallet_transfer_info& wti, const bc_se return true; } //----------------------------------------------------------------------------------------------------- -bool wallet2::handle_cancel_proposal(wallet_rpc::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, const std::vector& decrypted_attach) +bool wallet2::handle_cancel_proposal(wallet_public::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, const std::vector& decrypted_attach) { PROFILE_FUNC("wallet2::handle_cancel_proposal"); //validate cancel proposal @@ -875,26 +875,26 @@ bool wallet2::handle_cancel_proposal(wallet_rpc::wallet_transfer_info& wti, cons uint32_t contract_state = it->second.state; switch (contract_state) { - case wallet_rpc::escrow_contract_details::contract_accepted: - change_contract_state(it->second, wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent, contract_id, wti); BOOST_FALLTHROUGH; + case wallet_public::escrow_contract_details::contract_accepted: + change_contract_state(it->second, wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent, contract_id, wti); BOOST_FALLTHROUGH; // pass through - case wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent: // update contract info even if already in that state + case wallet_public::escrow_contract_details::contract_cancel_proposal_sent: // update contract info even if already in that state it->second.cancel_body.tx_cancel_template = ectb.tx_cancel_template; it->second.cancel_expiration_time = currency::get_tx_expiration_time(ectb.tx_cancel_template); //update wti info to let GUI know wti.contract.resize(1); - static_cast(wti.contract.back()) = it->second; + static_cast(wti.contract.back()) = it->second; wti.contract.back().contract_id = contract_id; return true; default: WLT_LOG_RED("handle_cancel_proposal for contract (" << (it->second.is_a ? "A," : "B,") << contract_id << " via tx " << get_transaction_hash(wti.tx) << ", height: " << wti.height << ") : " << ENDL << - "incorrect state " << wallet_rpc::get_escrow_contract_state_name(it->second.state) << ", while 'contract_accepted' or 'contract_cancel_proposal_sent' was expected -- decline cancel proposal", LOG_LEVEL_1); + "incorrect state " << wallet_public::get_escrow_contract_state_name(it->second.state) << ", while 'contract_accepted' or 'contract_cancel_proposal_sent' was expected -- decline cancel proposal", LOG_LEVEL_1); } return false; } //----------------------------------------------------------------------------------------------------- -bool wallet2::process_contract_info(wallet_rpc::wallet_transfer_info& wti, const std::vector& decrypted_attach) +bool wallet2::process_contract_info(wallet_public::wallet_transfer_info& wti, const std::vector& decrypted_attach) { PROFILE_FUNC("wallet2::process_contract_info"); for (const auto& v : decrypted_attach) @@ -953,7 +953,7 @@ bool wallet2::process_contract_info(wallet_rpc::wallet_transfer_info& wti, const return true; } //----------------------------------------------------------------------------------------------------- -void wallet2::prepare_wti(wallet_rpc::wallet_transfer_info& wti, uint64_t height, uint64_t timestamp, const currency::transaction& tx, uint64_t amount, const money_transfer2_details& td) +void wallet2::prepare_wti(wallet_public::wallet_transfer_info& wti, uint64_t height, uint64_t timestamp, const currency::transaction& tx, uint64_t amount, const money_transfer2_details& td) { PROFILE_FUNC("wallet2::prepare_wti"); wti.tx = tx; @@ -991,15 +991,15 @@ void wallet2::prepare_wti(wallet_rpc::wallet_transfer_info& wti, uint64_t height void wallet2::handle_money_received2(const currency::block& b, const currency::transaction& tx, uint64_t amount, const money_transfer2_details& td) { //decrypt attachments - m_transfer_history.push_back(AUTO_VAL_INIT(wallet_rpc::wallet_transfer_info())); - wallet_rpc::wallet_transfer_info& wti = m_transfer_history.back(); + m_transfer_history.push_back(AUTO_VAL_INIT(wallet_public::wallet_transfer_info())); + wallet_public::wallet_transfer_info& wti = m_transfer_history.back(); wti.is_income = true; prepare_wti(wti, get_block_height(b), get_actual_timestamp(b), tx, amount, td); rise_on_transfer2(wti); } //---------------------------------------------------------------------------------------------------- -void wallet2::rise_on_transfer2(const wallet_rpc::wallet_transfer_info& wti) +void wallet2::rise_on_transfer2(const wallet_public::wallet_transfer_info& wti) { PROFILE_FUNC("wallet2::rise_on_transfer2"); if (!m_do_rise_transfer) @@ -1018,8 +1018,8 @@ void wallet2::handle_money_spent2(const currency::block& b, const std::vector& recipients, const std::vector& recipients_aliases) { - m_transfer_history.push_back(AUTO_VAL_INIT(wallet_rpc::wallet_transfer_info())); - wallet_rpc::wallet_transfer_info& wti = m_transfer_history.back(); + m_transfer_history.push_back(AUTO_VAL_INIT(wallet_public::wallet_transfer_info())); + wallet_public::wallet_transfer_info& wti = m_transfer_history.back(); wti.is_income = false; wti.remote_addresses = recipients; @@ -1033,7 +1033,7 @@ void wallet2::process_unconfirmed(const currency::transaction& tx, std::vectorsecond; + wallet_public::wallet_transfer_info& wti = unconf_it->second; recipients = wti.remote_addresses; recipients_aliases = wti.recipients_aliases; @@ -1406,7 +1406,7 @@ void wallet2::scan_tx_pool(bool& has_related_alias_in_unconfirmed) continue; //prepare notification about pending transaction - wallet_rpc::wallet_transfer_info& unconfirmed_wti = misc_utils::get_or_insert_value_initialized(m_unconfirmed_txs, tx_hash); + wallet_public::wallet_transfer_info& unconfirmed_wti = misc_utils::get_or_insert_value_initialized(m_unconfirmed_txs, tx_hash); unconfirmed_wti.is_income = true; prepare_wti(unconfirmed_wti, 0, m_core_runtime_config.get_core_time(), tx, tx_money_got_in_outs, td); @@ -1434,7 +1434,7 @@ void wallet2::scan_tx_pool(bool& has_related_alias_in_unconfirmed) } //prepare notification about pending transaction - wallet_rpc::wallet_transfer_info& unconfirmed_wti = misc_utils::get_or_insert_value_initialized(m_unconfirmed_txs, tx_hash); + wallet_public::wallet_transfer_info& unconfirmed_wti = misc_utils::get_or_insert_value_initialized(m_unconfirmed_txs, tx_hash); unconfirmed_wti.is_income = false; prepare_wti(unconfirmed_wti, 0, m_core_runtime_config.get_core_time(), tx, amount, td); @@ -1661,13 +1661,13 @@ void wallet2::handle_contract_expirations(uint64_t tx_expiration_ts_median) { switch (contract.second.state) { - case tools::wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent: + case tools::wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent: if (is_tx_expired(contract.second.cancel_body.tx_cancel_template, tx_expiration_ts_median)) - change_contract_state(contract.second, tools::wallet_rpc::escrow_contract_details_basic::contract_accepted, contract.first, "cancel proposal expiration"); + change_contract_state(contract.second, tools::wallet_public::escrow_contract_details_basic::contract_accepted, contract.first, "cancel proposal expiration"); break; - case tools::wallet_rpc::escrow_contract_details_basic::contract_released_cancelled: + case tools::wallet_public::escrow_contract_details_basic::contract_released_cancelled: if (contract.second.height == 0 && is_tx_expired(contract.second.cancel_body.tx_cancel_template, tx_expiration_ts_median)) - change_contract_state(contract.second, tools::wallet_rpc::escrow_contract_details_basic::contract_accepted, contract.first, "cancel acceptance expiration"); + change_contract_state(contract.second, tools::wallet_public::escrow_contract_details_basic::contract_accepted, contract.first, "cancel acceptance expiration"); break; } } @@ -2422,7 +2422,7 @@ uint64_t wallet2::get_recent_transfers_total_count() return m_transfer_history.size(); } //---------------------------------------------------------------------------------------------------- -void wallet2::get_recent_transfers_history(std::vector& trs, size_t offset, size_t count) +void wallet2::get_recent_transfers_history(std::vector& trs, size_t offset, size_t count) { if (offset >= m_transfer_history.size()) return; @@ -2459,13 +2459,13 @@ bool wallet2::is_transfer_okay_for_pos(const transfer_details& tr, uint64_t& sta return true; } //---------------------------------------------------------------------------------------------------- -void wallet2::get_mining_history(wallet_rpc::mining_history& hist) +void wallet2::get_mining_history(wallet_public::mining_history& hist) { for (auto& tr : m_transfer_history) { if (currency::is_coinbase(tr.tx) && tr.tx.vin.size() == 2) { - tools::wallet_rpc::mining_history_entry mhe = AUTO_VAL_INIT(mhe); + tools::wallet_public::mining_history_entry mhe = AUTO_VAL_INIT(mhe); mhe.a = tr.amount; mhe.t = tr.timestamp; mhe.h = tr.height; @@ -2730,7 +2730,7 @@ bool wallet2::build_minted_block(const currency::COMMAND_RPC_SCAN_POS::request& return true; } //---------------------------------------------------------------------------------------------------- -void wallet2::get_unconfirmed_transfers(std::vector& trs) +void wallet2::get_unconfirmed_transfers(std::vector& trs) { for (auto& u : m_unconfirmed_txs) trs.push_back(u.second); @@ -3256,6 +3256,13 @@ void wallet2::remove_transfer_from_expiration_list(uint64_t transfer_index) // (don't change m_spent flag, because transfer status is unclear - the caller should take care of it) } //---------------------------------------------------------------------------------------------------- +void wallet2::send_escrow_proposal(const wallet_public::create_proposal_param& wp, + currency::transaction &proposal_tx, + currency::transaction &escrow_template_tx) +{ + return send_escrow_proposal(wp.details, wp.fake_outputs_count, wp.unlock_time, wp.expiration_period, wp.fee, wp.b_fee, wp.payment_id); +} +//---------------------------------------------------------------------------------------------------- void wallet2::send_escrow_proposal(const bc_services::contract_private_details& ecrow_details, size_t fake_outputs_count, uint64_t unlock_time, @@ -3749,7 +3756,7 @@ uint64_t wallet2::select_transfers(uint64_t needed_money, size_t fake_outputs_co } //---------------------------------------------------------------------------------------------------- bool wallet2::read_money_transfer2_details_from_tx(const transaction& tx, const std::vector& splitted_dsts, - wallet_rpc::wallet_transfer_info_details& wtd) + wallet_public::wallet_transfer_info_details& wtd) { PROFILE_FUNC("wallet2::read_money_transfer2_details_from_tx"); for (auto& d : splitted_dsts) @@ -3780,7 +3787,7 @@ void wallet2::add_sent_unconfirmed_tx(const currency::transaction& tx, const std::vector& splitted_dsts) { PROFILE_FUNC("wallet2::add_sent_unconfirmed_tx"); - wallet_rpc::wallet_transfer_info& unconfirmed_wti = misc_utils::get_or_insert_value_initialized(m_unconfirmed_txs, currency::get_transaction_hash(tx)); + wallet_public::wallet_transfer_info& unconfirmed_wti = misc_utils::get_or_insert_value_initialized(m_unconfirmed_txs, currency::get_transaction_hash(tx)); //unconfirmed_wti.tx = tx; unconfirmed_wti.remote_addresses = recipients; diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h index f4c741c5..cdb4331b 100644 --- a/src/wallet/wallet2.h +++ b/src/wallet/wallet2.h @@ -23,7 +23,7 @@ #include "currency_core/account_boost_serialization.h" #include "currency_core/currency_format_utils.h" -#include "wallet_rpc_server_commans_defs.h" +#include "wallet_public_structs_defs.h" #include "currency_core/currency_format_utils.h" #include "common/unordered_containers_boost_serialization.h" #include "storages/portable_storage_template_helper.h" @@ -91,10 +91,10 @@ namespace tools virtual ~i_wallet2_callback() = default; virtual void on_new_block(uint64_t /*height*/, const currency::block& /*block*/) {} - virtual void on_transfer2(const wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) {} + virtual void on_transfer2(const wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) {} virtual void on_pos_block_found(const currency::block& /*block*/) {} virtual void on_sync_progress(const uint64_t& /*percents*/) {} - virtual void on_transfer_canceled(const wallet_rpc::wallet_transfer_info& wti) {} + virtual void on_transfer_canceled(const wallet_public::wallet_transfer_info& wti) {} }; struct tx_dust_policy @@ -432,7 +432,7 @@ namespace tools typedef std::deque transfer_container; typedef std::unordered_map multisig_transfer_container; - typedef std::unordered_map escrow_contracts_container; + typedef std::unordered_map escrow_contracts_container; typedef std::map > free_amounts_cache_type; @@ -459,9 +459,9 @@ namespace tools currency::account_base& get_account() { return m_account; } const currency::account_base& get_account() const { return m_account; } - void get_recent_transfers_history(std::vector& trs, size_t offset, size_t count); + void get_recent_transfers_history(std::vector& trs, size_t offset, size_t count); uint64_t get_recent_transfers_total_count(); - void get_unconfirmed_transfers(std::vector& trs); + void get_unconfirmed_transfers(std::vector& trs); void init(const std::string& daemon_address = "http://localhost:8080"); bool deinit(); @@ -580,6 +580,11 @@ namespace tools std::vector& selected_transfers, crypto::secret_key& one_time_key); + + void send_escrow_proposal(const wallet_public::create_proposal_param& wp, + currency::transaction &proposal_tx, + currency::transaction &escrow_template_tx); + void send_escrow_proposal(const bc_services::contract_private_details& ecrow_detaild, size_t fake_outputs_count, uint64_t unlock_time, @@ -686,7 +691,7 @@ namespace tools bool reset_history(); bool is_transfer_unlocked(const transfer_details& td) const; bool is_transfer_unlocked(const transfer_details& td, bool for_pos_mining, uint64_t& stake_lock_time) const; - void get_mining_history(wallet_rpc::mining_history& hist); + void get_mining_history(wallet_public::mining_history& hist); void set_core_runtime_config(const currency::core_runtime_config& pc); currency::core_runtime_config& get_core_runtime_config(); bool backup_keys(const std::string& path); @@ -694,8 +699,8 @@ namespace tools bool is_password_valid(const std::string& pass); bool get_actual_offers(std::list& offers, bool fake = false); bool get_fake_offers(std::list& offers, uint64_t amount); - bool process_contract_info(wallet_rpc::wallet_transfer_info& wti, const std::vector& decrypted_attach); - bool handle_proposal(wallet_rpc::wallet_transfer_info& wti, const bc_services::proposal_body& prop); + bool process_contract_info(wallet_public::wallet_transfer_info& wti, const std::vector& decrypted_attach); + bool handle_proposal(wallet_public::wallet_transfer_info& wti, const bc_services::proposal_body& prop); void accept_proposal(const crypto::hash& contract_id, uint64_t b_acceptance_fee, currency::transaction* p_acceptance_tx = nullptr); void finish_contract(const crypto::hash& contract_id, const std::string& release_type, currency::transaction* p_release_tx = nullptr); void request_cancel_contract(const crypto::hash& contract_id, uint64_t fee, uint64_t expiration_period, currency::transaction* p_cancellation_proposal_tx = nullptr); @@ -751,11 +756,11 @@ private: const std::vector& splitted_dsts); bool read_money_transfer2_details_from_tx(const currency::transaction& tx, const std::vector& splitted_dsts, - wallet_rpc::wallet_transfer_info_details& wtd); + wallet_public::wallet_transfer_info_details& wtd); void update_current_tx_limit(); - void prepare_wti(wallet_rpc::wallet_transfer_info& wti, uint64_t height, uint64_t timestamp, const currency::transaction& tx, uint64_t amount, const money_transfer2_details& td); - void prepare_wti_decrypted_attachments(wallet_rpc::wallet_transfer_info& wti, const std::vector& decrypted_att); + void prepare_wti(wallet_public::wallet_transfer_info& wti, uint64_t height, uint64_t timestamp, const currency::transaction& tx, uint64_t amount, const money_transfer2_details& td); + void prepare_wti_decrypted_attachments(wallet_public::wallet_transfer_info& wti, const std::vector& decrypted_att); void handle_money_received2(const currency::block& b, const currency::transaction& tx, uint64_t amount, @@ -774,7 +779,7 @@ private: bool is_transfer_okay_for_pos(const transfer_details& tr, uint64_t& stake_unlock_time); bool scan_unconfirmed_outdate_tx(); const currency::transaction& get_transaction_by_id(const crypto::hash& tx_hash); - void rise_on_transfer2(const wallet_rpc::wallet_transfer_info& wti); + void rise_on_transfer2(const wallet_public::wallet_transfer_info& wti); void process_genesis_if_needed(const currency::block& genesis); bool build_escrow_proposal(bc_services::contract_private_details& ecrow_details, uint64_t fee, uint64_t unlock_time, currency::tx_service_attachment& att, std::vector& selected_indicies); bool prepare_tx_sources(uint64_t needed_money, size_t fake_outputs_count, uint64_t dust_threshold, std::vector& sources, std::vector& selected_indicies, uint64_t& found_money); @@ -786,14 +791,14 @@ private: const tx_dust_policy& dust_policy, const std::vector& dsts, std::vector& final_detinations); - bool handle_contract(wallet_rpc::wallet_transfer_info& wti, const bc_services::contract_private_details& cntr, const std::vector& decrypted_attach); - bool handle_release_contract(wallet_rpc::wallet_transfer_info& wti, const std::string& release_instruction); - bool handle_cancel_proposal(wallet_rpc::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, const std::vector& decrypted_attach); + bool handle_contract(wallet_public::wallet_transfer_info& wti, const bc_services::contract_private_details& cntr, const std::vector& decrypted_attach); + bool handle_release_contract(wallet_public::wallet_transfer_info& wti, const std::string& release_instruction); + bool handle_cancel_proposal(wallet_public::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, const std::vector& decrypted_attach); bool handle_expiration_list(uint64_t tx_expiration_ts_median); void handle_contract_expirations(uint64_t tx_expiration_ts_median); - void change_contract_state(wallet_rpc::escrow_contract_details_basic& contract, uint32_t new_state, const crypto::hash& contract_id, const wallet_rpc::wallet_transfer_info& wti) const; - void change_contract_state(wallet_rpc::escrow_contract_details_basic& contract, uint32_t new_state, const crypto::hash& contract_id, const std::string& reason = "internal intention") const; + void change_contract_state(wallet_public::escrow_contract_details_basic& contract, uint32_t new_state, const crypto::hash& contract_id, const wallet_public::wallet_transfer_info& wti) const; + void change_contract_state(wallet_public::escrow_contract_details_basic& contract, uint32_t new_state, const crypto::hash& contract_id, const std::string& reason = "internal intention") const; uint64_t get_tx_expiration_median() const; @@ -801,25 +806,25 @@ private: void print_tx_sent_message(const currency::transaction& tx, const std::string& description, uint64_t fee = UINT64_MAX); // Validates escrow template tx in assumption it's related to wallet's account (wallet's account is either A or B party in escrow process) - bool validate_escrow_proposal(const wallet_rpc::wallet_transfer_info& wti, const bc_services::proposal_body& prop, + bool validate_escrow_proposal(const wallet_public::wallet_transfer_info& wti, const bc_services::proposal_body& prop, std::vector& decrypted_items, crypto::hash& ms_id, bc_services::contract_private_details& cpd); bool validate_escrow_release(const currency::transaction& tx, bool release_type_normal, const bc_services::contract_private_details& cpd, const currency::txout_multisig& source_ms_out, const crypto::hash& ms_id, size_t source_ms_out_index, const currency::transaction& source_tx, const currency::account_keys& a_keys) const; - bool validate_escrow_contract(const wallet_rpc::wallet_transfer_info& wti, const bc_services::contract_private_details& cpd, bool is_a, + bool validate_escrow_contract(const wallet_public::wallet_transfer_info& wti, const bc_services::contract_private_details& cpd, bool is_a, const std::vector& decrypted_items, crypto::hash& ms_id, bc_services::escrow_relese_templates_body& rtb); - bool validate_escrow_cancel_release(const currency::transaction& tx, const wallet_rpc::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, + bool validate_escrow_cancel_release(const currency::transaction& tx, const wallet_public::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, const std::vector& decrypted_items, crypto::hash& ms_id, bc_services::contract_private_details& cpd, const currency::transaction& source_tx, size_t source_ms_out_index, const currency::account_keys& b_keys, uint64_t minimum_release_fee) const; - bool validate_escrow_cancel_proposal(const wallet_rpc::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, + bool validate_escrow_cancel_proposal(const wallet_public::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, const std::vector& decrypted_items, crypto::hash& ms_id, bc_services::contract_private_details& cpd, const currency::transaction& proposal_template_tx); - void fill_transfer_details(const currency::transaction& tx, const tools::money_transfer2_details& td, tools::wallet_rpc::wallet_transfer_info_details& res_td) const; + void fill_transfer_details(const currency::transaction& tx, const tools::money_transfer2_details& td, tools::wallet_public::wallet_transfer_info_details& res_td) const; void print_source_entry(const currency::tx_source_entry& src) const; void init_log_prefix(); @@ -859,9 +864,9 @@ private: uint64_t m_upper_transaction_size_limit; //TODO: auto-calc this value or request from daemon, now use some fixed value std::atomic m_stop; - std::vector m_transfer_history; + std::vector m_transfer_history; std::unordered_map m_unconfirmed_in_transfers; - std::unordered_map m_unconfirmed_txs; + std::unordered_map m_unconfirmed_txs; std::unordered_set m_unconfirmed_multisig_transfers; std::unordered_map m_tx_keys; @@ -887,7 +892,7 @@ private: } // namespace tools BOOST_CLASS_VERSION(tools::wallet2, WALLET_FILE_SERIALIZATION_VERSION) -BOOST_CLASS_VERSION(tools::wallet_rpc::wallet_transfer_info, 9) +BOOST_CLASS_VERSION(tools::wallet_public::wallet_transfer_info, 9) BOOST_CLASS_VERSION(tools::wallet2::transfer_details, 2) @@ -932,14 +937,14 @@ namespace boost } template - inline void serialize(Archive& a, tools::wallet_rpc::wallet_transfer_info_details& x, const boost::serialization::version_type ver) + inline void serialize(Archive& a, tools::wallet_public::wallet_transfer_info_details& x, const boost::serialization::version_type ver) { a & x.rcv; a & x.spn; } template - inline void serialize(Archive& a, tools::wallet_rpc::wallet_transfer_info& x, const boost::serialization::version_type ver) + inline void serialize(Archive& a, tools::wallet_public::wallet_transfer_info& x, const boost::serialization::version_type ver) { a & x.amount; @@ -975,7 +980,7 @@ namespace boost } template - inline void serialize(Archive& a, tools::wallet_rpc::escrow_contract_details_basic& x, const boost::serialization::version_type ver) + inline void serialize(Archive& a, tools::wallet_public::escrow_contract_details_basic& x, const boost::serialization::version_type ver) { a & x.state; a & x.is_a; @@ -992,9 +997,9 @@ namespace boost } template - inline void serialize(Archive& a, tools::wallet_rpc::escrow_contract_details& x, const boost::serialization::version_type ver) + inline void serialize(Archive& a, tools::wallet_public::escrow_contract_details& x, const boost::serialization::version_type ver) { - a & static_cast(x); + a & static_cast(x); a & x.contract_id; } diff --git a/src/wallet/wallet2_escrow.cpp b/src/wallet/wallet2_escrow.cpp index 9d264508..fe591d3d 100644 --- a/src/wallet/wallet2_escrow.cpp +++ b/src/wallet/wallet2_escrow.cpp @@ -16,7 +16,7 @@ using namespace currency; namespace tools { //----------------------------------------------------------------------------------------------------- -bool wallet2::validate_escrow_proposal(const wallet_rpc::wallet_transfer_info& wti, const bc_services::proposal_body& prop, +bool wallet2::validate_escrow_proposal(const wallet_public::wallet_transfer_info& wti, const bc_services::proposal_body& prop, std::vector& decrypted_items, /* OUT */ crypto::hash& ms_id, /* OUT */ bc_services::contract_private_details& cpd /* OUT */ @@ -244,7 +244,7 @@ bool wallet2::validate_escrow_release(const transaction& tx, bool release_type_n #undef LOC_CHK } //---------------------------------------------------------------------------------------------------- -bool wallet2::validate_escrow_contract(const wallet_rpc::wallet_transfer_info& wti, const bc_services::contract_private_details& cpd, bool is_a, +bool wallet2::validate_escrow_contract(const wallet_public::wallet_transfer_info& wti, const bc_services::contract_private_details& cpd, bool is_a, const std::vector& decrypted_items, crypto::hash& ms_id, /* OUT */ bc_services::escrow_relese_templates_body& rtb /* OUT */) @@ -307,7 +307,7 @@ uint64_t wallet2::get_minimum_allowed_fee_for_contract(const crypto::hash& ms_id // TODO move here: // bool wallet2::handle_contract() //---------------------------------------------------------------------------------------------------- -bool wallet2::validate_escrow_cancel_release(const currency::transaction& tx, const wallet_rpc::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, +bool wallet2::validate_escrow_cancel_release(const currency::transaction& tx, const wallet_public::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, const std::vector& decrypted_items, crypto::hash& ms_id, bc_services::contract_private_details& cpd, const currency::transaction& source_tx, size_t source_ms_out_index, const currency::account_keys& b_keys, uint64_t minimum_release_fee) const { @@ -402,7 +402,7 @@ bool wallet2::validate_escrow_cancel_release(const currency::transaction& tx, co #undef LOC_CHK } //---------------------------------------------------------------------------------------------------- -bool wallet2::validate_escrow_cancel_proposal(const wallet_rpc::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, +bool wallet2::validate_escrow_cancel_proposal(const wallet_public::wallet_transfer_info& wti, const bc_services::escrow_cancel_templates_body& ectb, const std::vector& decrypted_items, crypto::hash& ms_id, bc_services::contract_private_details& cpd, const currency::transaction& proposal_template_tx) { #define LOC_CHK(cond, mes) WLT_CHECK_AND_ASSERT_MES(cond, false, "Invalid escrow cancellation request: " << mes << ". ms id: " << ms_id << ", tx: " << get_transaction_hash(wti.tx)); diff --git a/src/wallet/wallet_rpc_server_commans_defs.h b/src/wallet/wallet_public_structs_defs.h similarity index 95% rename from src/wallet/wallet_rpc_server_commans_defs.h rename to src/wallet/wallet_public_structs_defs.h index 370b0e04..86503587 100644 --- a/src/wallet/wallet_rpc_server_commans_defs.h +++ b/src/wallet/wallet_public_structs_defs.h @@ -13,7 +13,7 @@ #include "currency_core/bc_escrow_service.h" namespace tools { -namespace wallet_rpc +namespace wallet_public { #define WALLET_RPC_STATUS_OK "OK" #define WALLET_RPC_STATUS_BUSY "BUSY" @@ -509,6 +509,31 @@ namespace wallet_rpc }; }; + + struct create_proposal_param + { +// uint64_t wallet_id; + bc_services::contract_private_details details; + std::string payment_id; + uint64_t expiration_period; + uint64_t fee; + uint64_t b_fee; + uint64_t fake_outputs_count; + uint64_t unlock_time; + + BEGIN_KV_SERIALIZE_MAP() +// KV_SERIALIZE(wallet_id) + KV_SERIALIZE(details) + KV_SERIALIZE(payment_id) + KV_SERIALIZE(expiration_period) + KV_SERIALIZE(fee) + KV_SERIALIZE(b_fee) + KV_SERIALIZE(fake_outputs_count) + KV_SERIALIZE(unlock_time) + END_KV_SERIALIZE_MAP() + }; + + inline std::string get_escrow_contract_state_name(uint32_t state) { switch (state) diff --git a/src/wallet/wallet_rpc_server.cpp b/src/wallet/wallet_rpc_server.cpp index 159220ab..9010e48a 100644 --- a/src/wallet/wallet_rpc_server.cpp +++ b/src/wallet/wallet_rpc_server.cpp @@ -125,7 +125,7 @@ namespace tools return true; } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_getbalance(const wallet_rpc::COMMAND_RPC_GET_BALANCE::request& req, wallet_rpc::COMMAND_RPC_GET_BALANCE::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_getbalance(const wallet_public::COMMAND_RPC_GET_BALANCE::request& req, wallet_public::COMMAND_RPC_GET_BALANCE::response& res, epee::json_rpc::error& er, connection_context& cntx) { try { @@ -141,7 +141,7 @@ namespace tools return true; } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_getaddress(const wallet_rpc::COMMAND_RPC_GET_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_GET_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_getaddress(const wallet_public::COMMAND_RPC_GET_ADDRESS::request& req, wallet_public::COMMAND_RPC_GET_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx) { try { @@ -156,7 +156,7 @@ namespace tools return true; } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_transfer(const wallet_rpc::COMMAND_RPC_TRANSFER::request& req, wallet_rpc::COMMAND_RPC_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_transfer(const wallet_public::COMMAND_RPC_TRANSFER::request& req, wallet_public::COMMAND_RPC_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx) { std::string payment_id; if (!epee::string_tools::parse_hexstr_to_binbuff(req.payment_id, payment_id)) @@ -244,7 +244,7 @@ namespace tools return true; } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_store(const wallet_rpc::COMMAND_RPC_STORE::request& req, wallet_rpc::COMMAND_RPC_STORE::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_store(const wallet_public::COMMAND_RPC_STORE::request& req, wallet_public::COMMAND_RPC_STORE::response& res, epee::json_rpc::error& er, connection_context& cntx) { try { @@ -259,7 +259,7 @@ namespace tools return true; } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_get_payments(const wallet_rpc::COMMAND_RPC_GET_PAYMENTS::request& req, wallet_rpc::COMMAND_RPC_GET_PAYMENTS::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_get_payments(const wallet_public::COMMAND_RPC_GET_PAYMENTS::request& req, wallet_public::COMMAND_RPC_GET_PAYMENTS::response& res, epee::json_rpc::error& er, connection_context& cntx) { std::string payment_id; if (!currency::parse_payment_id_from_hex_str(req.payment_id, payment_id)) @@ -281,7 +281,7 @@ namespace tools if (payment.m_unlock_time > payment.m_block_height + WALLET_DEFAULT_TX_SPENDABLE_AGE) continue; } - wallet_rpc::payment_details rpc_payment; + wallet_public::payment_details rpc_payment; rpc_payment.payment_id = req.payment_id; rpc_payment.tx_hash = epee::string_tools::pod_to_hex(payment.m_tx_hash); rpc_payment.amount = payment.m_amount; @@ -293,7 +293,7 @@ namespace tools return true; } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_get_bulk_payments(const wallet_rpc::COMMAND_RPC_GET_BULK_PAYMENTS::request& req, wallet_rpc::COMMAND_RPC_GET_BULK_PAYMENTS::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_get_bulk_payments(const wallet_public::COMMAND_RPC_GET_BULK_PAYMENTS::request& req, wallet_public::COMMAND_RPC_GET_BULK_PAYMENTS::response& res, epee::json_rpc::error& er, connection_context& cntx) { res.payments.clear(); @@ -320,7 +320,7 @@ namespace tools continue; } - wallet_rpc::payment_details rpc_payment; + wallet_public::payment_details rpc_payment; rpc_payment.payment_id = payment_id_str; rpc_payment.tx_hash = epee::string_tools::pod_to_hex(payment.m_tx_hash); rpc_payment.amount = payment.m_amount; @@ -333,7 +333,7 @@ namespace tools return true; } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_make_integrated_address(const wallet_rpc::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_make_integrated_address(const wallet_public::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::request& req, wallet_public::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx) { std::string payment_id; if (!epee::string_tools::parse_hexstr_to_binbuff(req.payment_id, payment_id)) @@ -362,7 +362,7 @@ namespace tools return !res.integrated_address.empty(); } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_split_integrated_address(const wallet_rpc::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_split_integrated_address(const wallet_public::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::request& req, wallet_public::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx) { currency::account_public_address addr; std::string payment_id; @@ -378,7 +378,7 @@ namespace tools return true; } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_sign_transfer(const wallet_rpc::COMMAND_SIGN_TRANSFER::request& req, wallet_rpc::COMMAND_SIGN_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_sign_transfer(const wallet_public::COMMAND_SIGN_TRANSFER::request& req, wallet_public::COMMAND_SIGN_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx) { try { @@ -411,7 +411,7 @@ namespace tools return true; } //------------------------------------------------------------------------------------------------------------------------------ - bool wallet_rpc_server::on_submit_transfer(const wallet_rpc::COMMAND_SUBMIT_TRANSFER::request& req, wallet_rpc::COMMAND_SUBMIT_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx) + bool wallet_rpc_server::on_submit_transfer(const wallet_public::COMMAND_SUBMIT_TRANSFER::request& req, wallet_public::COMMAND_SUBMIT_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx) { std::string tx_signed_blob; if (!string_tools::parse_hexstr_to_binbuff(req.tx_signed_hex, tx_signed_blob)) diff --git a/src/wallet/wallet_rpc_server.h b/src/wallet/wallet_rpc_server.h index 923b7d44..cfb1ab80 100644 --- a/src/wallet/wallet_rpc_server.h +++ b/src/wallet/wallet_rpc_server.h @@ -9,7 +9,7 @@ #include #include #include "net/http_server_impl_base.h" -#include "wallet_rpc_server_commans_defs.h" +#include "wallet_public_structs_defs.h" #include "wallet2.h" #include "common/command_line.h" namespace tools @@ -39,30 +39,32 @@ namespace tools BEGIN_URI_MAP2() BEGIN_JSON_RPC_MAP("/json_rpc") - MAP_JON_RPC_WE("getbalance", on_getbalance, wallet_rpc::COMMAND_RPC_GET_BALANCE) - MAP_JON_RPC_WE("getaddress", on_getaddress, wallet_rpc::COMMAND_RPC_GET_ADDRESS) - MAP_JON_RPC_WE("transfer", on_transfer, wallet_rpc::COMMAND_RPC_TRANSFER) - MAP_JON_RPC_WE("store", on_store, wallet_rpc::COMMAND_RPC_STORE) - MAP_JON_RPC_WE("get_payments", on_get_payments, wallet_rpc::COMMAND_RPC_GET_PAYMENTS) - MAP_JON_RPC_WE("get_bulk_payments", on_get_bulk_payments, wallet_rpc::COMMAND_RPC_GET_BULK_PAYMENTS) - MAP_JON_RPC_WE("make_integrated_address", on_make_integrated_address, wallet_rpc::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS) - MAP_JON_RPC_WE("split_integrated_address", on_split_integrated_address, wallet_rpc::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS) - MAP_JON_RPC_WE("sign_transfer", on_sign_transfer, wallet_rpc::COMMAND_SIGN_TRANSFER) - MAP_JON_RPC_WE("submit_transfer", on_submit_transfer, wallet_rpc::COMMAND_SUBMIT_TRANSFER) + MAP_JON_RPC_WE("getbalance", on_getbalance, wallet_public::COMMAND_RPC_GET_BALANCE) + MAP_JON_RPC_WE("getaddress", on_getaddress, wallet_public::COMMAND_RPC_GET_ADDRESS) + MAP_JON_RPC_WE("transfer", on_transfer, wallet_public::COMMAND_RPC_TRANSFER) + MAP_JON_RPC_WE("store", on_store, wallet_public::COMMAND_RPC_STORE) + MAP_JON_RPC_WE("get_payments", on_get_payments, wallet_public::COMMAND_RPC_GET_PAYMENTS) + MAP_JON_RPC_WE("get_bulk_payments", on_get_bulk_payments, wallet_public::COMMAND_RPC_GET_BULK_PAYMENTS) + MAP_JON_RPC_WE("make_integrated_address", on_make_integrated_address, wallet_public::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS) + MAP_JON_RPC_WE("split_integrated_address", on_split_integrated_address, wallet_public::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS) + MAP_JON_RPC_WE("sign_transfer", on_sign_transfer, wallet_public::COMMAND_SIGN_TRANSFER) + MAP_JON_RPC_WE("submit_transfer", on_submit_transfer, wallet_public::COMMAND_SUBMIT_TRANSFER) + //market API + MAP_JON_RPC_WE("send_proposal", on_submit_transfer, wallet_public::COMMAND_SUBMIT_TRANSFER) END_JSON_RPC_MAP() END_URI_MAP2() //json_rpc - bool on_getbalance(const wallet_rpc::COMMAND_RPC_GET_BALANCE::request& req, wallet_rpc::COMMAND_RPC_GET_BALANCE::response& res, epee::json_rpc::error& er, connection_context& cntx); - bool on_getaddress(const wallet_rpc::COMMAND_RPC_GET_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_GET_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx); - bool on_transfer(const wallet_rpc::COMMAND_RPC_TRANSFER::request& req, wallet_rpc::COMMAND_RPC_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx); - bool on_store(const wallet_rpc::COMMAND_RPC_STORE::request& req, wallet_rpc::COMMAND_RPC_STORE::response& res, epee::json_rpc::error& er, connection_context& cntx); - bool on_get_payments(const wallet_rpc::COMMAND_RPC_GET_PAYMENTS::request& req, wallet_rpc::COMMAND_RPC_GET_PAYMENTS::response& res, epee::json_rpc::error& er, connection_context& cntx); - bool on_get_bulk_payments(const wallet_rpc::COMMAND_RPC_GET_BULK_PAYMENTS::request& req, wallet_rpc::COMMAND_RPC_GET_BULK_PAYMENTS::response& res, epee::json_rpc::error& er, connection_context& cntx); - bool on_make_integrated_address(const wallet_rpc::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx); - bool on_split_integrated_address(const wallet_rpc::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx); - bool on_sign_transfer(const wallet_rpc::COMMAND_SIGN_TRANSFER::request& req, wallet_rpc::COMMAND_SIGN_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx); - bool on_submit_transfer(const wallet_rpc::COMMAND_SUBMIT_TRANSFER::request& req, wallet_rpc::COMMAND_SUBMIT_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_getbalance(const wallet_public::COMMAND_RPC_GET_BALANCE::request& req, wallet_public::COMMAND_RPC_GET_BALANCE::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_getaddress(const wallet_public::COMMAND_RPC_GET_ADDRESS::request& req, wallet_public::COMMAND_RPC_GET_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_transfer(const wallet_public::COMMAND_RPC_TRANSFER::request& req, wallet_public::COMMAND_RPC_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_store(const wallet_public::COMMAND_RPC_STORE::request& req, wallet_public::COMMAND_RPC_STORE::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_get_payments(const wallet_public::COMMAND_RPC_GET_PAYMENTS::request& req, wallet_public::COMMAND_RPC_GET_PAYMENTS::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_get_bulk_payments(const wallet_public::COMMAND_RPC_GET_BULK_PAYMENTS::request& req, wallet_public::COMMAND_RPC_GET_BULK_PAYMENTS::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_make_integrated_address(const wallet_public::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::request& req, wallet_public::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_split_integrated_address(const wallet_public::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::request& req, wallet_public::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_sign_transfer(const wallet_public::COMMAND_SIGN_TRANSFER::request& req, wallet_public::COMMAND_SIGN_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx); + bool on_submit_transfer(const wallet_public::COMMAND_SUBMIT_TRANSFER::request& req, wallet_public::COMMAND_SUBMIT_TRANSFER::response& res, epee::json_rpc::error& er, connection_context& cntx); bool handle_command_line(const boost::program_options::variables_map& vm); diff --git a/tests/core_tests/escrow_wallet_altchain_test.cpp b/tests/core_tests/escrow_wallet_altchain_test.cpp index aaa6bc7e..a961b0ec 100644 --- a/tests/core_tests/escrow_wallet_altchain_test.cpp +++ b/tests/core_tests/escrow_wallet_altchain_test.cpp @@ -328,7 +328,7 @@ bool escrow_altchain_meta_impl::c1(currency::core& c, size_t ev_index, const std { contracts.clear(); alice_wlt->get_contracts(contracts); - CHECK_AND_ASSERT_MES(check_contract_state(contracts, m_etd.cpd, static_cast(se.a_state), "Alice"), false, ""); + CHECK_AND_ASSERT_MES(check_contract_state(contracts, m_etd.cpd, static_cast(se.a_state), "Alice"), false, ""); } LOG_PRINT_GREEN("Bob's wallet is refreshing...", LOG_LEVEL_1); @@ -346,7 +346,7 @@ bool escrow_altchain_meta_impl::c1(currency::core& c, size_t ev_index, const std { contracts.clear(); bob_wlt->get_contracts(contracts); - CHECK_AND_ASSERT_MES(check_contract_state(contracts, m_etd.cpd, static_cast(se.b_state), "Bob"), false, ""); + CHECK_AND_ASSERT_MES(check_contract_state(contracts, m_etd.cpd, static_cast(se.b_state), "Bob"), false, ""); } mine_empty_block = true; diff --git a/tests/core_tests/escrow_wallet_altchain_test.h b/tests/core_tests/escrow_wallet_altchain_test.h index 4bdf3757..82eafce4 100644 --- a/tests/core_tests/escrow_wallet_altchain_test.h +++ b/tests/core_tests/escrow_wallet_altchain_test.h @@ -14,7 +14,7 @@ enum { eam_contract_state_initial = 0, eam_contract_state_none = (uint32_t)(-1) enum { eam_tx_unknown = 0, eam_tx_make, eam_tx_confirm, eam_tx_make_and_confirm }; // make = construct tx and send it to the pool; confirm = put tx into a block -using contract_states = tools::wallet_rpc::escrow_contract_details_basic; +using contract_states = tools::wallet_public::escrow_contract_details_basic; struct eam_event_noop { diff --git a/tests/core_tests/escrow_wallet_common.h b/tests/core_tests/escrow_wallet_common.h index 12ef5e3e..e049ba4f 100644 --- a/tests/core_tests/escrow_wallet_common.h +++ b/tests/core_tests/escrow_wallet_common.h @@ -70,8 +70,8 @@ inline bool refresh_wallet_and_check_1_contract_state(const char* wallet_name, s tools::wallet2::escrow_contracts_container contracts; r = wallet->get_contracts(contracts); CHECK_AND_ASSERT_MES(r && contracts.size() == 1, false, "get_contracts() for " << wallet_name << " failed or returned wrong contracts count: " << contracts.size()); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == expected_contract_state, false, wallet_name << " has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state) - << ", expected: " << tools::wallet_rpc::get_escrow_contract_state_name(expected_contract_state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == expected_contract_state, false, wallet_name << " has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state) + << ", expected: " << tools::wallet_public::get_escrow_contract_state_name(expected_contract_state)); return true; } @@ -92,8 +92,8 @@ inline bool refresh_wallet_and_check_contract_state(const char* wallet_name, std { if (c.first == contract_id) { - CHECK_AND_ASSERT_MES(c.second.state == expected_contract_state, false, wallet_name << " has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(c.second.state) - << ", expected: " << tools::wallet_rpc::get_escrow_contract_state_name(expected_contract_state)); + CHECK_AND_ASSERT_MES(c.second.state == expected_contract_state, false, wallet_name << " has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(c.second.state) + << ", expected: " << tools::wallet_public::get_escrow_contract_state_name(expected_contract_state)); return true; } } @@ -606,11 +606,11 @@ inline bool operator==(const bc_services::contract_private_details& lhs, const b lhs.title == rhs.title; } -inline bool check_contract_state(const tools::wallet2::escrow_contracts_container& contracts, const bc_services::contract_private_details& cpd, tools::wallet_rpc::escrow_contract_details::contract_state state, const char* party) +inline bool check_contract_state(const tools::wallet2::escrow_contracts_container& contracts, const bc_services::contract_private_details& cpd, tools::wallet_public::escrow_contract_details::contract_state state, const char* party) { CHECK_AND_ASSERT_MES(contracts.size() == 1, false, party << " has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == cpd, false, party << " has invalid contract's private details"); CHECK_AND_ASSERT_MES(contracts.begin()->second.state == state, false, party << " has invalid contract state: " << - tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state) << ", expected state: " << tools::wallet_rpc::get_escrow_contract_state_name(state)); + tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state) << ", expected state: " << tools::wallet_public::get_escrow_contract_state_name(state)); return true; } diff --git a/tests/core_tests/escrow_wallet_tests.cpp b/tests/core_tests/escrow_wallet_tests.cpp index f3515054..600339ae 100644 --- a/tests/core_tests/escrow_wallet_tests.cpp +++ b/tests/core_tests/escrow_wallet_tests.cpp @@ -17,12 +17,12 @@ using namespace currency; struct wallet_tests_callback_handler : public tools::i_wallet2_callback { - virtual void on_transfer2(const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) + virtual void on_transfer2(const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) { all_wtis.push_back(wti); } - std::vector all_wtis; + std::vector all_wtis; }; escrow_wallet_test::escrow_wallet_test() @@ -136,8 +136,8 @@ bool escrow_wallet_test::prepare_proposal_accepted_test(currency::core& c, const CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.is_a == true, false, "Incorrect contracts_buyer state"); CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.is_a == false, false, "Incorrect contracts_seller state"); - CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.state == tools::wallet_rpc::escrow_contract_details_basic::proposal_sent, false, "Incorrect contracts_buyer state"); - CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.state == tools::wallet_rpc::escrow_contract_details_basic::proposal_sent, false, "Incorrect contracts_seller state"); + CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.state == tools::wallet_public::escrow_contract_details_basic::proposal_sent, false, "Incorrect contracts_buyer state"); + CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.state == tools::wallet_public::escrow_contract_details_basic::proposal_sent, false, "Incorrect contracts_seller state"); CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->first == multisig_id, false, "Incorrect contracts_buyer state"); CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->first == multisig_id, false, "Incorrect contracts_seller state"); @@ -160,8 +160,8 @@ bool escrow_wallet_test::prepare_proposal_accepted_test(currency::core& c, const CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.is_a == true, false, "Incorrect contracts_buyer state"); CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.is_a == false, false, "Incorrect contracts_seller state"); - CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_accepted, false, "Incorrect contracts_buyer state"); - CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_accepted, false, "Incorrect contracts_seller state"); + CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.state == tools::wallet_public::escrow_contract_details_basic::contract_accepted, false, "Incorrect contracts_buyer state"); + CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.state == tools::wallet_public::escrow_contract_details_basic::contract_accepted, false, "Incorrect contracts_seller state"); tools::wallet2::multisig_transfer_container ms_buyer, ms_seller; wallet_buyer->get_multisig_transfers(ms_buyer); @@ -183,16 +183,16 @@ bool escrow_wallet_test::exec_test_with_specific_release_type(currency::core& c, // release contract //---------------------- std::string release_instruction; - tools::wallet_rpc::escrow_contract_details_basic::contract_state expected_state = AUTO_VAL_INIT(expected_state); + tools::wallet_public::escrow_contract_details_basic::contract_state expected_state = AUTO_VAL_INIT(expected_state); if (release_normal) { release_instruction = BC_ESCROW_SERVICE_INSTRUCTION_RELEASE_NORMAL; - expected_state = tools::wallet_rpc::escrow_contract_details_basic::contract_released_normal; + expected_state = tools::wallet_public::escrow_contract_details_basic::contract_released_normal; } else { release_instruction = BC_ESCROW_SERVICE_INSTRUCTION_RELEASE_BURN; - expected_state = tools::wallet_rpc::escrow_contract_details_basic::contract_released_burned; + expected_state = tools::wallet_public::escrow_contract_details_basic::contract_released_burned; } tools::wallet2::escrow_contracts_container contracts_buyer, contracts_seller; @@ -246,8 +246,8 @@ bool escrow_wallet_test::exec_test_with_cancel_release_type(currency::core& c, c CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.is_a == true, false, "Incorrect contracts_buyer state"); CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.is_a == false, false, "Incorrect contracts_seller state"); - CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent, false, "Incorrect contracts_buyer state"); - CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_cancel_proposal_sent, false, "Incorrect contracts_seller state"); + CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.state == tools::wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent, false, "Incorrect contracts_buyer state"); + CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.state == tools::wallet_public::escrow_contract_details_basic::contract_cancel_proposal_sent, false, "Incorrect contracts_seller state"); //cancel contract wallet_seller->accept_cancel_contract(multisig_id); @@ -264,8 +264,8 @@ bool escrow_wallet_test::exec_test_with_cancel_release_type(currency::core& c, c CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.is_a == true, false, "Incorrect contracts_buyer state"); CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.is_a == false, false, "Incorrect contracts_seller state"); - CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_released_cancelled, false, "Incorrect contracts_buyer state"); - CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.state == tools::wallet_rpc::escrow_contract_details_basic::contract_released_cancelled, false, "Incorrect contracts_seller state"); + CHECK_AND_FORCE_ASSERT_MES(contracts_buyer.begin()->second.state == tools::wallet_public::escrow_contract_details_basic::contract_released_cancelled, false, "Incorrect contracts_buyer state"); + CHECK_AND_FORCE_ASSERT_MES(contracts_seller.begin()->second.state == tools::wallet_public::escrow_contract_details_basic::contract_released_cancelled, false, "Incorrect contracts_seller state"); return true; } @@ -642,7 +642,7 @@ bool escrow_incorrect_proposal::check_normal_proposal(currency::core& c, size_t alice_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Alice didn't receive escrow proposal"); CHECK_AND_ASSERT_MES(contracts.begin()->second.is_a == false, false, "proposal has wrong is_a"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::proposal_sent, false, "proposal has invalid state"); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::proposal_sent, false, "proposal has invalid state"); crypto::hash contract_id = contracts.begin()->first; bc_services::contract_private_details cpd = contracts.begin()->second.private_detailes; @@ -794,7 +794,7 @@ bool escrow_proposal_expiration::c1(currency::core& c, size_t ev_index, const st CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 0, false, "Incorrect txs count in the pool"); // make sure Bob has received correct escrow proposal - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); // mine few block to shift the timestamp median far enough r = mine_next_pow_blocks_in_playtime(m_accounts[MINER_ACC_IDX].get_public_address(), c, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW); @@ -807,7 +807,7 @@ bool escrow_proposal_expiration::c1(currency::core& c, size_t ev_index, const st CHECK_AND_ASSERT_MES(alice_balance == alice_expected_balance, false, "Alice has incorrect balance after her proposal is expired: " << alice_balance << ", expected: " << alice_expected_balance); // check Bob's contracts - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW), false, ""); // try to accept expired proposal -- an exception should be thrown r = false; @@ -860,8 +860,8 @@ bool escrow_proposal_expiration::c2(currency::core& c, size_t ev_index, const st CHECK_AND_ASSERT_MES(ms_id != null_hash, false, "Can't obtain multisig id from escrow template tx"); CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 1, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, 0), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, 0), false, ""); // mine a few blocks with no txs for (size_t i = 0; i < TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW + 1; ++i) @@ -880,8 +880,8 @@ bool escrow_proposal_expiration::c2(currency::core& c, size_t ev_index, const st CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 1, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); // check contract status, should remain the same - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW + 1), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW + 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW + 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW + 1), false, ""); // try to accept expired proposal -- an exception should be thrown r = false; @@ -903,8 +903,8 @@ bool escrow_proposal_expiration::c2(currency::core& c, size_t ev_index, const st CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 0, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); // check contract status, should remain the same - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); // try to accept expired proposal -- an exception should be thrown r = false; @@ -997,8 +997,8 @@ bool escrow_proposal_and_accept_expiration::c1(currency::core& c, size_t ev_inde CHECK_AND_ASSERT_MES(ms_id != null_hash, false, "Can't obtain multisig id from escrow template tx"); CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 1, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, 0), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, 0), false, ""); // accept unconfirmed proposal try @@ -1012,8 +1012,8 @@ bool escrow_proposal_and_accept_expiration::c1(currency::core& c, size_t ev_inde CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 2, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); LOG_PRINT("Tx pool:" << ENDL << c.get_tx_pool().print_pool(true), LOG_LEVEL_0); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, ms_id, 0), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, ms_id, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, ms_id, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, ms_id, 0), false, ""); LOG_PRINT_CYAN("%%%%% Escrow proposal accepted (unconfirmed), Alice's transfers: " << ENDL << alice_wlt->dump_trunsfers(), LOG_LEVEL_0); LOG_PRINT_CYAN("%%%%% Escrow proposal accepted (unconfirmed), Bob's transfers: " << ENDL << bob_wlt->dump_trunsfers(), LOG_LEVEL_0); @@ -1038,8 +1038,8 @@ bool escrow_proposal_and_accept_expiration::c1(currency::core& c, size_t ev_inde CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 1, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); // check contract status, should remain the same - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW + 1), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW + 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW + 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, ms_id, TX_EXPIRATION_TIMESTAMP_CHECK_WINDOW + 1), false, ""); LOG_PRINT_CYAN("%%%%% Escrow acceptance tx expired and removed from tx pool, Alice's transfers: " << ENDL << alice_wlt->dump_trunsfers(), LOG_LEVEL_0); LOG_PRINT_CYAN("%%%%% Escrow acceptance tx expired and removed from tx pool, Bob's transfers: " << ENDL << bob_wlt->dump_trunsfers(), LOG_LEVEL_0); @@ -1064,8 +1064,8 @@ bool escrow_proposal_and_accept_expiration::c1(currency::core& c, size_t ev_inde CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 0, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); // - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::proposal_sent, ms_id, 1), false, ""); // try to accept expired proposal -- an exception should be thrown r = false; @@ -1328,7 +1328,7 @@ bool escrow_incorrect_proposal_acceptance::check_normal_acceptance(currency::cor CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Alice has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == m_cpd, false, "Alice has invalid contract's private details"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_accepted, false, "Alice has invalid contract state: " << contracts.begin()->second.state); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_accepted, false, "Alice has invalid contract state: " << contracts.begin()->second.state); crypto::hash ms_id = contracts.begin()->first; @@ -1348,7 +1348,7 @@ bool escrow_incorrect_proposal_acceptance::check_normal_acceptance(currency::cor CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Bob has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == m_cpd, false, "Bob has invalid contract's private details"); - uint8_t contract_expected_state = release_normal ? tools::wallet_rpc::escrow_contract_details::contract_released_normal : tools::wallet_rpc::escrow_contract_details::contract_released_burned; + uint8_t contract_expected_state = release_normal ? tools::wallet_public::escrow_contract_details::contract_released_normal : tools::wallet_public::escrow_contract_details::contract_released_burned; CHECK_AND_ASSERT_MES(contracts.begin()->second.state == contract_expected_state, false, "Bob has invalid contract state: " << contracts.begin()->second.state << " expected: " << contract_expected_state); uint64_t bob_balance_end = bob_wlt->balance(); @@ -1410,7 +1410,7 @@ bool escrow_incorrect_proposal_acceptance::check_incorrect_acceptance(currency:: } // check it here in order to let more bugs show off with finish_contract() - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::proposal_sent, false, "Alice has invalid contract state: " << contracts.begin()->second.state); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::proposal_sent, false, "Alice has invalid contract state: " << contracts.begin()->second.state); CHECK_AND_ASSERT_MES(exception_on_finish_contract, false, "Alice was able to finish contract: " << param); return true; @@ -1717,7 +1717,7 @@ bool escrow_custom_test::do_custom_test(currency::core& c, size_t ev_index, cons tools::wallet2::escrow_contracts_container contracts; r = bob_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Bob failed"); - CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_rpc::escrow_contract_details::proposal_sent, "Bob"), false, "wrong contract"); + CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_public::escrow_contract_details::proposal_sent, "Bob"), false, "wrong contract"); CHECK_AND_ASSERT_MES(contracts.begin()->second.payment_id == cd.payment_id, false, "incorrect payment_id was found in Bob's contract: " << contracts.begin()->second.payment_id << ", expected: " << cd.payment_id); crypto::hash ms_id = contracts.begin()->first; @@ -1756,7 +1756,7 @@ bool escrow_custom_test::do_custom_test(currency::core& c, size_t ev_index, cons r = alice_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "incorrect contracts size for Alice: " << contracts.size()); - CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_rpc::escrow_contract_details::contract_accepted, "Alice"), false, "wrong contract"); + CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_public::escrow_contract_details::contract_accepted, "Alice"), false, "wrong contract"); CHECK_AND_ASSERT_MES(contracts.begin()->second.payment_id == cd.payment_id, false, "incorrect payment_id was found in Alice's contract: " << contracts.begin()->second.payment_id << ", expected: " << cd.payment_id); // request cancellation if needed (normal/burn release should be still possible after that) @@ -1789,7 +1789,7 @@ bool escrow_custom_test::do_custom_test(currency::core& c, size_t ev_index, cons contracts.clear(); r = alice_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); - CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, "Alice"), false, "wrong contract state"); + CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, "Alice"), false, "wrong contract state"); CHECK_AND_ASSERT_MES(check_balance_via_wallet(*alice_wlt.get(), "Alice", alice_expected_balance, 0, INVALID_BALANCE_VAL, 0, 0), false, ""); @@ -1797,7 +1797,7 @@ bool escrow_custom_test::do_custom_test(currency::core& c, size_t ev_index, cons contracts.clear(); r = bob_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Bob failed"); - CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, "Bob"), false, "wrong contract state"); + CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, "Bob"), false, "wrong contract state"); CHECK_AND_ASSERT_MES(check_balance_via_wallet(*bob_wlt.get(), "Bob", bob_expected_balance, 0, INVALID_BALANCE_VAL, 0, 0), false, ""); } @@ -1833,7 +1833,7 @@ bool escrow_custom_test::do_custom_test(currency::core& c, size_t ev_index, cons contracts.clear(); r = alice_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); - tools::wallet_rpc::escrow_contract_details::contract_state expected_state = cd.is_release_normal() ? tools::wallet_rpc::escrow_contract_details::contract_released_normal : tools::wallet_rpc::escrow_contract_details::contract_released_burned; + tools::wallet_public::escrow_contract_details::contract_state expected_state = cd.is_release_normal() ? tools::wallet_public::escrow_contract_details::contract_released_normal : tools::wallet_public::escrow_contract_details::contract_released_burned; CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, expected_state, "Alice"), false, "wrong contract"); CHECK_AND_ASSERT_MES(check_balance_via_wallet(*alice_wlt.get(), "Alice", alice_expected_balance, 0, INVALID_BALANCE_VAL, 0, 0), false, ""); @@ -1843,7 +1843,7 @@ bool escrow_custom_test::do_custom_test(currency::core& c, size_t ev_index, cons contracts.clear(); r = bob_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Bob failed"); - expected_state = cd.is_release_normal() ? tools::wallet_rpc::escrow_contract_details::contract_released_normal : tools::wallet_rpc::escrow_contract_details::contract_released_burned; + expected_state = cd.is_release_normal() ? tools::wallet_public::escrow_contract_details::contract_released_normal : tools::wallet_public::escrow_contract_details::contract_released_burned; CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, expected_state, "Bob"), false, "wrong contract"); CHECK_AND_ASSERT_MES(check_balance_via_wallet(*bob_wlt.get(), "Bob", bob_expected_balance, 0, INVALID_BALANCE_VAL, 0, 0), false, ""); @@ -1880,7 +1880,7 @@ bool escrow_custom_test::do_custom_test(currency::core& c, size_t ev_index, cons contracts.clear(); r = alice_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); - CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, "Alice"), false, "wrong contract state"); + CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_public::escrow_contract_details::contract_released_cancelled, "Alice"), false, "wrong contract state"); CHECK_AND_ASSERT_MES(check_balance_via_wallet(*alice_wlt.get(), "Alice", alice_expected_balance, 0, INVALID_BALANCE_VAL, 0, 0), false, ""); @@ -1888,7 +1888,7 @@ bool escrow_custom_test::do_custom_test(currency::core& c, size_t ev_index, cons contracts.clear(); r = bob_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Bob failed"); - CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, "Bob"), false, "wrong contract state"); + CHECK_AND_ASSERT_MES(check_contract_state(contracts, cd.cpd, tools::wallet_public::escrow_contract_details::contract_released_cancelled, "Bob"), false, "wrong contract state"); CHECK_AND_ASSERT_MES(check_balance_via_wallet(*bob_wlt.get(), "Bob", bob_expected_balance, 0, INVALID_BALANCE_VAL, 0, 0), false, ""); } @@ -2113,14 +2113,14 @@ bool escrow_incorrect_cancel_proposal::check_normal_cancel_proposal(currency::co CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Alice has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == m_cpd, false, "Alice has invalid contract's private details"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, false, "Alice has invalid contract state: " << contracts.begin()->second.state); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, false, "Alice has invalid contract state: " << contracts.begin()->second.state); contracts.clear(); r = bob_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Bob failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Bob has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == m_cpd, false, "Bob has invalid contract's private details"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, false, "Bob has invalid contract state: " << contracts.begin()->second.state); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, false, "Bob has invalid contract state: " << contracts.begin()->second.state); crypto::hash ms_id = contracts.begin()->first; bob_wlt->accept_cancel_contract(ms_id); @@ -2136,7 +2136,7 @@ bool escrow_incorrect_cancel_proposal::check_normal_cancel_proposal(currency::co CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Alice has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == m_cpd, false, "Alice has invalid contract's private details"); - uint8_t contract_expected_state = tools::wallet_rpc::escrow_contract_details::contract_released_cancelled; + uint8_t contract_expected_state = tools::wallet_public::escrow_contract_details::contract_released_cancelled; CHECK_AND_ASSERT_MES(contracts.begin()->second.state == contract_expected_state, false, "Alice has invalid contract state: " << contracts.begin()->second.state << " expected: " << contract_expected_state); uint64_t alice_balance_end = alice_wlt->balance(); @@ -2223,8 +2223,8 @@ bool escrow_incorrect_cancel_proposal::check_incorrect_cancel_proposal_internal( } // check it here in order to let more bugs show off with finish_contract() - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_accepted || - contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, false, "Bob has invalid contract state: " << contracts.begin()->second.state); // It's ok for Bob to be mistaken about state, for ex: in case of too late cancellation acceptance + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_accepted || + contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, false, "Bob has invalid contract state: " << contracts.begin()->second.state); // It's ok for Bob to be mistaken about state, for ex: in case of too late cancellation acceptance CHECK_AND_ASSERT_MES(exception_on_cancel_contract, false, "Bob was able to cancel escrow contract, requested with invalid cancellation request."); return true; @@ -2384,7 +2384,7 @@ bool escrow_cancellation_and_tx_order::c1(currency::core& c, size_t ev_index, co CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Alice has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == cpd, false, "Alice has invalid contract's private details"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::proposal_sent, false, "Alice has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::proposal_sent, false, "Alice has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); crypto::hash contract_id = contracts.begin()->first; // mine a block, containing escrow proposal tx @@ -2399,7 +2399,7 @@ bool escrow_cancellation_and_tx_order::c1(currency::core& c, size_t ev_index, co CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Bob failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Bob has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == cpd, false, "Bob has invalid contract's private details"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::proposal_sent, false, "Bob has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::proposal_sent, false, "Bob has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); // Bob accepts the proposal LOG_PRINT_GREEN("\n" "bob_wlt->accept_proposal()", LOG_LEVEL_0); @@ -2417,7 +2417,7 @@ bool escrow_cancellation_and_tx_order::c1(currency::core& c, size_t ev_index, co CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Alice has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == cpd, false, "Alice has invalid contract's private details"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_accepted, false, "Alice has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_accepted, false, "Alice has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); // Alice requests cancellation LOG_PRINT_GREEN("\n" "alice_wlt->request_cancel_contract()", LOG_LEVEL_0); @@ -2435,14 +2435,14 @@ bool escrow_cancellation_and_tx_order::c1(currency::core& c, size_t ev_index, co contracts.clear(); r = alice_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r && contracts.size() == 1, false, "get_contracts() for Alice failed or returned wrong contracts count: " << contracts.size()); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, false, "Alice has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, false, "Alice has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); bob_wlt->refresh(); bob_wlt->scan_tx_pool(stub_bool); contracts.clear(); r = bob_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r && contracts.size() == 1, false, "get_contracts() for Bob failed or returned wrong contracts count: " << contracts.size()); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, false, "Bob has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, false, "Bob has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); // don't mine block, try to accept cancellation on-the-fly LOG_PRINT_GREEN("\n" "bob_wlt->accept_cancel_contract()", LOG_LEVEL_0); @@ -2458,13 +2458,13 @@ bool escrow_cancellation_and_tx_order::c1(currency::core& c, size_t ev_index, co contracts.clear(); r = alice_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r && contracts.size() == 1, false, "get_contracts() for Alice failed or returned wrong contracts count: " << contracts.size()); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, false, "Alice has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_released_cancelled, false, "Alice has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); bob_wlt->scan_tx_pool(stub_bool); contracts.clear(); r = bob_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r && contracts.size() == 1, false, "get_contracts() for Bob failed or returned wrong contracts count: " << contracts.size()); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, false, "Bob has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_released_cancelled, false, "Bob has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); // mine a block containing only cancel_request_acceptance_tx (this should trigger contracts' states swtiching into contract_released_cancelled) LOG_PRINT_GREEN("\n" "mine_next_pow_block_in_playtime_with_given_txs(cancel_request_acceptance_tx)", LOG_LEVEL_0); @@ -2477,14 +2477,14 @@ bool escrow_cancellation_and_tx_order::c1(currency::core& c, size_t ev_index, co contracts.clear(); r = alice_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r && contracts.size() == 1, false, "get_contracts() for Alice failed or returned wrong contracts count: " << contracts.size()); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, false, "Alice has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_released_cancelled, false, "Alice has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); bob_wlt->refresh(); bob_wlt->scan_tx_pool(stub_bool); contracts.clear(); r = bob_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r && contracts.size() == 1, false, "get_contracts() for Bob failed or returned wrong contracts count: " << contracts.size()); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, false, "Bob has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_released_cancelled, false, "Bob has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); // mine a block containing only cancel_request_tx (this SHOULD NOT trigger contracts' states swtiching into contract_cancel_proposal_sent or anything) @@ -2498,14 +2498,14 @@ bool escrow_cancellation_and_tx_order::c1(currency::core& c, size_t ev_index, co contracts.clear(); r = alice_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r && contracts.size() == 1, false, "get_contracts() for Alice failed or returned wrong contracts count: " << contracts.size()); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, false, "Alice has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_released_cancelled, false, "Alice has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); bob_wlt->refresh(); bob_wlt->scan_tx_pool(stub_bool); contracts.clear(); r = bob_wlt->get_contracts(contracts); CHECK_AND_ASSERT_MES(r && contracts.size() == 1, false, "get_contracts() for Bob failed or returned wrong contracts count: " << contracts.size()); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, false, "Bob has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_released_cancelled, false, "Bob has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); return true; } @@ -2585,7 +2585,7 @@ bool escrow_cancellation_proposal_expiration::c1(currency::core& c, size_t ev_in CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Alice has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == cpd, false, "Alice has invalid contract's private details"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::proposal_sent, false, "Alice has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::proposal_sent, false, "Alice has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); crypto::hash contract_id = contracts.begin()->first; uint64_t alice_blocked_transfers_sum = 0; @@ -2603,7 +2603,7 @@ bool escrow_cancellation_proposal_expiration::c1(currency::core& c, size_t ev_in CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Bob failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Bob has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == cpd, false, "Bob has invalid contract's private details"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::proposal_sent, false, "Bob has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::proposal_sent, false, "Bob has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); // Bob accepts the proposal LOG_PRINT_GREEN("\n" "bob_wlt->accept_proposal()", LOG_LEVEL_0); @@ -2624,7 +2624,7 @@ bool escrow_cancellation_proposal_expiration::c1(currency::core& c, size_t ev_in CHECK_AND_ASSERT_MES(r, false, "get_contracts() for Alice failed"); CHECK_AND_ASSERT_MES(contracts.size() == 1, false, "Alice has incorrect number of contracts: " << contracts.size()); CHECK_AND_ASSERT_MES(contracts.begin()->second.private_detailes == cpd, false, "Alice has invalid contract's private details"); - CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_rpc::escrow_contract_details::contract_accepted, false, "Alice has invalid contract state: " << tools::wallet_rpc::get_escrow_contract_state_name(contracts.begin()->second.state)); + CHECK_AND_ASSERT_MES(contracts.begin()->second.state == tools::wallet_public::escrow_contract_details::contract_accepted, false, "Alice has invalid contract state: " << tools::wallet_public::get_escrow_contract_state_name(contracts.begin()->second.state)); // ===== (1/2) ===== // Alice requests cancellation for the first time -- this request will not be included into a block and will expire in tx pool @@ -2645,8 +2645,8 @@ bool escrow_cancellation_proposal_expiration::c1(currency::core& c, size_t ev_in CHECK_AND_ASSERT_MES(extract_cancellation_template_tx_from_request_tx(cancel_request_tx, m_accounts[BOB_ACC_IDX].get_keys(), tx_cancel_template), false, "extract_calcellation_template_tx_from_request_tx failed"); // contract state in wallets should be cancel_proposal_sent for both parties - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, 0), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, 1), false, ""); // mine a few blocks with no txs to shift expiration median for(size_t i = 0; i < 7; ++i) @@ -2675,8 +2675,8 @@ bool escrow_cancellation_proposal_expiration::c1(currency::core& c, size_t ev_in CHECK_AND_ASSERT_MES(r, false, "accept_cancel_contract succeeded, but it was excepted to fail"); // as cancellation request is expired, contract state should be contract_accepted for both - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 7), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 7), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 7), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 7), false, ""); // mine a block containing cancel_request_tx (already expired) -- should be okay LOG_PRINT_GREEN("\n\n\n" "mine_next_pow_block_in_playtime() -- including expires contract cancellation request" "\n\n", LOG_LEVEL_0); @@ -2685,8 +2685,8 @@ bool escrow_cancellation_proposal_expiration::c1(currency::core& c, size_t ev_in CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 0, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); // expired cancellation request--even included into a block--should be ignored, contract state remains the same - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 1), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 1), false, ""); // check balances CHECK_AND_ASSERT_MES(check_balance_via_wallet(*alice_wlt.get(), "Alice", alice_start_balance - TESTS_DEFAULT_FEE - cpd.amount_a_pledge - cpd.amount_to_pay - TESTS_DEFAULT_FEE), false, ""); @@ -2710,8 +2710,8 @@ bool escrow_cancellation_proposal_expiration::c1(currency::core& c, size_t ev_in CHECK_AND_ASSERT_MES(extract_cancellation_template_tx_from_request_tx(cancel_request_tx, m_accounts[BOB_ACC_IDX].get_keys(), tx_cancel_template), false, "extract_calcellation_template_tx_from_request_tx failed"); // contract state in wallets should be cancel_proposal_sent for both parties, as new cancellation request was handled - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, 0), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, 0), false, ""); // mine a block containing cancel_request_tx LOG_PRINT_GREEN("\n" "mine_next_pow_block_in_playtime()", LOG_LEVEL_0); @@ -2720,8 +2720,8 @@ bool escrow_cancellation_proposal_expiration::c1(currency::core& c, size_t ev_in CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 0, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); // contracts' states should not change after receiving a block - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, 1), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, 1), false, ""); // mine one more block (it's necessary for triggering expiration checks in wallets and shifting an expiration ts median) LOG_PRINT_GREEN("\n" "mine_next_pow_block_in_playtime()", LOG_LEVEL_0); @@ -2747,8 +2747,8 @@ bool escrow_cancellation_proposal_expiration::c1(currency::core& c, size_t ev_in CHECK_AND_ASSERT_MES(r, false, "accept_cancel_contract succeeded, but it was excepted to fail"); // check contracts again - their state should change back to contract_accepted - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 7), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 7), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 7), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 7), false, ""); // check balances CHECK_AND_ASSERT_MES(check_balance_via_wallet(*alice_wlt.get(), "Alice", alice_start_balance - TESTS_DEFAULT_FEE - cpd.amount_a_pledge - cpd.amount_to_pay - TESTS_DEFAULT_FEE - TESTS_DEFAULT_FEE), false, ""); @@ -2827,8 +2827,8 @@ bool escrow_cancellation_acceptance_expiration::c1(currency::core& c, size_t ev_ LOG_PRINT_GREEN("\n" "alice_wlt->send_escrow_proposal()", LOG_LEVEL_0); alice_wlt->send_escrow_proposal(cpd, 0, 0, expiration_time, TX_DEFAULT_FEE, b_release_fee, "", proposal_tx, escrow_template_tx); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::proposal_sent), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::proposal_sent), false, ""); tools::wallet2::escrow_contracts_container contracts; r = alice_wlt->get_contracts(contracts); @@ -2844,7 +2844,7 @@ bool escrow_cancellation_acceptance_expiration::c1(currency::core& c, size_t ev_ CHECK_AND_ASSERT_MES(r, false, "mine_next_pow_block_in_playtime failed"); CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 0, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::proposal_sent), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::proposal_sent), false, ""); // Bob accepts the proposal LOG_PRINT_GREEN("\n" "bob_wlt->accept_proposal()", LOG_LEVEL_0); @@ -2859,7 +2859,7 @@ bool escrow_cancellation_acceptance_expiration::c1(currency::core& c, size_t ev_ CHECK_AND_ASSERT_MES(r, false, "mine_next_pow_block_in_playtime failed"); CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 0, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 2), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 2), false, ""); // Alice requests cancellation uint64_t cancel_request_expiration_period = DIFFICULTY_TOTAL_TARGET; @@ -2872,8 +2872,8 @@ bool escrow_cancellation_acceptance_expiration::c1(currency::core& c, size_t ev_ CHECK_AND_ASSERT_MES(c.get_pool_transactions_count() == 0, false, "Incorrect txs count in the pool: " << c.get_pool_transactions_count()); // contract state in wallets should be cancel_proposal_sent for both parties - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, 1), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_cancel_proposal_sent, 2), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, 1), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_cancel_proposal_sent, 2), false, ""); LOG_PRINT_GREEN("%%%%% Bob : accept_cancel_contract()", LOG_LEVEL_0); bob_wlt->accept_cancel_contract(contract_id); @@ -2886,8 +2886,8 @@ bool escrow_cancellation_acceptance_expiration::c1(currency::core& c, size_t ev_ transaction cancel_accept_tx = txs.front(); // contract state in wallets should be cancel_proposal_sent for both parties - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, 0), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_released_cancelled, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_released_cancelled, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_released_cancelled, 0), false, ""); // mine a few blocks with no txs to shift expiration median, cancellation acceptance is still in the pool for(size_t i = 0; i < 7; ++i) @@ -2901,8 +2901,8 @@ bool escrow_cancellation_acceptance_expiration::c1(currency::core& c, size_t ev_ CHECK_AND_ASSERT_MES(is_tx_expired(cancel_accept_tx, c.get_blockchain_storage().get_tx_expiration_median()), false, "cancel_accept_tx did not expire"); // as cancellation acceptance is expired, contract state should be contract_accepted for both - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 7), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 7), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 7), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 7), false, ""); // check final balances CHECK_AND_ASSERT_MES(check_balance_via_wallet(*alice_wlt.get(), "Alice", alice_start_balance - TESTS_DEFAULT_FEE - cpd.amount_a_pledge - cpd.amount_to_pay - TESTS_DEFAULT_FEE), false, ""); @@ -2920,8 +2920,8 @@ bool escrow_cancellation_acceptance_expiration::c1(currency::core& c, size_t ev_ CHECK_AND_ASSERT_MES(!r, false, "mine_next_pow_block_in_playtime_with_given_txs should have been failed as block contains expired tx"); // no changes with contract state expected - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 0), false, ""); - CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_rpc::escrow_contract_details::contract_accepted, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Alice", alice_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 0), false, ""); + CHECK_AND_ASSERT_MES(refresh_wallet_and_check_1_contract_state("Bob", bob_wlt, tools::wallet_public::escrow_contract_details::contract_accepted, 0), false, ""); // no changes with balances expected CHECK_AND_ASSERT_MES(check_balance_via_wallet(*alice_wlt.get(), "Alice", alice_start_balance - TESTS_DEFAULT_FEE - cpd.amount_a_pledge - cpd.amount_to_pay - TESTS_DEFAULT_FEE), false, ""); diff --git a/tests/core_tests/multisig_wallet_tests.cpp b/tests/core_tests/multisig_wallet_tests.cpp index 8c46c176..502427ca 100644 --- a/tests/core_tests/multisig_wallet_tests.cpp +++ b/tests/core_tests/multisig_wallet_tests.cpp @@ -2533,7 +2533,7 @@ bool multisig_unconfirmed_transfer_and_multiple_scan_pool_calls::c1(currency::co bool stub; std::deque transfers; - std::vector unconfirmed_transfers; + std::vector unconfirmed_transfers; alice_wlt->scan_tx_pool(stub); alice_wlt->get_transfers(transfers); diff --git a/tests/core_tests/wallet_rpc_tests.cpp b/tests/core_tests/wallet_rpc_tests.cpp index 4b25aeb9..554c93bf 100644 --- a/tests/core_tests/wallet_rpc_tests.cpp +++ b/tests/core_tests/wallet_rpc_tests.cpp @@ -32,10 +32,10 @@ bool wallet_rpc_integrated_address::generate(std::vector& even epee::json_rpc::error je; tools::wallet_rpc_server::connection_context ctx; - tools::wallet_rpc::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::request mia_req = AUTO_VAL_INIT(mia_req); - tools::wallet_rpc::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::response mia_res = AUTO_VAL_INIT(mia_res); - tools::wallet_rpc::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::request sia_req = AUTO_VAL_INIT(sia_req); - tools::wallet_rpc::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::response sia_res = AUTO_VAL_INIT(sia_res); + tools::wallet_public::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::request mia_req = AUTO_VAL_INIT(mia_req); + tools::wallet_public::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::response mia_res = AUTO_VAL_INIT(mia_res); + tools::wallet_public::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::request sia_req = AUTO_VAL_INIT(sia_req); + tools::wallet_public::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::response sia_res = AUTO_VAL_INIT(sia_res); // 1. make_integrated_address with empty payment id (should use a random payment id instead) + on_split_integrated_address mia_req.payment_id = ""; @@ -114,15 +114,15 @@ bool wallet_rpc_integrated_address_transfer::c1(currency::core& c, size_t ev_ind epee::json_rpc::error je; tools::wallet_rpc_server::connection_context ctx; - tools::wallet_rpc::COMMAND_RPC_TRANSFER::request req = AUTO_VAL_INIT(req); + tools::wallet_public::COMMAND_RPC_TRANSFER::request req = AUTO_VAL_INIT(req); req.fee = TESTS_DEFAULT_FEE; req.mixin = 0; - tools::wallet_rpc::trnsfer_destination tds = AUTO_VAL_INIT(tds); + tools::wallet_public::trnsfer_destination tds = AUTO_VAL_INIT(tds); tds.address = alice_integrated_address; tds.amount = MK_TEST_COINS(3); req.destinations.push_back(tds); - tools::wallet_rpc::COMMAND_RPC_TRANSFER::response res = AUTO_VAL_INIT(res); + tools::wallet_public::COMMAND_RPC_TRANSFER::response res = AUTO_VAL_INIT(res); // 1. integrated address + external payment id => the following should fail req.payment_id = "90210"; @@ -152,7 +152,7 @@ bool wallet_rpc_integrated_address_transfer::c1(currency::core& c, size_t ev_ind // 3. standard address + invalid external payment id => fail req.destinations.clear(); - tools::wallet_rpc::trnsfer_destination tds2 = AUTO_VAL_INIT(tds2); + tools::wallet_public::trnsfer_destination tds2 = AUTO_VAL_INIT(tds2); tds2.address = m_accounts[ALICE_ACC_IDX].get_public_address_str(); tds2.amount = MK_TEST_COINS(7); req.destinations.push_back(tds2); diff --git a/tests/core_tests/wallet_tests.cpp b/tests/core_tests/wallet_tests.cpp index 511250fa..d1ffe56a 100644 --- a/tests/core_tests/wallet_tests.cpp +++ b/tests/core_tests/wallet_tests.cpp @@ -6,7 +6,7 @@ #include "chaingen.h" #include "wallet_tests.h" #include "wallet_test_core_proxy.h" -#include "../../src/wallet/wallet_rpc_server_commans_defs.h" +#include "../../src/wallet/wallet_public_structs_defs.h" #include "offers_helper.h" #include "string_coding.h" #include "random_helper.h" @@ -24,9 +24,9 @@ const currency::account_base null_account = AUTO_VAL_INIT(null_account); struct wlt_lambda_on_transfer2_wrapper : public tools::i_wallet2_callback { - typedef std::function Func; + typedef std::function Func; wlt_lambda_on_transfer2_wrapper(Func callback) : m_result(false), m_callback(callback) {} - virtual void on_transfer2(const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) override + virtual void on_transfer2(const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) override { m_result = m_callback(wti, balance, unlocked_balance, total_mined); } @@ -669,7 +669,7 @@ bool gen_wallet_unconfirmed_outdated_tx::c1(currency::core& c, size_t ev_index, if (!check_balance_via_wallet(*alice_wlt.get(), "alice_wlt", MK_TEST_COINS(200), 0, 0, MK_TEST_COINS(200), 0)) return false; - std::vector trs; + std::vector trs; alice_wlt->get_unconfirmed_transfers(trs); CHECK_AND_ASSERT_MES(trs.size() == 1, false, "Incorrect num of unconfirmed tx"); @@ -697,7 +697,7 @@ bool gen_wallet_unconfirmed_outdated_tx::c2(currency::core& c, size_t ev_index, if (!check_balance_via_wallet(*alice_wlt.get(), "alice_wlt", MK_TEST_COINS(700), 0, 0, MK_TEST_COINS(700), 0)) return false; - std::vector trs; + std::vector trs; alice_wlt->get_unconfirmed_transfers(trs); CHECK_AND_ASSERT_MES(trs.size() == 2, false, "Incorrect num of unconfirmed tx"); CHECK_AND_ASSERT_MES(trs[0].timestamp != trs[1].timestamp, false, "wallet set the same timestamp for unconfirmed txs which came not simultaneously"); @@ -726,7 +726,7 @@ bool gen_wallet_unconfirmed_outdated_tx::c3(currency::core& c, size_t ev_index, if (!check_balance_via_wallet(*alice_wlt.get(), "alice_wlt", MK_TEST_COINS(500), 0, 0, MK_TEST_COINS(500), 0)) return false; - std::vector trs; + std::vector trs; alice_wlt->get_unconfirmed_transfers(trs); CHECK_AND_ASSERT_MES(trs.size() == 1, false, "Incorrect num of unconfirmed tx"); @@ -1551,7 +1551,7 @@ bool gen_wallet_decrypted_attachments::generate(std::vector& e return true; } -void gen_wallet_decrypted_attachments::on_transfer2(const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) +void gen_wallet_decrypted_attachments::on_transfer2(const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) { m_on_transfer2_called = true; //try { @@ -1777,7 +1777,7 @@ bool gen_wallet_alias_via_special_wallet_funcs::c1(currency::core& c, size_t ev_ uint64_t biggest_alias_reward = get_alias_coast_from_fee("a", TESTS_DEFAULT_FEE); std::shared_ptr l(new wlt_lambda_on_transfer2_wrapper( - [biggest_alias_reward](const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) -> bool { + [biggest_alias_reward](const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) -> bool { return std::count(wti.recipients_aliases.begin(), wti.recipients_aliases.end(), "minerminer") == 1 && wti.amount == biggest_alias_reward; } @@ -3259,7 +3259,7 @@ bool wallet_unconfimed_tx_balance::c1(currency::core& c, size_t ev_index, const bool callback_is_ok = false; // this callback will ba called from within wallet2::transfer() below std::shared_ptr l(new wlt_lambda_on_transfer2_wrapper( - [&callback_is_ok](const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) -> bool + [&callback_is_ok](const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) -> bool { CHECK_AND_ASSERT_MES(balance == MK_TEST_COINS(70), false, "invalid balance: " << print_money_brief(balance)); CHECK_AND_ASSERT_MES(unlocked_balance == MK_TEST_COINS(50), false, "invalid unlocked_balance: " << print_money_brief(unlocked_balance)); diff --git a/tests/core_tests/wallet_tests.h b/tests/core_tests/wallet_tests.h index d1561ddc..6fbd37bd 100644 --- a/tests/core_tests/wallet_tests.h +++ b/tests/core_tests/wallet_tests.h @@ -111,7 +111,7 @@ struct gen_wallet_decrypted_attachments : public wallet_test, virtual public too bool generate(std::vector& events) const; // intrface tools::i_wallet2_callback - virtual void on_transfer2(const tools::wallet_rpc::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) override; + virtual void on_transfer2(const tools::wallet_public::wallet_transfer_info& wti, uint64_t balance, uint64_t unlocked_balance, uint64_t total_mined) override; private: mutable bool m_on_transfer2_called; diff --git a/tests/core_tests/wallet_tests_basic.cpp b/tests/core_tests/wallet_tests_basic.cpp index c21867f6..5c2744e2 100644 --- a/tests/core_tests/wallet_tests_basic.cpp +++ b/tests/core_tests/wallet_tests_basic.cpp @@ -6,7 +6,7 @@ #include "chaingen.h" #include "wallet_tests.h" #include "wallet_test_core_proxy.h" -#include "../../src/wallet/wallet_rpc_server_commans_defs.h" +#include "../../src/wallet/wallet_public_structs_defs.h" #include "offers_helper.h" #include "string_coding.h"