@@ -1488,21 +1488,27 @@ def test_delitem_removes_children(store: Store, zarr_format: ZarrFormat) -> None
14881488 g1 ["0/0" ]
14891489
14901490
1491- @pytest .mark .parametrize (' store' , [' memory' ], indirect = True )
1491+ @pytest .mark .parametrize (" store" , [" memory" ], indirect = True )
14921492def test_group_members_performance (store : MemoryStore ) -> None :
14931493 """
14941494 Test that the performance of Group.members is robust to asynchronous latency
14951495 """
14961496 get_latency = 0.1
1497- latency_store = LatencyStore (store , get_latency = get_latency )
14981497
1499- group = zarr .group (store = latency_store )
1500- num_groups = 100
1498+ # use the input store to create some groups
1499+ group_create = zarr .group (store = store )
1500+ num_groups = 10
1501+
15011502 # Create some groups
15021503 for i in range (num_groups ):
1503- group .create_group (f"group{ i } " )
1504+ group_create .create_group (f"group{ i } " )
15041505
1505- start = time .time ()
1506- members = group .members ()
1507- elapsed = start = time .time ()
1508- assert elapsed < 2 * get_latency
1506+ latency_store = LatencyStore (store , get_latency = get_latency )
1507+ # create a group with some latency on get operations
1508+ group_read = zarr .group (store = latency_store )
1509+
1510+ # check how long it takes to iterate over the groups
1511+ start = time .time ()
1512+ _ = group_read .members ()
1513+ elapsed = time .time () - start
1514+ assert elapsed < (1.1 * get_latency ) + 0.001
0 commit comments