@@ -75,7 +75,7 @@ async def test_store_open_readonly(self, store_kwargs: dict[str, Any], readonly:
7575        assert  store ._is_open 
7676        assert  store .readonly  ==  readonly 
7777
78-     async  def  test_not_writable_store_raises (self , store_kwargs : dict [str , Any ]) ->  None :
78+     async  def  test_readonly_store_raises (self , store_kwargs : dict [str , Any ]) ->  None :
7979        kwargs  =  {** store_kwargs , "readonly" : True }
8080        store  =  await  self .store_cls .open (** kwargs )
8181        assert  store .readonly 
@@ -228,19 +228,21 @@ async def test_delete_dir(self, store: S) -> None:
228228        assert  not  await  store .exists ("foo/zarr.json" )
229229        assert  not  await  store .exists ("foo/c/0" )
230230
231-     async  def  test_empty (self , store : S ) ->  None :
232-         assert  await  store .empty ()
231+     async  def  test_empty_dir (self , store : S ) ->  None :
232+         assert  await  store .empty_dir ()
233233        await  self .set (
234-             store , "key " , self .buffer_cls .from_bytes (bytes ("something" , encoding = "utf-8" ))
234+             store , "foo/bar " , self .buffer_cls .from_bytes (bytes ("something" , encoding = "utf-8" ))
235235        )
236-         assert  not  await  store .empty ()
236+         assert  not  await  store .empty_dir ()
237+         assert  not  await  store .empty_dir ("foo" )
238+         assert  await  store .empty_dir ("spam/" )
237239
238240    async  def  test_clear (self , store : S ) ->  None :
239241        await  self .set (
240242            store , "key" , self .buffer_cls .from_bytes (bytes ("something" , encoding = "utf-8" ))
241243        )
242244        await  store .clear ()
243-         assert  await  store .empty ()
245+         assert  await  store .empty_dir ()
244246
245247    async  def  test_list (self , store : S ) ->  None :
246248        assert  await  _collect_aiterator (store .list ()) ==  ()
@@ -297,40 +299,6 @@ async def test_list_dir(self, store: S) -> None:
297299        keys_observed  =  await  _collect_aiterator (store .list_dir (root  +  "/" ))
298300        assert  sorted (keys_expected ) ==  sorted (keys_observed )
299301
300-     # async def test_with_mode(self, store: S) -> None: 
301-     #     data = b"0000" 
302-     #     await self.set(store, "key", self.buffer_cls.from_bytes(data)) 
303-     #     assert (await self.get(store, "key")).to_bytes() == data 
304- 
305-     #     modes: list[StoreAccessMode] = ["r", "w"] 
306-     #     for mode in modes: 
307-     #         clone = store.with_mode(mode) 
308-     #         await clone._ensure_open() 
309-     #         assert clone.mode == mode 
310-     #         assert isinstance(clone, type(store)) 
311- 
312-     #         # earlier writes are visible 
313-     #         result = await clone.get("key", default_buffer_prototype()) 
314-     #         assert result is not None 
315-     #         assert result.to_bytes() == data 
316- 
317-     #         # writes to original after with_mode is visible 
318-     #         await self.set(store, "key-2", self.buffer_cls.from_bytes(data)) 
319-     #         result = await clone.get("key-2", default_buffer_prototype()) 
320-     #         assert result is not None 
321-     #         assert result.to_bytes() == data 
322- 
323-     #         if mode == "w": 
324-     #             # writes to clone is visible in the original 
325-     #             await clone.set("key-3", self.buffer_cls.from_bytes(data)) 
326-     #             result = await clone.get("key-3", default_buffer_prototype()) 
327-     #             assert result is not None 
328-     #             assert result.to_bytes() == data 
329- 
330-     #         else: 
331-     #             with pytest.raises(ValueError, match="store mode"): 
332-     #                 await clone.set("key-3", self.buffer_cls.from_bytes(data)) 
333- 
334302    async  def  test_set_if_not_exists (self , store : S ) ->  None :
335303        key  =  "k" 
336304        data_buf  =  self .buffer_cls .from_bytes (b"0000" )
0 commit comments