Fix remaining tests in test_policy_manager_agent

pull/1029/head
David Núñez 2019-06-12 10:46:23 +02:00
parent 1868f96bdc
commit 3a4df6adea
2 changed files with 14 additions and 10 deletions

View File

@ -115,6 +115,8 @@ def test_staker_collects_staking_reward(testerchain, staker, blockchain_ursulas,
workers_addresses=[worker_address],
confirm_activity=False).pop()
# TODO: Use the above code as a starting point for a non-staking worker fixture
# ...wait out the lock period...
for _ in range(token_economics.minimum_locked_periods):
testerchain.time_travel(periods=1)

View File

@ -31,15 +31,15 @@ def policy_meta(testerchain, agency, token_economics):
agent = policy_agent
_policy_id = os.urandom(16)
node_addresses = list(staking_agent.sample(quantity=3, duration=1))
staker_addresses = list(staking_agent.sample(quantity=3, duration=1))
_txhash = agent.create_policy(policy_id=_policy_id,
author_address=testerchain.alice_account,
value=token_economics.minimum_allowed_locked,
periods=10,
initial_reward=20,
node_addresses=node_addresses)
node_addresses=staker_addresses)
return MockPolicyMetadata(_policy_id, testerchain.alice_account, node_addresses)
return MockPolicyMetadata(_policy_id, testerchain.alice_account, staker_addresses)
@pytest.mark.slow()
@ -103,9 +103,10 @@ def test_calculate_refund(testerchain, agency, policy_meta):
token_agent, staking_agent, policy_agent = agency
agent = policy_agent
ursula = policy_meta.addresses[-1]
staker = policy_meta.addresses[-1]
ursula = staking_agent.get_worker_from_staker(staker)
testerchain.time_travel(hours=9)
_txhash = staking_agent.confirm_activity(node_address=ursula)
_receipt = staking_agent.confirm_activity(worker_address=ursula)
receipt = agent.calculate_refund(policy_id=policy_meta.policy_id, author_address=policy_meta.author)
assert receipt['status'] == 1, "Transaction Rejected"
@ -127,15 +128,16 @@ def test_collect_policy_reward(testerchain, agency, policy_meta, token_economics
token_agent, staking_agent, policy_agent = agency
agent = policy_agent
ursula = policy_meta.addresses[-1]
old_eth_balance = token_agent.blockchain.interface.w3.eth.getBalance(ursula)
staker = policy_meta.addresses[-1]
ursula = staking_agent.get_worker_from_staker(staker)
old_eth_balance = token_agent.blockchain.interface.w3.eth.getBalance(staker)
for _ in range(token_economics.minimum_locked_periods):
_txhash = staking_agent.confirm_activity(node_address=ursula)
_receipt = staking_agent.confirm_activity(worker_address=ursula)
testerchain.time_travel(periods=1)
receipt = agent.collect_policy_reward(collector_address=ursula, staker_address=ursula)
receipt = agent.collect_policy_reward(collector_address=staker, staker_address=staker)
assert receipt['status'] == 1, "Transaction Rejected"
assert receipt['logs'][0]['address'] == agent.contract_address
new_eth_balance = token_agent.blockchain.interface.w3.eth.getBalance(ursula)
new_eth_balance = token_agent.blockchain.interface.w3.eth.getBalance(staker)
assert new_eth_balance > old_eth_balance