From e98b462cdeba57d64adf59fcf6cd73f47798ea22 Mon Sep 17 00:00:00 2001 From: gladcow Date: Tue, 22 Oct 2019 15:17:07 +0300 Subject: [PATCH] refactor other son cli tests to use son_test_helper --- tests/cli/son.cpp | 137 ++++++++-------------------------------------- 1 file changed, 22 insertions(+), 115 deletions(-) diff --git a/tests/cli/son.cpp b/tests/cli/son.cpp index 80843d70..09e88a6e 100644 --- a/tests/cli/son.cpp +++ b/tests/cli/son.cpp @@ -95,95 +95,15 @@ BOOST_AUTO_TEST_CASE( create_sons ) BOOST_TEST_MESSAGE("SON cli wallet tests begin"); try { - init_nathan(); + son_test_helper sth(*this); + sth.create_son("son1account", "http://son1"); + sth.create_son("son2account", "http://son2"); - graphene::wallet::brain_key_info bki; - signed_transaction create_tx; - signed_transaction transfer_tx; - signed_transaction upgrade_tx; - account_object son1_before_upgrade, son1_after_upgrade; - account_object son2_before_upgrade, son2_after_upgrade; - son_object son1_obj; - son_object son2_obj; - - // create son1account - bki = con.wallet_api_ptr->suggest_brain_key(); - BOOST_CHECK(!bki.brain_priv_key.empty()); - create_tx = con.wallet_api_ptr->create_account_with_brain_key( - bki.brain_priv_key, "son1account", "nathan", "nathan", true - ); - // save the private key for this new account in the wallet file - BOOST_CHECK(con.wallet_api_ptr->import_key("son1account", bki.wif_priv_key)); - con.wallet_api_ptr->save_wallet_file(con.wallet_filename); - - // attempt to give son1account some CORE tokens - BOOST_TEST_MESSAGE("Transferring CORE tokens from Nathan to son1account"); - transfer_tx = con.wallet_api_ptr->transfer( - "nathan", "son1account", "15000", "1.3.0", "Here are some CORE token for your new account", true - ); - - son1_before_upgrade = con.wallet_api_ptr->get_account("son1account"); - BOOST_CHECK(generate_block()); - - // upgrade son1account - BOOST_TEST_MESSAGE("Upgrading son1account to LTM"); - upgrade_tx = con.wallet_api_ptr->upgrade_account("son1account", true); - son1_after_upgrade = con.wallet_api_ptr->get_account("son1account"); - - // verify that the upgrade was successful - BOOST_CHECK_PREDICATE( - std::not_equal_to(), - (son1_before_upgrade.membership_expiration_date.sec_since_epoch()) - (son1_after_upgrade.membership_expiration_date.sec_since_epoch()) - ); - BOOST_CHECK(son1_after_upgrade.is_lifetime_member()); - - BOOST_CHECK(generate_block()); - // create son2account - bki = con.wallet_api_ptr->suggest_brain_key(); - BOOST_CHECK(!bki.brain_priv_key.empty()); - create_tx = con.wallet_api_ptr->create_account_with_brain_key( - bki.brain_priv_key, "son2account", "nathan", "nathan", true - ); - // save the private key for this new account in the wallet file - BOOST_CHECK(con.wallet_api_ptr->import_key("son2account", bki.wif_priv_key)); - con.wallet_api_ptr->save_wallet_file(con.wallet_filename); - - // attempt to give son2account some CORE tokens - BOOST_TEST_MESSAGE("Transferring CORE tokens from Nathan to son2account"); - transfer_tx = con.wallet_api_ptr->transfer( - "nathan", "son2account", "15000", "1.3.0", "Here are some CORE token for your new account", true - ); - - son2_before_upgrade = con.wallet_api_ptr->get_account("son2account"); - BOOST_CHECK(generate_block()); - - // upgrade son2account - BOOST_TEST_MESSAGE("Upgrading son2account to LTM"); - upgrade_tx = con.wallet_api_ptr->upgrade_account("son2account", true); - son2_after_upgrade = con.wallet_api_ptr->get_account("son2account"); - - // verify that the upgrade was successful - BOOST_CHECK_PREDICATE( - std::not_equal_to(), - (son2_before_upgrade.membership_expiration_date.sec_since_epoch()) - (son2_after_upgrade.membership_expiration_date.sec_since_epoch()) - ); - BOOST_CHECK(son2_after_upgrade.is_lifetime_member()); - - BOOST_CHECK(generate_block()); - - // create 2 SONs - BOOST_TEST_MESSAGE("Creating two SONs"); - create_tx = con.wallet_api_ptr->create_son("son1account", "http://son1", "true"); - create_tx = con.wallet_api_ptr->create_son("son2account", "http://son2", "true"); - BOOST_CHECK(generate_maintenance_block()); - - son1_obj = con.wallet_api_ptr->get_son("son1account"); + auto son1_obj = con.wallet_api_ptr->get_son("son1account"); BOOST_CHECK(son1_obj.son_account == con.wallet_api_ptr->get_account_id("son1account")); BOOST_CHECK_EQUAL(son1_obj.url, "http://son1"); - son2_obj = con.wallet_api_ptr->get_son("son2account"); + auto son2_obj = con.wallet_api_ptr->get_son("son2account"); BOOST_CHECK(son2_obj.son_account == con.wallet_api_ptr->get_account_id("son2account")); BOOST_CHECK_EQUAL(son2_obj.url, "http://son2"); @@ -201,33 +121,10 @@ BOOST_AUTO_TEST_CASE( cli_update_son ) { BOOST_TEST_MESSAGE("Cli get_son and update_son Test"); - init_nathan(); + son_test_helper sth(*this); + sth.create_son("sonmember", "http://sonmember"); - // create a new account - graphene::wallet::brain_key_info bki = con.wallet_api_ptr->suggest_brain_key(); - BOOST_CHECK(!bki.brain_priv_key.empty()); - signed_transaction create_acct_tx = con.wallet_api_ptr->create_account_with_brain_key( - bki.brain_priv_key, "sonmember", "nathan", "nathan", true - ); - // save the private key for this new account in the wallet file - BOOST_CHECK(con.wallet_api_ptr->import_key("sonmember", bki.wif_priv_key)); - con.wallet_api_ptr->save_wallet_file(con.wallet_filename); - - // attempt to give sonmember some CORE - BOOST_TEST_MESSAGE("Transferring CORE from Nathan to sonmember"); - signed_transaction transfer_tx = con.wallet_api_ptr->transfer( - "nathan", "sonmember", "100000", "1.3.0", "Here are some CORE token for your new account", true - ); - - BOOST_CHECK(generate_block()); - - // upgrade sonmember account - con.wallet_api_ptr->upgrade_account("sonmember", true); auto sonmember_acct = con.wallet_api_ptr->get_account("sonmember"); - BOOST_CHECK(sonmember_acct.is_lifetime_member()); - - // create son - con.wallet_api_ptr->create_son("sonmember", "http://sonmember", true); // get_son auto son_data = con.wallet_api_ptr->get_son("sonmember"); @@ -256,7 +153,9 @@ BOOST_AUTO_TEST_CASE( son_voting ) BOOST_TEST_MESSAGE("SON Vote cli wallet tests begin"); try { - INVOKE(create_sons); + son_test_helper sth(*this); + sth.create_son("son1account", "http://son1"); + sth.create_son("son2account", "http://son2"); BOOST_TEST_MESSAGE("Voting for SONs"); @@ -325,7 +224,9 @@ BOOST_AUTO_TEST_CASE( delete_son ) BOOST_TEST_MESSAGE("SON delete cli wallet tests begin"); try { - INVOKE(create_sons); + son_test_helper sth(*this); + sth.create_son("son1account", "http://son1"); + sth.create_son("son2account", "http://son2"); BOOST_TEST_MESSAGE("Deleting SONs"); signed_transaction delete_tx; @@ -428,7 +329,9 @@ BOOST_AUTO_TEST_CASE( list_son ) BOOST_TEST_MESSAGE("List SONs cli wallet tests begin"); try { - INVOKE(create_sons); + son_test_helper sth(*this); + sth.create_son("son1account", "http://son1"); + sth.create_son("son2account", "http://son2"); auto res = con.wallet_api_ptr->list_sons("", 100); BOOST_REQUIRE(res.size() == 2); @@ -448,7 +351,9 @@ BOOST_AUTO_TEST_CASE( update_son_votes_test ) BOOST_TEST_MESSAGE("SON update_son_votes cli wallet tests begin"); try { - INVOKE(create_sons); + son_test_helper sth(*this); + sth.create_son("son1account", "http://son1"); + sth.create_son("son2account", "http://son2"); BOOST_TEST_MESSAGE("Vote for 2 accounts with update_son_votes"); @@ -578,7 +483,9 @@ BOOST_AUTO_TEST_CASE( related_functions ) global_property_object gpo = con.wallet_api_ptr->get_global_properties(); BOOST_CHECK(gpo.active_sons.size() == 0); - INVOKE(create_sons); + son_test_helper sth(*this); + sth.create_son("son1account", "http://son1"); + sth.create_son("son2account", "http://son2"); gpo = con.wallet_api_ptr->get_global_properties(); BOOST_CHECK(gpo.active_sons.size() == 2);