summaryrefslogtreecommitdiffstats
path: root/windows/tools/h5copy
diff options
context:
space:
mode:
Diffstat (limited to 'windows/tools/h5copy')
-rw-r--r--windows/tools/h5copy/testh5copy.bat54
1 files changed, 53 insertions, 1 deletions
diff --git a/windows/tools/h5copy/testh5copy.bat b/windows/tools/h5copy/testh5copy.bat
index a0e164a..59e7e43 100644
--- a/windows/tools/h5copy/testh5copy.bat
+++ b/windows/tools/h5copy/testh5copy.bat
@@ -49,6 +49,9 @@ set verbose=yes
set srcfile1=h5copytst.h5
set srcfile2=h5copy_ref.h5
+set hdf_ext_src_file=h5copy_extlinks_src.h5
+set hdf_ext_trg_file=h5copy_extlinks_trg.h5
+
set indir=%CD%\testfiles
set outdir=%CD%\..\testfiles
@@ -378,7 +381,55 @@ rem <none>
)
exit /b
-
+
+rem Copy external links.
+rem adding to the destination file each time compare the result
+rem
+rem Assumed arguments:
+rem <none>
+:copy_ext_links
+
+ set testfile=%indir%\%hdf_ext_src_file%
+ set fileout=%outdir%\%hdf_ext_src_file:.h5=.out.h5%
+
+ rem Remove any output file left over from previous test run
+ del /f %fileout% 2> nul
+
+ echo.Test copying external link directly without -f ext
+ call :tooltest -v -i %testfile% -o %fileout% -s /group_ext/extlink_dset -d /copy1_dset
+
+ echo.Test copying external link directly with -f ext
+ call :tooltest -f ext -i %testfile% -o %fileout% -v -s /group_ext/extlink_dset -d /copy2_dset
+
+ echo.Test copying dangling external link (no obj) directly without -f ext
+ call :tooltest -i %testfile% -o %fileout% -v -s /group_ext/extlink_notyet1 -d /copy_dangle1_1
+
+ echo.Test copying dangling external link (no obj) directly with -f ext
+ call :tooltest -f ext -i %testfile% -o %fileout% -v -s /group_ext/extlink_notyet1 -d /copy_dangle1_2
+
+ echo.Test copying dangling external link (no file) directly without -f ext
+ call :tooltest -i %testfile% -o %fileout% -v -s /group_ext/extlink_notyet2 -d /copy_dangle2_1
+
+ echo.Test copying dangling external link (no file) directly with -f ext
+ call :tooltest -f ext -i %testfile% -o %fileout% -v -s /group_ext/extlink_notyet2 -d /copy_dangle2_2
+
+ echo.Test copying a group contains external links without -f ext
+ call :tooltest -v -i %testfile% -o %fileout% -s /group_ext -d /copy1_group
+
+ echo.Test copying a group contains external links with -f ext
+ call :tooltest -f ext -i %testfile% -o %fileout% -v -f ext -s /group_ext -d /copy2_group
+
+ rem Verify that the file created above is correct
+ call :h5lstest %fileout%
+
+ rem Remove output file created, if the "no cleanup" environment variable is
+ rem not defined
+ if not defined HDF5_NOCLEANUP (
+ del /f %fileout%
+ )
+
+ exit /b
+
rem ##############################################################################
rem ### T H E T E S T S ###
rem ##############################################################################
@@ -386,6 +437,7 @@ rem ############################################################################
:main
call :copyobjects
call :copyreferences
+ call :copy_ext_links
if %nerrors% equ 0 (
echo.All h5copy tests passed.