def userA_deposits_some_amount_of_eth_in_plasma_cash(context, amount): client = Client(container.get_root_chain(), container.get_child_chain_client(), userA_key) client.deposit(amount=amount, currency=eth_currency) time.sleep(5) operator = Client(container.get_root_chain(), container.get_child_chain_client(), operator_key) operator.submit_block()
def userA_transfers_some_eth_to_userB(context, amount): prev_block = DEPOSIT_TX_BLOCK client = Client(container.get_root_chain(), container.get_child_chain_client(), userA_key) client.send_transaction(prev_block, uid, amount, userB) operator = Client(container.get_root_chain(), container.get_child_chain_client(), operator_key) operator.submit_block()
def userB_start_exit_some_eth_from_plasma_cash(context, amount): client = Client(container.get_root_chain(), container.get_child_chain_client(), userB_key) client.start_exit(uid, prev_tx_blk_num=1, tx_blk_num=2) time.sleep(5) operator = Client(container.get_root_chain(), container.get_child_chain_client(), operator_key) operator.submit_block()
def userC_challenges_the_coin_spent_exit(context): client = Client(container.get_root_chain(), container.get_child_chain_client(), userC_key) client.challenge_exit(uid, tx_blk_num=TRANSFER_TX_2_BLOCK) time.sleep(5) operator = Client(container.get_root_chain(), container.get_child_chain_client(), operator_key) operator.submit_block()
def userB_starts_to_exit_some_eth_from_plasma_cash(context, amount): client = Client(container.get_root_chain(), container.get_child_chain_client(), userB_key) client.start_exit(uid, prev_tx_blk_num=DEPOSIT_TX_BLOCK, tx_blk_num=TRANSFER_TX_1_BLOCK) time.sleep(5) operator = Client(container.get_root_chain(), container.get_child_chain_client(), operator_key) operator.submit_block()
def userC_transfers_some_eth_to_userD(context, amount): prev_block = TRANSFER_TX_2_BLOCK client = Client(container.get_root_chain(), container.get_child_chain_client(), userC_key) client.send_transaction(prev_block, uid, amount, userD) operator = Client(container.get_root_chain(), container.get_child_chain_client(), operator_key) operator.submit_block()
def userA_starts_to_exit_deposit_from_plasma_cash(context, amount): client = Client(container.get_root_chain(), container.get_child_chain_client(), userA_key) client.start_deposit_exit(uid, tx_blk_num=DEPOSIT_TX_BLOCK) time.sleep(5) operator = Client(container.get_root_chain(), container.get_child_chain_client(), operator_key) operator.submit_block()