From cf3a358e76b74de8c2084cf6de1657fe26d2c13d Mon Sep 17 00:00:00 2001 From: Dmytro Date: Thu, 17 Feb 2022 12:11:16 +0000 Subject: [PATCH] SKALE-4979 Improve rotation conditions test --- tests/manager/node_rotation_test.py | 19 +++++++++++++++++-- tests/rotation_history/utils.py | 5 +++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/tests/manager/node_rotation_test.py b/tests/manager/node_rotation_test.py index fd8013b7..523b77a9 100644 --- a/tests/manager/node_rotation_test.py +++ b/tests/manager/node_rotation_test.py @@ -7,7 +7,7 @@ cleanup_nodes_schains, create_schain, add_test4_schain_type ) from tests.constants import DEFAULT_SCHAIN_ID, DEFAULT_SCHAIN_NAME, DEFAULT_SCHAIN_INDEX -from tests.rotation_history.utils import set_up_nodes, run_dkg +from tests.rotation_history.utils import set_up_nodes, run_dkg, _skip_evm_time, TEST_ROTATION_DELAY def test_get_rotation(skale): @@ -66,7 +66,7 @@ def test_is_rotation_active(skale): run_dkg(nodes, skale_instances, group_index) exiting_node_index = 1 - set_up_nodes(skale, 1) + new_nodes, new_skale_instances = set_up_nodes(skale, 1) assert not skale.node_rotation.is_new_node_found(name) assert not skale.node_rotation.is_rotation_in_progress(name) @@ -83,3 +83,18 @@ def test_is_rotation_active(skale): assert skale.node_rotation.is_new_node_found(name) assert skale.node_rotation.is_rotation_in_progress(name) assert skale.node_rotation.is_rotation_active(name) + + nodes[exiting_node_index] = new_nodes[0] + skale_instances[exiting_node_index] = new_skale_instances[0] + + run_dkg(nodes, skale_instances, group_index, skip_time=False) + + assert skale.node_rotation.is_new_node_found(name) + assert skale.node_rotation.is_rotation_in_progress(name) + assert skale.node_rotation.is_rotation_active(name) + + _skip_evm_time(skale_instances[0].web3, TEST_ROTATION_DELAY) + + assert skale.node_rotation.is_new_node_found(name) + assert not skale.node_rotation.is_rotation_in_progress(name) + assert not skale.node_rotation.is_rotation_active(name) diff --git a/tests/rotation_history/utils.py b/tests/rotation_history/utils.py index df7a4b65..b1e3b062 100644 --- a/tests/rotation_history/utils.py +++ b/tests/rotation_history/utils.py @@ -180,8 +180,9 @@ def fail_dkg( return new_node_ids -def run_dkg(nodes, skale_instances, group_index): +def run_dkg(nodes, skale_instances, group_index, skip_time=True): logger.info('Running DKG procedure...') send_broadcasts(nodes, skale_instances, group_index) send_alrights(nodes, skale_instances, group_index) - _skip_evm_time(skale_instances[0].web3, TEST_ROTATION_DELAY) + if skip_time: + _skip_evm_time(skale_instances[0].web3, TEST_ROTATION_DELAY)