def test_UV_TR_001_004_to_008_011_to_017_VS_EP_001(self, new_genesis_env, clients_consensus): new_genesis_env.deploy_all() pip = clients_consensus[0].pip submitvpandvote(clients_consensus[:3]) proposalinfo_version = pip.get_effect_proposal_info_of_vote() log.info('Get version proposal information {}'.format(proposalinfo_version)) wait_block_number(pip.node, proposalinfo_version.get('ActiveBlock')) assert pip.get_status_of_proposal(proposalinfo_version.get('ProposalID')) == 5 assert pip.chain_version == pip.cfg.version5 assert pip.get_accuverifiers_count(proposalinfo_version.get('ProposalID')) == [4, 3, 0, 0] submittpandvote(clients_consensus[:2], 1, 2) submitcppandvote(clients_consensus[:2], [1, 2]) proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) log.info('Get param proposal information {}'.format(proposalinfo_param)) result = pip.vote(pip.node.node_id, proposalinfo_param.get('ProposalID'), pip.cfg.vote_option_yeas, pip.node.staking_address, transaction_cfg=pip.cfg.transaction_cfg) log.info('Vote param proposal result : {}'.format(result)) assert_code(result, 0) result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN0, pip.cfg.version0) assert_code(result, 302028) result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN, pip.cfg.version5) assert_code(result, 0) verifier_node_version(pip, pip.cfg.version5) result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN4, pip.cfg.version4) assert_code(result, 0) verifier_node_version(pip, pip.cfg.version4) result = replace_version_declare(pip, pip.cfg.PLATON_NEW_BIN6, pip.cfg.version6) assert_code(result, 0) verifier_node_version(pip, pip.cfg.version6) result = pip.pip.listProposal() log.info('Interface listProposal result : {}'.format(result)) assert_code(result, 0) result = pip.pip.getProposal(proposalinfo_version.get('ProposalID')) log.info('Interface getProposal result : {}'.format(result)) assert_code(result, 0)
def test_TR_IN_011_TR_IN_012(self, new_genesis_env, clients_consensus): genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) genesis.economicModel.gov.paramProposalVoteDurationSeconds = 0 new_genesis_env.set_genesis(genesis.to_dict()) new_genesis_env.deploy_all() pip = clients_consensus[0].pip submitcppandvote(clients_consensus, [1, 1, 1, 3]) proposalinfo_param = pip.get_effect_proposal_info_of_vote(pip.cfg.param_proposal) log.info('Param proposal information {}'.format(proposalinfo_param)) proposalinfo_cancel = pip.get_effect_proposal_info_of_vote(pip.cfg.cancel_proposal) log.info('Cancel proposal information {}'.format(proposalinfo_cancel)) wait_block_number(pip.node, proposalinfo_cancel.get('EndVotingBlock')) assert pip.get_canceledby_of_proposal(proposalinfo_cancel.get('ProposalID')) == cancelby assert pip.get_canceledby_of_proposal(proposalinfo_param.get('ProposalID')) == proposalinfo_cancel.get('ProposalID') assert pip.get_status_of_proposal(proposalinfo_cancel.get('ProposalID')) == 2 assert pip.get_yeas_of_proposal(proposalinfo_cancel.get('ProposalID')) == 3 assert pip.get_nays_of_proposal(proposalinfo_cancel.get('ProposalID')) == 0 assert pip.get_abstentions_of_proposal(proposalinfo_cancel.get('ProposalID')) == 1 assert pip.get_accu_verifiers_of_proposal(proposalinfo_cancel.get('ProposalID')) == len(clients_consensus) assert pip.get_status_of_proposal(proposalinfo_param.get('ProposalID')) == 6 assert pip.get_yeas_of_proposal(proposalinfo_param.get('ProposalID')) == 0 assert pip.get_nays_of_proposal(proposalinfo_param.get('ProposalID')) == 0 assert pip.get_abstentions_of_proposal(proposalinfo_param.get('ProposalID')) == 0 assert pip.get_accu_verifiers_of_proposal(proposalinfo_param.get('ProposalID')) == len(clients_consensus)
def test_VO_TER_003_VO_TER_007_VO_TER_005_PP_VO_013(self, no_vp_proposal, client_candidate_obj, client_verifier_obj): ca_pip_obj = client_candidate_obj.pip ve_pip_obj = client_verifier_obj.pip submittpandvote([client_verifier_obj], 2) submitvpandvote([client_verifier_obj], votingrounds=1) proposalinfo_version = ve_pip_obj.get_effect_proposal_info_of_vote() log.info('Version proposal information {}'.format(proposalinfo_version)) result = version_proposal_vote(ca_pip_obj) assert_code(result, 302022) result = proposal_vote(ca_pip_obj, proposaltype=ca_pip_obj.cfg.text_proposal) assert_code(result, 302022) wait_block_number(ca_pip_obj.node, proposalinfo_version.get('EndVotingBlock')) submitcppandvote([client_verifier_obj], [2]) result = proposal_vote(ca_pip_obj, proposaltype=ca_pip_obj.cfg.param_proposal) assert_code(result, 302022) result = proposal_vote(ca_pip_obj, proposaltype=ca_pip_obj.cfg.cancel_proposal) assert_code(result, 302022)
def test_UC_CP_007(self, new_genesis_env, client_con_list_obj): genesis = from_dict(data_class=Genesis, data=new_genesis_env.genesis_config) genesis.economicModel.gov.cancelProposalSupportRate = 0.332 genesis.economicModel.gov.cancelProposalVoteRate = 0.75 new_genesis_env.set_genesis(genesis.to_dict()) new_genesis_env.deploy_all() submitcppandvote(client_con_list_obj[:3], [1, 2, 3]) pip_obj = client_con_list_obj[0].pip proposalinfo = pip_obj.get_effect_proposal_info_of_vote(pip_obj.cfg.cancel_proposal) log.info('Get cancel proposal information {}'.format(proposalinfo)) assert pip_obj.get_accuverifiers_count(proposalinfo.get('ProposalID')) == [4, 1, 1, 1] wait_block_number(client_con_list_obj[1].node, proposalinfo.get('EndVotingBlock')) assert_code(pip_obj.get_yeas_of_proposal(proposalinfo.get('ProposalID')), 1) assert_code(pip_obj.get_nays_of_proposal(proposalinfo.get('ProposalID')), 1) assert_code(pip_obj.get_abstentions_of_proposal(proposalinfo.get('ProposalID')), 1) assert_code(pip_obj.get_accu_verifiers_of_proposal(proposalinfo.get('ProposalID')), len(client_con_list_obj)) assert_code(pip_obj.get_status_of_proposal(proposalinfo.get('ProposalID')), 3)
def test_UC_CP_007(self, new_genesis_env, clients_consensus): update_setting_rate(new_genesis_env, 4, 3320, 7500) submitcppandvote(clients_consensus[:3], [1, 2, 3]) verify_proposal_status(clients_consensus, proposaltype=4, status=3)