@@ -636,6 +636,11 @@ def copy_store(source, dest, source_path='', dest_path='', excludes=None,
636
636
return n_copied , n_skipped , n_bytes_copied
637
637
638
638
639
+ def _check_dest_is_group (dest ):
640
+ if not hasattr (dest , 'create_dataset' ):
641
+ raise ValueError ('dest must be a group, got {!r}' .format (dest ))
642
+
643
+
639
644
def copy (source , dest , name = None , shallow = False , without_attrs = False , log = None ,
640
645
if_exists = 'raise' , dry_run = False , ** create_kws ):
641
646
"""Copy the `source` array or group into the `dest` group.
@@ -708,6 +713,9 @@ def copy(source, dest, name=None, shallow=False, without_attrs=False, log=None,
708
713
709
714
"""
710
715
716
+ # value checks
717
+ _check_dest_is_group (dest )
718
+
711
719
# setup logging
712
720
with _LogWriter (log ) as log :
713
721
@@ -973,6 +981,9 @@ def copy_all(source, dest, shallow=False, without_attrs=False, log=None,
973
981
974
982
"""
975
983
984
+ # value checks
985
+ _check_dest_is_group (dest )
986
+
976
987
# setup counting variables
977
988
n_copied = n_skipped = n_bytes_copied = 0
978
989
0 commit comments