@@ -1729,39 +1729,52 @@ def test_hidden_zarr_keys(self):
1729
1729
pass
1730
1730
1731
1731
@pytest .mark .skipif (LooseVersion (dask_version ) < "2.4" , reason = "dask GH5334" )
1732
- def test_write_persistence_modes (self ):
1732
+ @pytest .mark .parametrize ("group" , [None , "group1" ])
1733
+ def test_write_persistence_modes (self , group ):
1733
1734
original = create_test_data ()
1734
1735
1735
1736
# overwrite mode
1736
- with self .roundtrip (original , save_kwargs = {"mode" : "w" }) as actual :
1737
+ with self .roundtrip (
1738
+ original ,
1739
+ save_kwargs = {"mode" : "w" , "group" : group },
1740
+ open_kwargs = {"group" : group },
1741
+ ) as actual :
1737
1742
assert_identical (original , actual )
1738
1743
1739
1744
# don't overwrite mode
1740
- with self .roundtrip (original , save_kwargs = {"mode" : "w-" }) as actual :
1745
+ with self .roundtrip (
1746
+ original ,
1747
+ save_kwargs = {"mode" : "w-" , "group" : group },
1748
+ open_kwargs = {"group" : group },
1749
+ ) as actual :
1741
1750
assert_identical (original , actual )
1742
1751
1743
1752
# make sure overwriting works as expected
1744
1753
with self .create_zarr_target () as store :
1745
1754
self .save (original , store )
1746
1755
# should overwrite with no error
1747
- self .save (original , store , mode = "w" )
1748
- with self .open (store ) as actual :
1756
+ self .save (original , store , mode = "w" , group = group )
1757
+ with self .open (store , group = group ) as actual :
1749
1758
assert_identical (original , actual )
1750
1759
with pytest .raises (ValueError ):
1751
1760
self .save (original , store , mode = "w-" )
1752
1761
1753
1762
# check append mode for normal write
1754
- with self .roundtrip (original , save_kwargs = {"mode" : "a" }) as actual :
1763
+ with self .roundtrip (
1764
+ original ,
1765
+ save_kwargs = {"mode" : "a" , "group" : group },
1766
+ open_kwargs = {"group" : group },
1767
+ ) as actual :
1755
1768
assert_identical (original , actual )
1756
1769
1757
- ds , ds_to_append , _ = create_append_test_data ()
1758
-
1759
1770
# check append mode for append write
1771
+ ds , ds_to_append , _ = create_append_test_data ()
1760
1772
with self .create_zarr_target () as store_target :
1761
- ds .to_zarr (store_target , mode = "w" )
1762
- ds_to_append .to_zarr (store_target , append_dim = "time" )
1773
+ ds .to_zarr (store_target , mode = "w" , group = group )
1774
+ ds_to_append .to_zarr (store_target , append_dim = "time" , group = group )
1763
1775
original = xr .concat ([ds , ds_to_append ], dim = "time" )
1764
- assert_identical (original , xr .open_zarr (store_target ))
1776
+ actual = xr .open_zarr (store_target , group = group )
1777
+ assert_identical (original , actual )
1765
1778
1766
1779
def test_compressor_encoding (self ):
1767
1780
original = create_test_data ()
0 commit comments