Skip to content

Commit df5bdde

Browse files
committed
fix fair node tests
1 parent 7afb231 commit df5bdde

4 files changed

Lines changed: 34 additions & 23 deletions

File tree

node_cli/fair/common.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,6 @@ def init(
7676
print('Fair node is initialized')
7777

7878

79-
@check_inited
8079
@check_user
8180
def cleanup(node_mode: NodeMode, prune: bool = False) -> None:
8281
node_mode = upsert_node_mode(node_mode=node_mode)

tests/cli/node_test.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -384,7 +384,7 @@ def test_maintenance_off(mocked_g_config):
384384
)
385385

386386

387-
def test_turn_off_maintenance_on(mocked_g_config, regular_user_conf, active_node_option):
387+
def test_turn_off_maintenance_on(mocked_g_config, regular_user_conf, active_node_option, skale_active_settings):
388388
resp_mock = response_mock(requests.codes.ok, {'status': 'ok', 'payload': None})
389389
with (
390390
mock.patch('subprocess.run', new=subprocess_run_mock),
@@ -415,7 +415,7 @@ def test_turn_off_maintenance_on(mocked_g_config, regular_user_conf, active_node
415415
assert result.exit_code == CLIExitCodes.UNSAFE_UPDATE
416416

417417

418-
def test_turn_on_maintenance_off(mocked_g_config, regular_user_conf, active_node_option):
418+
def test_turn_on_maintenance_off(mocked_g_config, regular_user_conf, active_node_option, skale_active_settings):
419419
resp_mock = response_mock(requests.codes.ok, {'status': 'ok', 'payload': None})
420420
with (
421421
mock.patch('subprocess.run', new=subprocess_run_mock),

tests/conftest.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,28 @@
6666
)
6767
from tests.helper import TEST_META_V1, TEST_META_V2, TEST_META_V3, TEST_SCHAINS_MNT_DIR_SINGLE_CHAIN
6868

69+
TIMEOUT_PATCHES = [
70+
'node_cli.configs.TM_INIT_TIMEOUT',
71+
'node_cli.configs.RESTORE_SLEEP_TIMEOUT',
72+
'node_cli.configs.INIT_TIMEOUT',
73+
'node_cli.core.node.TM_INIT_TIMEOUT',
74+
'node_cli.core.node.RESTORE_SLEEP_TIMEOUT',
75+
'node_cli.fair.common.TM_INIT_TIMEOUT',
76+
'node_cli.fair.common.INIT_TIMEOUT',
77+
'node_cli.fair.boot.TM_INIT_TIMEOUT',
78+
'node_cli.fair.active.RESTORE_SLEEP_TIMEOUT',
79+
]
80+
81+
82+
@pytest.fixture(autouse=True, scope='session')
83+
def _fast_timeouts():
84+
patchers = [mock.patch(target, 1) for target in TIMEOUT_PATCHES]
85+
for p in patchers:
86+
p.start()
87+
yield
88+
for p in patchers:
89+
p.stop()
90+
6991

7092
@pytest.fixture()
7193
def tmp_dir_path():

tests/fair/fair_node_test.py

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,7 @@ def test_restore_fair(
2828

2929
restore(backup_path, valid_env_file)
3030

31-
mock_compose_env.assert_called_once_with(
32-
node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE
33-
)
31+
mock_compose_env.assert_called_once_with(node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE)
3432
mock_restore_op.assert_called_once_with(
3533
node_mode=NodeMode.ACTIVE,
3634
settings=mock.ANY,
@@ -58,9 +56,7 @@ def test_init_fair_boot(
5856

5957
init_boot(valid_env_file)
6058

61-
mock_compose_env.assert_called_once_with(
62-
node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE
63-
)
59+
mock_compose_env.assert_called_once_with(node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE)
6460
mock_init_op.assert_called_once_with(
6561
settings=mock.ANY,
6662
compose_env=mock_env,
@@ -95,9 +91,7 @@ def test_update_fair_boot(
9591

9692
update(valid_env_file, pull_config_for_schain)
9793

98-
mock_compose_env.assert_called_once_with(
99-
node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE
100-
)
94+
mock_compose_env.assert_called_once_with(node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE)
10195
mock_update_op.assert_called_once_with(
10296
settings=mock.ANY,
10397
compose_env=mock_env,
@@ -127,9 +121,7 @@ def test_migrate_from_boot(
127121

128122
migrate_from_boot(valid_env_file)
129123

130-
mock_compose_env.assert_called_once_with(
131-
node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE
132-
)
124+
mock_compose_env.assert_called_once_with(node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE)
133125
mock_migrate_op.assert_called_once_with(
134126
settings=mock.ANY,
135127
compose_env=mock_env,
@@ -146,19 +138,17 @@ def test_cleanup_success(
146138
mock_compose_env,
147139
mock_cleanup_fair_op,
148140
mock_is_user_valid,
149-
inited_node,
150141
resource_alloc,
151142
meta_file_v3,
152143
active_node_option,
144+
inited_node,
153145
):
154146
mock_env = {'ENV_TYPE': 'devnet'}
155147
mock_compose_env.return_value = mock_env
156148

157149
cleanup(node_mode=NodeMode.ACTIVE)
158150

159-
mock_compose_env.assert_called_once_with(
160-
node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE
161-
)
151+
mock_compose_env.assert_called_once_with(node_type=NodeType.FAIR, node_mode=NodeMode.ACTIVE)
162152
mock_cleanup_fair_op.assert_called_once_with(
163153
node_mode=NodeMode.ACTIVE, compose_env=mock_env, prune=False
164154
)
@@ -171,10 +161,10 @@ def test_cleanup_calls_operations_in_correct_order(
171161
mock_compose_env,
172162
mock_cleanup_fair_op,
173163
mock_is_user_valid,
174-
inited_node,
175164
resource_alloc,
176165
meta_file_v3,
177166
active_node_option,
167+
inited_node,
178168
):
179169
from node_cli.fair.common import cleanup
180170

@@ -204,10 +194,10 @@ def test_cleanup_continues_after_fair_op_error(
204194
mock_compose_env,
205195
mock_cleanup_fair_op,
206196
mock_is_user_valid,
207-
inited_node,
208197
resource_alloc,
209198
meta_file_v3,
210199
active_node_option,
200+
inited_node,
211201
):
212202
mock_env = {'ENV_TYPE': 'devnet'}
213203
mock_compose_env.return_value = mock_env
@@ -224,9 +214,9 @@ def test_cleanup_continues_after_fair_op_error(
224214
@mock.patch('node_cli.utils.decorators.is_user_valid', return_value=False)
225215
def test_cleanup_fails_when_user_invalid(
226216
mock_is_user_valid,
227-
inited_node,
228217
resource_alloc,
229218
meta_file_v3,
219+
inited_node,
230220
):
231221
"""Test that cleanup fails when user validation fails"""
232222
import pytest
@@ -253,10 +243,10 @@ def test_cleanup_logs_success_message(
253243
mock_compose_env,
254244
mock_cleanup_fair_op,
255245
mock_is_user_valid,
256-
inited_node,
257246
resource_alloc,
258247
meta_file_v3,
259248
active_node_option,
249+
inited_node,
260250
):
261251
mock_env = {'ENV_TYPE': 'devnet'}
262252
mock_compose_env.return_value = mock_env

0 commit comments

Comments
 (0)