@@ -3168,3 +3168,138 @@ async def test_get_metagraph_info_subnet_not_exist(subtensor, mocker):
3168
3168
3169
3169
assert result is None
3170
3170
mocked_logger .assert_called_once_with (f"Subnet { netuid } does not exist." )
3171
+
3172
+
3173
+ @pytest .mark .asyncio
3174
+ async def test_blocks_since_last_step_with_value (subtensor , mocker ):
3175
+ """Test blocks_since_last_step returns correct value."""
3176
+ # preps
3177
+ netuid = 1
3178
+ block = 123
3179
+ mocked_query_subtensor = mocker .AsyncMock ()
3180
+ subtensor .query_subtensor = mocked_query_subtensor
3181
+
3182
+ # call
3183
+ result = await subtensor .blocks_since_last_step (netuid = netuid , block = block )
3184
+
3185
+ # asserts
3186
+ mocked_query_subtensor .assert_awaited_once_with (
3187
+ name = "BlocksSinceLastStep" ,
3188
+ block = block ,
3189
+ params = [netuid ],
3190
+ )
3191
+
3192
+ assert result == mocked_query_subtensor .return_value .value
3193
+
3194
+
3195
+ @pytest .mark .asyncio
3196
+ async def test_blocks_since_last_step_is_none (subtensor , mocker ):
3197
+ """Test blocks_since_last_step returns None correctly."""
3198
+ # preps
3199
+ netuid = 1
3200
+ block = 123
3201
+ mocked_query_subtensor = mocker .AsyncMock (return_value = None )
3202
+ subtensor .query_subtensor = mocked_query_subtensor
3203
+
3204
+ # call
3205
+ result = await subtensor .blocks_since_last_step (netuid = netuid , block = block )
3206
+
3207
+ # asserts
3208
+ mocked_query_subtensor .assert_awaited_once_with (
3209
+ name = "BlocksSinceLastStep" ,
3210
+ block = block ,
3211
+ params = [netuid ],
3212
+ )
3213
+
3214
+ assert result is None
3215
+
3216
+
3217
+ @pytest .mark .asyncio
3218
+ async def test_get_subnet_owner_hotkey_has_return (subtensor , mocker ):
3219
+ """Test get_subnet_owner_hotkey returns correct value."""
3220
+ # preps
3221
+ netuid = 14
3222
+ block = 123
3223
+ expected_owner_hotkey = "owner_hotkey"
3224
+ mocked_query_subtensor = mocker .AsyncMock (return_value = expected_owner_hotkey )
3225
+ subtensor .query_subtensor = mocked_query_subtensor
3226
+
3227
+ # call
3228
+ result = await subtensor .get_subnet_owner_hotkey (netuid = netuid , block = block )
3229
+
3230
+ # asserts
3231
+ mocked_query_subtensor .assert_awaited_once_with (
3232
+ name = "SubnetOwnerHotkey" ,
3233
+ block = block ,
3234
+ params = [netuid ],
3235
+ )
3236
+
3237
+ assert result == expected_owner_hotkey
3238
+
3239
+
3240
+ @pytest .mark .asyncio
3241
+ async def test_get_subnet_owner_hotkey_is_none (subtensor , mocker ):
3242
+ """Test get_subnet_owner_hotkey returns None correctly."""
3243
+ # preps
3244
+ netuid = 14
3245
+ block = 123
3246
+ mocked_query_subtensor = mocker .AsyncMock (return_value = None )
3247
+ subtensor .query_subtensor = mocked_query_subtensor
3248
+
3249
+ # call
3250
+ result = await subtensor .get_subnet_owner_hotkey (netuid = netuid , block = block )
3251
+
3252
+ # asserts
3253
+ mocked_query_subtensor .assert_awaited_once_with (
3254
+ name = "SubnetOwnerHotkey" ,
3255
+ block = block ,
3256
+ params = [netuid ],
3257
+ )
3258
+
3259
+ assert result is None
3260
+
3261
+
3262
+ @pytest .mark .asyncio
3263
+ async def test_get_subnet_validator_permits_has_values (subtensor , mocker ):
3264
+ """Test get_subnet_validator_permits returns correct value."""
3265
+ # preps
3266
+ netuid = 14
3267
+ block = 123
3268
+ expected_validator_permits = [False , True , False ]
3269
+ mocked_query_subtensor = mocker .AsyncMock (return_value = expected_validator_permits )
3270
+ subtensor .query_subtensor = mocked_query_subtensor
3271
+
3272
+ # call
3273
+ result = await subtensor .get_subnet_validator_permits (netuid = netuid , block = block )
3274
+
3275
+ # asserts
3276
+ mocked_query_subtensor .assert_awaited_once_with (
3277
+ name = "ValidatorPermit" ,
3278
+ block = block ,
3279
+ params = [netuid ],
3280
+ )
3281
+
3282
+ assert result == expected_validator_permits
3283
+
3284
+
3285
+ @pytest .mark .asyncio
3286
+ async def test_get_subnet_validator_permits_is_none (subtensor , mocker ):
3287
+ """Test get_subnet_validator_permits returns correct value."""
3288
+ # preps
3289
+ netuid = 14
3290
+ block = 123
3291
+
3292
+ mocked_query_subtensor = mocker .AsyncMock (return_value = None )
3293
+ subtensor .query_subtensor = mocked_query_subtensor
3294
+
3295
+ # call
3296
+ result = await subtensor .get_subnet_validator_permits (netuid = netuid , block = block )
3297
+
3298
+ # asserts
3299
+ mocked_query_subtensor .assert_awaited_once_with (
3300
+ name = "ValidatorPermit" ,
3301
+ block = block ,
3302
+ params = [netuid ],
3303
+ )
3304
+
3305
+ assert result is None
0 commit comments