Skip to content

Commit

Permalink
Merge pull request #129 from mkoura/restart_on_skip
Browse files Browse the repository at this point in the history
Restart cluster when it's not receiving rewards
  • Loading branch information
mkoura committed Sep 21, 2020
2 parents 8f2ebbe + e1938c2 commit 947f5ef
Showing 1 changed file with 10 additions and 18 deletions.
28 changes: 10 additions & 18 deletions cardano_node_tests/tests/test_staking.py
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,6 @@ def test_deregister(
cluster = cluster_manager.get(use_resources=[pool_name])

temp_template = "test_deregister_addr"
pool_rewards_address = cluster_manager.cache.addrs_data[pool_name]["reward"].address

# submit registration certificate and delegate to pool
pool_user = _delegate_stake_addr(
Expand All @@ -213,30 +212,19 @@ def test_deregister(
helpers.wait_for_stake_distribution(cluster)

src_address = pool_user.payment.address
init_pool_reward_balance = cluster.get_stake_addr_info(
pool_rewards_address
).reward_account_balance

# wait for first reward
stake_reward = helpers.wait_for(
lambda: cluster.get_stake_addr_info(pool_user.stake.address).reward_account_balance,
delay=10,
num_sec=3 * cluster.epoch_length_sec,
num_sec=4 * cluster.epoch_length_sec + 100,
message="receive rewards",
silent=True,
)
if not stake_reward:
cluster_manager.set_needs_restart()
pytest.skip(f"Pool '{pool_name}' hasn't received any rewards, cannot continue.")

if (
not stake_reward
and cluster.get_stake_addr_info(pool_rewards_address).reward_account_balance
== init_pool_reward_balance
):
pytest.skip(f"Pool '{pool_name}' hasn't received any rewards, cannot continue.")

assert stake_reward, "Expected rewards were not received"

# files for de-registering stake address
stake_addr_dereg_cert = cluster.gen_stake_addr_deregistration_cert(
addr_name=f"addr0_{temp_template}", stake_vkey_file=pool_user.stake.vkey_file
Expand Down Expand Up @@ -643,11 +631,12 @@ def test_no_reward_unmet_pledge(
stake_reward = helpers.wait_for(
lambda: cluster.get_stake_addr_info(pool_user.stake.address).reward_account_balance,
delay=10,
num_sec=4 * cluster.epoch_length_sec,
num_sec=4 * cluster.epoch_length_sec + 100,
message="receive rewards",
silent=True,
)
if not stake_reward:
cluster_manager.set_needs_restart()
pytest.skip(f"Pool '{pool_name}' hasn't received any rewards, cannot continue.")

node_cold = pool_rec["cold_key_pair"]
Expand Down Expand Up @@ -757,11 +746,12 @@ def test_no_reward_unmet_pledge2(
stake_reward = helpers.wait_for(
lambda: cluster.get_stake_addr_info(pool_user.stake.address).reward_account_balance,
delay=10,
num_sec=4 * cluster.epoch_length_sec,
num_sec=4 * cluster.epoch_length_sec + 100,
message="receive rewards",
silent=True,
)
if not stake_reward:
cluster_manager.set_needs_restart()
pytest.skip(f"Pool '{pool_name}' hasn't received any rewards, cannot continue.")

node_cold = pool_rec["cold_key_pair"]
Expand Down Expand Up @@ -885,11 +875,12 @@ def test_no_reward_unregistered_stake_addr(
stake_reward = helpers.wait_for(
lambda: cluster.get_stake_addr_info(pool_user.stake.address).reward_account_balance,
delay=10,
num_sec=4 * cluster.epoch_length_sec,
num_sec=4 * cluster.epoch_length_sec + 100,
message="receive rewards",
silent=True,
)
if not stake_reward:
cluster_manager.set_needs_restart()
pytest.skip(f"Pool '{pool_name}' hasn't received any rewards, cannot continue.")

# deregister stake address
Expand Down Expand Up @@ -1027,11 +1018,12 @@ def test_no_reward_unregistered_reward_addr(
stake_reward = helpers.wait_for(
lambda: cluster.get_stake_addr_info(pool_user.stake.address).reward_account_balance,
delay=10,
num_sec=3 * cluster.epoch_length_sec,
num_sec=4 * cluster.epoch_length_sec + 100,
message="receive rewards",
silent=True,
)
if not stake_reward:
cluster_manager.set_needs_restart()
pytest.skip(f"Pool '{pool_name}' hasn't received any rewards, cannot continue.")

# withdraw rewards to payment address
Expand Down

0 comments on commit 947f5ef

Please sign in to comment.