Пример #1
0
 def test_deactive_contract_with_err(self):
     if funcs.is_contract_activated(conf["2"]["url"], "CostContract",
                                    self.token) == True:
         self.deactivateContract()
     walletId = funcs.get_activated_wallet(conf["2"]["url"], "CostContract",
                                           self.token)
     balanceContractOwnerB = utils.get_balance_from_db(
         conf["1"]["dbHost"], conf["1"]["dbName"], conf["1"]["login"],
         conf["1"]["pass"], walletId)
     balanceNodeOwnerB = utils.get_balance_from_db(conf["1"]["dbHost"],
                                                   conf["1"]["dbName"],
                                                   conf["1"]["login"],
                                                   conf["1"]["pass"],
                                                   conf["2"]["keyID"])
     commisionWallet = utils.get_commission_wallet(conf["1"]["dbHost"],
                                                   conf["1"]["dbName"],
                                                   conf["1"]["login"],
                                                   conf["1"]["pass"], 1)
     balanceCommisionB = utils.get_balance_from_db(conf["1"]["dbHost"],
                                                   conf["1"]["dbName"],
                                                   conf["1"]["login"],
                                                   conf["1"]["pass"],
                                                   commisionWallet)
     commission = utils.get_system_parameter(conf["1"]["dbHost"],
                                             conf["1"]["dbName"],
                                             conf["1"]["login"],
                                             conf["1"]["pass"],
                                             "commission_size")
     tokenRunner, uid = utils.get_uid(conf["2"]["url"])
     signature = sign(keys["key2"], uid)
     pubRunner = get_public_key(keys["key2"])
     balanceRunnerB = utils.get_balance_from_db_by_pub(
         conf["1"]["dbHost"], conf["1"]["dbName"], conf["1"]["login"],
         conf["1"]["pass"], pubRunner)
     dataRunner = utils.login(conf["2"]["url"], keys["key2"], 0)
     tokenRunner = dataRunner["jwtToken"]
     res = utils.call_contract(conf["2"]["url"], keys["key2"],
                               "CostContract", {"State": 0}, tokenRunner)
     time.sleep(10)
     hash = res["hash"]
     result = utils.txstatus(conf["2"]["url"],
                             conf["2"]["time_wait_tx_in_block"], hash,
                             tokenRunner)
     balanceContractOwnerA = utils.get_balance_from_db(
         conf["1"]["dbHost"], conf["1"]["dbName"], conf["1"]["login"],
         conf["1"]["pass"], walletId)
     balanceNodeOwnerA = utils.get_balance_from_db(conf["1"]["dbHost"],
                                                   conf["1"]["dbName"],
                                                   conf["1"]["login"],
                                                   conf["1"]["pass"],
                                                   conf["2"]["keyID"])
     balanceCommisionA = utils.get_balance_from_db(conf["1"]["dbHost"],
                                                   conf["1"]["dbName"],
                                                   conf["1"]["login"],
                                                   conf["1"]["pass"],
                                                   commisionWallet)
     balanceRunnerA = utils.get_balance_from_db_by_pub(
         conf["1"]["dbHost"], conf["1"]["dbName"], conf["1"]["login"],
         conf["1"]["pass"], pubRunner)
     dictValid = dict(balanceContractOwner=balanceContractOwnerA,
                      balanceNodeOwner=balanceNodeOwnerA,
                      balanceCommision=balanceCommisionA,
                      balanceRunner=balanceRunnerA)
     dictExpect = dict(balanceContractOwner=balanceContractOwnerB,
                       balanceNodeOwner=balanceNodeOwnerB,
                       balanceCommision=balanceCommisionB,
                       balanceRunner=balanceRunnerB)
     msg = "balanceContractOwnerA:" + str(balanceContractOwnerA) + "\n" +\
     "balanceContractOwnerE:" + str(balanceContractOwnerB) + "\n" +\
     "balanceNodeOwnerA:" + str(balanceNodeOwnerA) + "\n" +\
     "balanceNodeOwnerE:" + str(balanceNodeOwnerB) + "\n" +\
     "balanceCommisionA:" + str(balanceCommisionA) + "\n" +\
     "balanceCommisionE:" + str(balanceCommisionB) + "\n" +\
     "balanceRunnerA:" + str(balanceRunnerA) + "\n" +\
     "balanceRunnerE:" + str(balanceRunnerB) + "\n"
     self.assertDictEqual(dictValid, dictExpect, msg)
