11import asyncio
22import json
33import re
4+ import time
45
56from bittensor_cli .src .bittensor .balances import Balance
67from .utils import turn_off_hyperparam_freeze_window
1617
1718
1819def test_liquidity (local_chain , wallet_setup ):
19- def liquidity_list ():
20- return exec_command_alice (
21- command = "liquidity" ,
22- sub_command = "list" ,
23- extra_args = [
24- "--wallet-path" ,
25- wallet_path_alice ,
26- "--chain" ,
27- "ws://127.0.0.1:9945" ,
28- "--wallet-name" ,
29- wallet_alice .name ,
30- "--wallet-hotkey" ,
31- wallet_alice .hotkey_str ,
32- "--netuid" ,
33- netuid ,
34- "--json-output" ,
35- ],
36- )
37-
3820 wallet_path_alice = "//Alice"
3921 netuid = 2
4022
@@ -48,6 +30,7 @@ def liquidity_list():
4830 print (
4931 "Skipping turning off hyperparams freeze window. This indicates the call does not exist on the chain you are testing."
5032 )
33+ time .sleep (10 )
5134
5235 # Register a subnet with sudo as Alice
5336 result = exec_command_alice (
@@ -88,7 +71,23 @@ def liquidity_list():
8871 assert isinstance (result_output ["extrinsic_identifier" ], str )
8972
9073 # verify no results for list thus far (subnet not yet started)
91- liquidity_list_result = liquidity_list ()
74+ liquidity_list_result = exec_command_alice (
75+ command = "liquidity" ,
76+ sub_command = "list" ,
77+ extra_args = [
78+ "--wallet-path" ,
79+ wallet_path_alice ,
80+ "--chain" ,
81+ "ws://127.0.0.1:9945" ,
82+ "--wallet-name" ,
83+ wallet_alice .name ,
84+ "--wallet-hotkey" ,
85+ wallet_alice .hotkey_str ,
86+ "--netuid" ,
87+ netuid ,
88+ "--json-output" ,
89+ ],
90+ )
9291 result_output = json .loads (liquidity_list_result .stdout )
9392 assert result_output ["success" ] is False
9493 assert f"Subnet with netuid: { netuid } is not active" in result_output ["err_msg" ]
@@ -118,10 +117,51 @@ def liquidity_list():
118117 ), start_subnet_emissions .stderr
119118 assert "Your extrinsic has been included " in start_subnet_emissions .stdout
120119
121- liquidity_list_result = liquidity_list ()
120+ stake_to_enable_v3 = exec_command_alice (
121+ command = "stake" ,
122+ sub_command = "add" ,
123+ extra_args = [
124+ "--netuid" ,
125+ "2" ,
126+ "--wallet-path" ,
127+ wallet_path_alice ,
128+ "--wallet-name" ,
129+ wallet_alice .name ,
130+ "--hotkey" ,
131+ wallet_alice .hotkey_str ,
132+ "--chain" ,
133+ "ws://127.0.0.1:9945" ,
134+ "--amount" ,
135+ "1" ,
136+ "--unsafe" ,
137+ "--no-prompt" ,
138+ "--era" ,
139+ "144" ,
140+ ],
141+ )
142+ assert "✅ Finalized" in stake_to_enable_v3 .stdout , stake_to_enable_v3 .stderr
143+ time .sleep (10 )
144+ liquidity_list_result = exec_command_alice (
145+ command = "liquidity" ,
146+ sub_command = "list" ,
147+ extra_args = [
148+ "--wallet-path" ,
149+ wallet_path_alice ,
150+ "--chain" ,
151+ "ws://127.0.0.1:9945" ,
152+ "--wallet-name" ,
153+ wallet_alice .name ,
154+ "--wallet-hotkey" ,
155+ wallet_alice .hotkey_str ,
156+ "--netuid" ,
157+ netuid ,
158+ "--json-output" ,
159+ ],
160+ )
161+ print (">>>" , liquidity_list_result .stdout , liquidity_list_result .stderr )
122162 result_output = json .loads (liquidity_list_result .stdout )
123- assert result_output ["success" ] is True
124- assert result_output ["err_msg" ] == ""
163+ assert result_output ["success" ] is False
164+ assert result_output ["err_msg" ] == "No liquidity positions found. "
125165 assert result_output ["positions" ] == []
126166
127167 enable_user_liquidity = exec_command_alice (
@@ -179,13 +219,29 @@ def liquidity_list():
179219 assert add_liquidity_result ["message" ] == ""
180220 assert isinstance (add_liquidity_result ["extrinsic_identifier" ], str )
181221
182- liquidity_list_result = liquidity_list ()
222+ liquidity_list_result = exec_command_alice (
223+ command = "liquidity" ,
224+ sub_command = "list" ,
225+ extra_args = [
226+ "--wallet-path" ,
227+ wallet_path_alice ,
228+ "--chain" ,
229+ "ws://127.0.0.1:9945" ,
230+ "--wallet-name" ,
231+ wallet_alice .name ,
232+ "--wallet-hotkey" ,
233+ wallet_alice .hotkey_str ,
234+ "--netuid" ,
235+ netuid ,
236+ "--json-output" ,
237+ ],
238+ )
239+ print (">>>" , liquidity_list_result .stdout , liquidity_list_result .stderr )
183240 liquidity_list_result = json .loads (liquidity_list_result .stdout )
184241 assert liquidity_list_result ["success" ] is True
185242 assert len (liquidity_list_result ["positions" ]) == 1
186243 liquidity_position = liquidity_list_result ["positions" ][0 ]
187244 assert liquidity_position ["liquidity" ] == 1.0
188- assert liquidity_position ["id" ] == 2
189245 assert liquidity_position ["fees_tao" ] == 0.0
190246 assert liquidity_position ["fees_alpha" ] == 0.0
191247 assert liquidity_position ["netuid" ] == netuid
@@ -218,10 +274,27 @@ def liquidity_list():
218274 assert modify_liquidity_result ["success" ] is True
219275 assert isinstance (modify_liquidity_result ["extrinsic_identifier" ], str )
220276
221- liquidity_list_result = json .loads (liquidity_list ().stdout )
277+ llr = exec_command_alice (
278+ command = "liquidity" ,
279+ sub_command = "list" ,
280+ extra_args = [
281+ "--wallet-path" ,
282+ wallet_path_alice ,
283+ "--chain" ,
284+ "ws://127.0.0.1:9945" ,
285+ "--wallet-name" ,
286+ wallet_alice .name ,
287+ "--wallet-hotkey" ,
288+ wallet_alice .hotkey_str ,
289+ "--netuid" ,
290+ netuid ,
291+ "--json-output" ,
292+ ],
293+ )
294+ print (">>>" , llr .stdout , llr .stderr )
295+ liquidity_list_result = json .loads (llr .stdout )
222296 assert len (liquidity_list_result ["positions" ]) == 1
223297 liquidity_position = liquidity_list_result ["positions" ][0 ]
224- assert liquidity_position ["id" ] == 2
225298 assert liquidity_position ["liquidity" ] == 21.0
226299
227300 removal = exec_command_alice (
@@ -249,6 +322,25 @@ def liquidity_list():
249322 removal_result [str (liquidity_position ["id" ])]["extrinsic_identifier" ], str
250323 )
251324
252- liquidity_list_result = json .loads (liquidity_list ().stdout )
253- assert liquidity_list_result ["success" ] is True
325+ liquidity_list_result = exec_command_alice (
326+ command = "liquidity" ,
327+ sub_command = "list" ,
328+ extra_args = [
329+ "--wallet-path" ,
330+ wallet_path_alice ,
331+ "--chain" ,
332+ "ws://127.0.0.1:9945" ,
333+ "--wallet-name" ,
334+ wallet_alice .name ,
335+ "--wallet-hotkey" ,
336+ wallet_alice .hotkey_str ,
337+ "--netuid" ,
338+ netuid ,
339+ "--json-output" ,
340+ ],
341+ )
342+ print (">>>" , liquidity_list_result .stdout , liquidity_list_result .stderr )
343+ liquidity_list_result = json .loads (liquidity_list_result .stdout )
344+ assert liquidity_list_result ["success" ] is False
345+ assert result_output ["err_msg" ] == "No liquidity positions found."
254346 assert liquidity_list_result ["positions" ] == []
0 commit comments