summaryrefslogtreecommitdiffstats
path: root/windows/tools
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2010-09-17 12:45:55 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2010-09-17 12:45:55 (GMT)
commit6747ebd9858374ae912b6182024861b1710518c8 (patch)
tree9bd75142d9dd292fe4272118f650f1c91205a988 /windows/tools
parent9de3a84f916168831f29a4259fe93cb4823d8f57 (diff)
downloadhdf5-6747ebd9858374ae912b6182024861b1710518c8.zip
hdf5-6747ebd9858374ae912b6182024861b1710518c8.tar.gz
hdf5-6747ebd9858374ae912b6182024861b1710518c8.tar.bz2
[svn-r19413] Description:
Bring r19349:19411 from trunk to revise_chunks branch. Tested on: FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, w/threadsafe, in production mode Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode Mac OS X/32 10.6.4 (amazon) in debug mode Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
Diffstat (limited to 'windows/tools')
-rw-r--r--windows/tools/h5diff/testh5diff.bat184
1 files changed, 155 insertions, 29 deletions
diff --git a/windows/tools/h5diff/testh5diff.bat b/windows/tools/h5diff/testh5diff.bat
index 0023ec3..32fe001 100644
--- a/windows/tools/h5diff/testh5diff.bat
+++ b/windows/tools/h5diff/testh5diff.bat
@@ -48,6 +48,16 @@ set srcfile17=h5diff_ext2softlink_src.h5
set srcfile18=h5diff_ext2softlink_trg.h5
set srclnkfile1=h5diff_danglelinks1.h5
set srclnkfile2=h5diff_danglelinks2.h5
+set src_grp_recurse1=h5diff_grp_recurse1.h5
+set src_grp_recurse2=h5diff_grp_recurse2.h5
+set src_grp_recurse1_ext=h5diff_grp_recurse_ext1.h5
+set src_grp_recurse2_ext1=h5diff_grp_recurse_ext2-1.h5
+set src_grp_recurse2_ext2=h5diff_grp_recurse_ext2-2.h5
+set src_grp_recurse2_ext3=h5diff_grp_recurse_ext2-3.h5
+set srcexclude1_1=h5diff_exclude1-1.h5
+set srcexclude1_2=h5diff_exclude1-2.h5
+set srcexclude2_1=h5diff_exclude2-1.h5
+set srcexclude2_2=h5diff_exclude2-2.h5
set file1=%indir%\h5diff_basic1.h5
set file2=%indir%\h5diff_basic2.h5
@@ -69,6 +79,16 @@ set file17=%indir%\h5diff_ext2softlink_src.h5
set file18=%indir%\h5diff_ext2softlink_trg.h5
set lnkfile1=%indir%\h5diff_danglelinks1.h5
set lnkfile2=%indir%\h5diff_danglelinks2.h5
+set grp_recurse1=%indir%\h5diff_grp_recurse1.h5
+set grp_recurse2=%indir%\h5diff_grp_recurse2.h5
+set grp_recurse1_ext=%indir%\h5diff_grp_recurse_ext1.h5
+set grp_recurse2_ext1=%indir%\h5diff_grp_recurse_ext2-1.h5
+set grp_recurse2_ext2=%indir%\h5diff_grp_recurse_ext2-2.h5
+set grp_recurse2_ext3=%indir%\h5diff_grp_recurse_ext2-3.h5
+set exclude1_1=%indir%\h5diff_exclude1-1.h5
+set exclude1_2=%indir%\h5diff_exclude1-2.h5
+set exclude2_1=%indir%\h5diff_exclude2-1.h5
+set exclude2_2=%indir%\h5diff_exclude2-2.h5
rem The tool name
@@ -222,7 +242,7 @@ rem The tests
rem To avoid the printing of the complete full path of the test file, that hides
rem all the other parameters for long paths, the printing of the command line
rem is done first in
-rem TESTING with the name only of the test file $TOOL, not its full path $TESTFILErem ############################################################################
+rem TESTING with the name only of the test file $TOOL, not its full path $TESTFILE
rem ############################################################################
rem ############################################################################
@@ -282,9 +302,9 @@ rem ############################################################################
call :testing %h5diff% -q %srcfile1% %srcfile2%
call :tooltest h5diff_18.txt -q %file1% %file2%
- rem ##############################################################################
+ rem ########################################################################
rem # not comparable types
- rem ##############################################################################
+ rem ########################################################################
rem 2.0
call :testing %h5diff% -v %srcfile3% %srcfile3% dset g1
@@ -298,9 +318,9 @@ rem ############################################################################
call :testing %h5diff% -v %srcfile3% %srcfile3% dset t1
call :tooltest h5diff_22.txt -v %file3% %file3% dset t1
- rem ##############################################################################
+ rem #######################################################################
rem # compare groups, types, links (no differences and differences)
- rem ##############################################################################
+ rem #######################################################################
rem 2.3
call :testing %h5diff% -v %srcfile3% %srcfile3% g1 g1
@@ -328,9 +348,9 @@ rem ############################################################################
- rem ##############################################################################
+ rem ########################################################################
rem # Dataset datatypes
- rem ##############################################################################
+ rem ########################################################################
rem 5.0
call :testing %h5diff% -v %srcfile4% %srcfile4% dset0a dset0b
@@ -368,19 +388,23 @@ rem ############################################################################
call :testing %h5diff% -v %srcfile7% %srcfile8% refreg
call :tooltest h5diff_58.txt -v %file7% %file8% refreg
- rem ##############################################################################
+ rem ########################################################################
rem # Error messages
- rem ##############################################################################
+ rem ########################################################################
rem 6.0: Check if the command line number of arguments is less than 3
call :testing %h5diff% %srcfile1%
call :tooltest h5diff_600.txt %file1%
+ rem 6.1: Check if non-exist object name is specified
+ call :testing %h5diff% %srcfile1% %srcfile1% nono_obj
+ call :tooltest h5diff_601.txt %file1% %file1% nono_obj
- rem ##############################################################################
+
+ rem ########################################################################
rem # -d
- rem ##############################################################################
+ rem ########################################################################
rem 6.3: negative value
@@ -416,9 +440,9 @@ rem ############################################################################
call :tooltest h5diff_610.txt -d 1 %file1% %file2% g1/dset3 g1/dset4
- rem ##############################################################################
+ rem ########################################################################
rem # -p
- rem ##############################################################################
+ rem ########################################################################
@@ -455,9 +479,9 @@ rem ############################################################################
call :tooltest h5diff_619.txt -p 0.005 %file1% %file2% g1/dset3 g1/dset4
- rem ##############################################################################
+ rem ########################################################################
rem # -n
- rem ##############################################################################
+ rem ########################################################################
rem 6.21: negative value
call :testing %h5diff% -n -4 %srcfile1% %srcfile2% g1/dset3 g1/dset4
@@ -496,15 +520,15 @@ rem ############################################################################
call :testing %h5diff% file1.h6 file2.h6
call :tooltest h5diff_629.txt file1.h6 file2.h6
- rem ##############################################################################
+ rem ########################################################################
rem 7. attributes
- rem ##############################################################################
+ rem ########################################################################
call :testing %h5diff% -v %srcfile5% %srcfile6%
call :tooltest h5diff_70.txt -v %file5% %file6%
- rem ##############################################################################
+ rem #######################################################################
rem 8. all dataset datatypes
- rem ##############################################################################
+ rem #######################################################################
call :testing %h5diff% -v %srcfile7% %srcfile8%
call :tooltest h5diff_80.txt -v %file7% %file8%
@@ -513,13 +537,13 @@ rem ############################################################################
call :tooltest h5diff_90.txt -v %file2% %file2%
rem 10. read by hyperslab, print indexes
- rem ##############################################################################
+ rem #######################################################################
rem Not skipped on windows as this has not been a problem - ADB 1/22/2009
rem if test -n "$pmode" -a "$mydomainname" = hdfgroup.uiuc.edu; then
rem # skip this test which sometimes hangs in some THG machines
rem SKIP -v $SRCFILE9 $SRCFILE10
rem else
- rem ##############################################################################
+ rem #######################################################################
call :testing %h5diff% -v %srcfile9% %srcfile10%
call :tooltest h5diff_100.txt -v %file9% %file10%
rem fi
@@ -563,16 +587,16 @@ rem ############################################################################
call :testing %h5diff% -c %srcfile2% %srcfile2% g2/dset8 g2/dset9
call :tooltest h5diff_207.txt -c %file2% %file2% g2/dset8 g2/dset9
- rem ##############################################################################
+ rem #######################################################################
rem # Links compare without --follow-symlinks nor --no-dangling-links
- rem ##############################################################################
+ rem #######################################################################
rem test for bug1749
call :testing %h5diff% -v %srcfile12% %srcfile12% /link_g1 /link_g2
call :tooltest h5diff_300.txt -v %file12% %file12% /link_g1 /link_g2
- rem ##############################################################################
+ rem #######################################################################
rem # Links compare with --follow-symlinks Only
- rem ##############################################################################
+ rem #######################################################################
rem soft links file to file
call :testing %h5diff% --follow-symlinks -v %srcfile13% %srcfile13%
call :tooltest h5diff_400.txt --follow-symlinks -v %file13% %file13%
@@ -678,9 +702,9 @@ rem ############################################################################
call :tooltest h5diff_425.txt --follow-symlinks -v %file17% %file17% /ext_link_to_slink1 /ext_link_to_slink2
- rem ##############################################################################
+ rem #######################################################################
rem # Dangling links compare (--follow-symlinks and --no-dangling-links)
- rem ##############################################################################
+ rem #######################################################################
rem dangling links --follow-symlinks (FILE to FILE)
call :testing %h5diff% --follow-symlinks -v %srclnkfile1% %srclnkfile2%
call :tooltest h5diff_450.txt --follow-symlinks -v %lnkfile1% %lnkfile2%
@@ -721,10 +745,112 @@ rem ############################################################################
call :testing %h5diff% --follow-symlinks -v --no-dangling-links %srcfile15% %srcfile15% /ext_link_noexist1 /ext_link_noexist2
call :tooltest h5diff_459.txt --follow-symlinks -v --no-dangling-links %file15% %file15% /ext_link_noexist1 /ext_link_noexist2
-
+ rem ########################################################################
+ rem # test for group diff recursivly
+ rem ########################################################################
+ rem root
+ call :testing %h5diff% -v %src_grp_recurse1% %src_grp_recurse2% / /
+ call :tooltest h5diff_500.txt -v %grp_recurse1% %grp_recurse2% / /
+
+ call :testing %h5diff% -v --follow-symlinks %src_grp_recurse1% %src_grp_recurse2% / /
+ call :tooltest h5diff_501.txt -v --follow-symlinks %grp_recurse1% %grp_recurse2% / /
+
+ rem root vs group
+ call :testing %h5diff% -v %src_grp_recurse1% %src_grp_recurse2% / /grp1/grp2/grp3
+ call :tooltest h5diff_502.txt -v %grp_recurse1% %grp_recurse2% / /grp1/grp2/grp3
+
+ rem group vs group (same name and structure)
+ call :testing %h5diff% -v %src_grp_recurse1% %src_grp_recurse2% /grp1 /grp1
+ call :tooltest h5diff_503.txt -v %grp_recurse1% %grp_recurse2% /grp1 /grp1
+
+ rem group vs group (different name and structure)
+ call :testing %h5diff% -v %src_grp_recurse1% %src_grp_recurse2% /grp1/grp2 /grp1/grp2/grp3
+ call :tooltest h5diff_504.txt -v %grp_recurse1% %grp_recurse2% /grp1/grp2 /grp1/grp2/grp3
+
+ rem groups vs soft-link
+ call :testing %h5diff%
+ call :tooltest h5diff_505.txt -v %grp_recurse1% %grp_recurse2% /grp1 /slink_grp1
+
+ call :testing %h5diff% -v --follow-symlinks %src_grp_recurse1% %src_grp_recurse2% /grp1/grp2 /slink_grp2
+ call :tooltest h5diff_506.txt -v --follow-symlinks %grp_recurse1% %grp_recurse2% /grp1/grp2 /slink_grp2
+
+ rem groups vs ext-link
+ call :testing %h5diff% -v %src_grp_recurse1% %src_grp_recurse2% /grp1 /elink_grp1
+ call :tooltest h5diff_507.txt -v %grp_recurse1% %grp_recurse2% /grp1 /elink_grp1
+
+ call :testing %h5diff% -v --follow-symlinks %src_grp_recurse1% %src_grp_recurse2% /grp1 /elink_grp1
+ call :tooltest h5diff_508.txt -v --follow-symlinks %grp_recurse1% %grp_recurse2% /grp1 /elink_grp1
+
+ rem soft-link vs ext-link
+ call :testing %h5diff% -v %src_grp_recurse1% %src_grp_recurse2% /slink_grp1 /elink_grp1
+ call :tooltest h5diff_509.txt -v %grp_recurse1% %grp_recurse2% /slink_grp1 /elink_grp1
+
+ call :testing %h5diff% -v --follow-symlinks %src_grp_recurse1% %src_grp_recurse2% /slink_grp1 /elink_grp1
+ call :tooltest h5diff_510.txt -v --follow-symlinks %grp_recurse1% %grp_recurse2% /slink_grp1 /elink_grp1
+
+ rem circled ext links
+ call :testing %h5diff% -v %src_grp_recurse1% %src_grp_recurse2% /grp10 /grp11
+ call :tooltest h5diff_511.txt -v %grp_recurse1% %grp_recurse2% /grp10 /grp11
+
+ call :testing %h5diff% -v --follow-symlinks %src_grp_recurse1% %src_grp_recurse2% /grp10 /grp11
+ call :tooltest h5diff_512.txt -v --follow-symlinks %grp_recurse1% %grp_recurse2% /grp10 /grp11
+
+ rem circled soft2ext-link vs soft2ext-link
+ call :testing %h5diff% -v %src_grp_recurse1% %src_grp_recurse2% /slink_grp10 /slink_grp11
+ call :tooltest h5diff_513.txt -v %grp_recurse1% %grp_recurse2% /slink_grp10 /slink_grp11
+
+ call :testing %h5diff% -v --follow-symlinks %src_grp_recurse1% %src_grp_recurse2% /slink_grp10 /slink_grp11
+ call :tooltest h5diff_514.txt -v --follow-symlinks %grp_recurse1% %grp_recurse2% /slink_grp10 /slink_grp11
+
+ rem ######################################################################
+ rem # Test for group recursive diff via multi-linked external links
+ rem # With follow-symlinks, file $GRP_RECURSE1_EXT and $GRP_RECURSE2_EXT1
+ rem # should be same with the external links.
+ rem ######################################################################
+ rem file vs file
+ call :testing %h5diff% -v %src_grp_recurse1_ext% %src_grp_recurse2_ext1%
+ call :tooltest h5diff_515.txt -v %grp_recurse1_ext% %grp_recurse2_ext1%
+
+ call :testing %h5diff% -v --follow-symlinks %src_grp_recurse1_ext% %src_grp_recurse2_ext1%
+ call :tooltest h5diff_516.txt -v --follow-symlinks %grp_recurse1_ext% %grp_recurse2_ext1%
+
+ rem group vs group
+ call :testing %h5diff% -v %src_grp_recurse1_ext% %src_grp_recurse2_ext1% /g1
+ call :tooltest h5diff_517.txt -v %grp_recurse1_ext% %grp_recurse2_ext1% /g1
+
+ call :testing %h5diff% -v --follow-symlinks %src_grp_recurse1_ext% %src_grp_recurse2_ext1% /g1
+ call :tooltest h5diff_518.txt -v --follow-symlinks %grp_recurse1_ext% %grp_recurse2_ext1% /g1
+
+
rem ##############################################################################
- rem # END
+ rem # Exclude objects (--exclude-object)
rem ##############################################################################
+ rem #-------------------------------------------------
+ rem # Same structure, same names and different value.
+
+ rem Exclude the object with different value. Expect return - same
+ call :testing %h5diff% -v --exclude-object /group1/dset3 %srcexclude1_1% %srcexclude1_2%
+ call :tooltest h5diff_480.txt -v --exclude-object /group1/dset3 %exclude1_1% %exclude1_2%
+
+ rem Verify different by not excluding. Expect return - diff
+ call :testing %h5diff% -v %srcexclude1_1% %srcexclude1_2%
+ call :tooltest h5diff_481.txt -v %exclude1_1% %exclude1_2%
+
+ rem #----------------------------------------
+ rem # Different structure, different names.
+
+ rem Exclude all the different objects. Expect return - same
+ call :testing %h5diff% -v --exclude-object "/group1" --exclude-object "/dset1" %srcexclude2_1% %srcexclude2_2%
+ call :tooltest h5diff_482.txt -v --exclude-object "/group1" --exclude-object "/dset1" %exclude2_1% %exclude2_2%
+
+ rem Exclude only some different objects. Expect return - diff
+ call :testing %h5diff% -v --exclude-object "/group1" %srcexclude2_1% %srcexclude2_2%
+ call :tooltest h5diff_483.txt -v --exclude-object "/group1" %exclude2_1% %exclude2_2%
+
+
+ rem #######################################################################
+ rem # END
+ rem #######################################################################
if %nerrors% equ 0 (
echo.All %h5diff% tests passed.