Пример #2
0
 def test_deactive_contract(self):
     if funcs.is_contract_activated(conf["2"]["url"], "CostContract",
                                    self.token) == True:
         self.deactivateContract()
     walletId = funcs.get_activated_wallet(conf["2"]["url"], "CostContract",
                                           self.token)
     sumsBefore = utils.getUserTokenAmounts(conf["1"]["dbHost"],
                                            conf["1"]["dbName"],
                                            conf["1"]["login"],
                                            conf["1"]["pass"])
     summBefore = sum(summ[0] for summ in sumsBefore)
     bNodeBalance = self.getNodeBalances()
     tokenRunner, uid = utils.get_uid(conf["2"]["url"])
     signature = sign(keys["key2"], uid)
     pubRunner = get_public_key(keys["key2"])
     balanceRunnerB = utils.get_balance_from_db_by_pub(
         conf["1"]["dbHost"], conf["1"]["dbName"], conf["1"]["login"],
         conf["1"]["pass"], pubRunner)
     dataRunner = utils.login(conf["2"]["url"], keys["key2"], 0)
     tokenRunner = dataRunner["jwtToken"]
     res = utils.call_contract(conf["2"]["url"], keys["key2"],
                               "CostContract", {"State": 1}, tokenRunner)
     result = utils.txstatus(conf["2"]["url"],
                             conf["2"]["time_wait_tx_in_block"],
                             res["hash"], tokenRunner)
     time.sleep(10)
     node = utils.get_block_gen_node(conf["1"]["dbHost"],
                                     conf["1"]["dbName"],
                                     conf["1"]["login"], conf["1"]["pass"],
                                     result["blockid"])
     sumsAfter = utils.getUserTokenAmounts(conf["1"]["dbHost"],
                                           conf["1"]["dbName"],
                                           conf["1"]["login"],
                                           conf["1"]["pass"])
     summAfter = sum(summ[0] for summ in sumsAfter)
     aNodeBalance = self.getNodeBalances()
     nodeCommission = 141620000000000000
     platformaCommission = 4380000000000000
     commission = nodeCommission + platformaCommission
     balanceRunnerA = utils.get_balance_from_db_by_pub(
         conf["1"]["dbHost"], conf["1"]["dbName"], conf["1"]["login"],
         conf["1"]["pass"], pubRunner)
     balanceContractOwnerA = utils.get_balance_from_db(
         conf["1"]["dbHost"], conf["1"]["dbName"], conf["1"]["login"],
         conf["1"]["pass"], walletId)
     inHistory = self.isCommissionsInHistory(nodeCommission,
                                             dataRunner["key_id"],
                                             platformaCommission, node)
     if node == 0:
         dictValid = dict(balanceRunner=balanceRunnerA,
                          platformBalance=aNodeBalance[0],
                          summ=summBefore,
                          history=inHistory)
         dictExpect = dict(balanceRunner=balanceRunnerB - commission,
                           platformBalance=bNodeBalance[0] + commission,
                           summ=summAfter,
                           history=True)
     else:
         dictValid = dict(balanceRunner=balanceRunnerA,
                          platformBalance=aNodeBalance[0],
                          nodeBalance=aNodeBalance[node],
                          summ=summBefore,
                          history=inHistory)
         dictExpect = dict(balanceRunner=balanceRunnerB - commission,
                           platformBalance=bNodeBalance[0] +
                           platformaCommission,
                           nodeBalance=bNodeBalance[node] + nodeCommission,
                           summ=summAfter,
                           history=True)
     self.assertDictEqual(dictValid, dictExpect,
                          "Error in comissions run deactivated contract")