99)
1010
1111from bittensor .core .extrinsics import utils
12+ from bittensor .core .subtensor import Subtensor
1213
1314
1415@pytest .fixture
1516def set_extrinsics_timeout_env (monkeypatch ):
1617 monkeypatch .setenv ("EXTRINSIC_SUBMISSION_TIMEOUT" , "1" )
1718
1819
19- def test_submit_extrinsic_timeout ():
20+ @pytest .fixture
21+ def mock_subtensor ():
22+ mock_subtensor = MagicMock (autospec = Subtensor )
23+ mock_substrate = MagicMock (autospec = SubstrateInterface )
24+ mock_subtensor .substrate = mock_substrate
25+ yield mock_subtensor
26+
27+
28+ def test_submit_extrinsic_timeout (mock_subtensor ):
2029 timeout = 1
2130
2231 def wait (extrinsic , wait_for_inclusion , wait_for_finalization ):
2332 time .sleep (timeout + 0.01 )
2433 return True
2534
26- mock_substrate = MagicMock (autospec = SubstrateInterface )
27- mock_substrate .submit_extrinsic = wait
35+ mock_subtensor .substrate .submit_extrinsic = wait
2836 mock_extrinsic = MagicMock (autospec = GenericExtrinsic )
2937 with patch .object (utils , "EXTRINSIC_SUBMISSION_TIMEOUT" , timeout ):
3038 with pytest .raises (SubstrateRequestException ):
31- utils .submit_extrinsic (mock_substrate , mock_extrinsic , True , True )
39+ utils .submit_extrinsic (mock_subtensor , mock_extrinsic , True , True )
3240
3341
34- def test_submit_extrinsic_success ():
35- mock_substrate = MagicMock (autospec = SubstrateInterface )
36- mock_substrate .submit_extrinsic .return_value = True
42+ def test_submit_extrinsic_success (mock_subtensor ):
43+ mock_subtensor .substrate .submit_extrinsic .return_value = True
3744 mock_extrinsic = MagicMock (autospec = GenericExtrinsic )
38- result = utils .submit_extrinsic (mock_substrate , mock_extrinsic , True , True )
45+ result = utils .submit_extrinsic (mock_subtensor , mock_extrinsic , True , True )
3946 assert result is True
4047
4148
42- def test_submit_extrinsic_timeout_env (set_extrinsics_timeout_env ):
49+ def test_submit_extrinsic_timeout_env (set_extrinsics_timeout_env , mock_subtensor ):
4350 importlib .reload (utils )
4451 timeout = utils .EXTRINSIC_SUBMISSION_TIMEOUT
4552 assert timeout < 5 # should be less than 5 seconds as taken from test env var
@@ -48,23 +55,21 @@ def wait(extrinsic, wait_for_inclusion, wait_for_finalization):
4855 time .sleep (timeout + 1 )
4956 return True
5057
51- mock_substrate = MagicMock (autospec = SubstrateInterface )
52- mock_substrate .submit_extrinsic = wait
58+ mock_subtensor .substrate .submit_extrinsic = wait
5359 mock_extrinsic = MagicMock (autospec = GenericExtrinsic )
5460 with pytest .raises (SubstrateRequestException ):
55- utils .submit_extrinsic (mock_substrate , mock_extrinsic , True , True )
61+ utils .submit_extrinsic (mock_subtensor , mock_extrinsic , True , True )
5662
5763
58- def test_submit_extrinsic_success_env (set_extrinsics_timeout_env ):
64+ def test_submit_extrinsic_success_env (set_extrinsics_timeout_env , mock_subtensor ):
5965 importlib .reload (utils )
60- mock_substrate = MagicMock (autospec = SubstrateInterface )
61- mock_substrate .submit_extrinsic .return_value = True
66+ mock_subtensor .substrate .submit_extrinsic .return_value = True
6267 mock_extrinsic = MagicMock (autospec = GenericExtrinsic )
63- result = utils .submit_extrinsic (mock_substrate , mock_extrinsic , True , True )
68+ result = utils .submit_extrinsic (mock_subtensor , mock_extrinsic , True , True )
6469 assert result is True
6570
6671
67- def test_submit_extrinsic_timeout_env_float (monkeypatch ):
72+ def test_submit_extrinsic_timeout_env_float (monkeypatch , mock_subtensor ):
6873 monkeypatch .setenv ("EXTRINSIC_SUBMISSION_TIMEOUT" , "1.45" ) # use float
6974
7075 importlib .reload (utils )
@@ -76,11 +81,10 @@ def wait(extrinsic, wait_for_inclusion, wait_for_finalization):
7681 time .sleep (timeout + 0.3 ) # sleep longer by float
7782 return True
7883
79- mock_substrate = MagicMock (autospec = SubstrateInterface )
80- mock_substrate .submit_extrinsic = wait
84+ mock_subtensor .substrate .submit_extrinsic = wait
8185 mock_extrinsic = MagicMock (autospec = GenericExtrinsic )
8286 with pytest .raises (SubstrateRequestException ):
83- utils .submit_extrinsic (mock_substrate , mock_extrinsic , True , True )
87+ utils .submit_extrinsic (mock_subtensor , mock_extrinsic , True , True )
8488
8589
8690def test_import_timeout_env_parse (monkeypatch ):
0 commit comments