@@ -141,6 +141,7 @@ def add_array(
141
141
# self.model.rename(from_group, new_path)
142
142
# self.repo.store.rename(from_group, new_path)
143
143
144
+ @precondition (lambda self : self .store .supports_deletes )
144
145
@precondition (lambda self : len (self .all_arrays ) >= 1 )
145
146
@rule (data = st .data ())
146
147
def delete_array_using_del (self , data : DataObject ) -> None :
@@ -155,6 +156,7 @@ def delete_array_using_del(self, data: DataObject) -> None:
155
156
del group [array_name ]
156
157
self .all_arrays .remove (array_path )
157
158
159
+ @precondition (lambda self : self .store .supports_deletes )
158
160
@precondition (lambda self : len (self .all_groups ) >= 2 ) # fixme don't delete root
159
161
@rule (data = st .data ())
160
162
def delete_group_using_del (self , data : DataObject ) -> None :
@@ -290,6 +292,10 @@ def supports_partial_writes(self) -> bool:
290
292
def supports_writes (self ) -> bool :
291
293
return self .store .supports_writes
292
294
295
+ @property
296
+ def supports_deletes (self ) -> bool :
297
+ return self .store .supports_deletes
298
+
293
299
294
300
class ZarrStoreStateMachine (RuleBasedStateMachine ):
295
301
""" "
@@ -372,6 +378,7 @@ def get_partial_values(self, data: DataObject) -> None:
372
378
model_vals_ls ,
373
379
)
374
380
381
+ @precondition (lambda self : self .store .supports_deletes )
375
382
@precondition (lambda self : len (self .model .keys ()) > 0 )
376
383
@rule (data = st .data ())
377
384
def delete (self , data : DataObject ) -> None :
0 commit comments