[svn-r14138]

This commit is contained in:
Scott Wegner 2007-09-10 14:14:08 -05:00
parent 33efca34cb
commit 43bb1ba8e5
60 changed files with 4971 additions and 6520 deletions

View File

@ -1638,17 +1638,12 @@
./windows/hdf5bt.BAT
./windows/hdf5build.BAT
./windows/hdf5check.BAT
./windows/install_cppdll.BAT
./windows/InstallcppExamples.BAT
./windows/install_dll.BAT
./windows/InstallExamples.bat
./windows/install_f90dll.BAT
./windows/Installf90Examples.BAT
./windows/installhdf5lib.bat
./windows/install_hlcexamples.BAT
./windows/install_hlcppdll.BAT
./windows/install_hldll.BAT
./windows/install_hlf90dll.bat
./windows/install_hlf90examples.BAT
# C++ Examples
@ -1671,7 +1666,7 @@
./windows/c++/examples/writedatatestdll/writedatatestdll.vcproj
# C++ Tests
./windows/c++/test/hdf5cpptest.bat
./windows/c++/test/checkcpptests.bat
./windows/c++/test/dsets_cpp/dsets_cpp.vcproj
./windows/c++/test/dsets_cppdll/dsets_cppdll.vcproj
./windows/c++/test/testhdf5_cpp/testhdf5_cpp.vcproj
@ -1738,7 +1733,7 @@
./windows/fortran/src/H5fortran_types.f90
# Fortran Tests
./windows/fortran/test/testhdf5_fortran.bat
./windows/fortran/test/checkfortrantests.bat
./windows/fortran/test/flush1_fortran/flush1_fortran.vfproj
./windows/fortran/test/flush1_fortrandll/flush1_fortrandll.vfproj
./windows/fortran/test/flush2_fortran/flush2_fortran.vfproj
@ -1751,7 +1746,7 @@
./windows/fortran/test/testhdf5_fortrandll/testhdf5_fortrandll.vfproj
# High-Leve C++ Tests
./windows/hl/c++/test/test_hdf5_hl_cpp.bat
./windows/hl/c++/test/checkhlcpptests.bat
./windows/hl/c++/test/hl_test_table_cpp/hl_test_table_cpp.vcproj
./windows/hl/c++/test/hl_test_table_cppdll/hl_test_table_cppdll.vcproj
@ -1778,7 +1773,7 @@
./windows/hl/fortran/examples/ex_litedll/ex_litedll.vfproj
# High-Level Fortran Tests
./windows/hl/fortran/test/test_hdf5_hl_fortran.BAT
./windows/hl/fortran/test/checkhlfortrantests.bat
./windows/hl/fortran/test/hl_test_image_fortran/hl_test_image_fortran.vfproj
./windows/hl/fortran/test/hl_test_image_fortrandll/hl_test_image_fortrandll.vfproj
./windows/hl/fortran/test/hl_test_lite_fortran/hl_test_lite_fortran.vfproj
@ -1787,7 +1782,7 @@
./windows/hl/fortran/test/hl_test_table_fortrandll/hl_test_table_fortrandll.vfproj
# High-Level Library Tests
./windows/hl/test/test_hdf5_hl.BAT
./windows/hl/test/checkhltests.bat
./windows/hl/test/hl_test_ds/hl_test_ds.vcproj
./windows/hl/test/hl_test_dsdll/hl_test_dsdll.vcproj
./windows/hl/test/hl_test_image/hl_test_image.vcproj
@ -1814,6 +1809,9 @@
./windows/misc/typegen/h5match_types/h5match_types.vcproj
./windows/misc/typegen/h5tinit/h5tinit.vcproj
# Performance Tests
./windows/perform/checkperformtests.bat
# Project Files
./windows/proj/all/all.sln
./windows/proj/all/all.vcproj
@ -1841,9 +1839,8 @@
./windows/src/H5Tinit.c
# Library Test Projects
./windows/test/hdf5test.bat
./windows/test/hdf5timingtest.bat
./windows/test/testerr.bat
./windows/test/checktests.bat
./windows/test/testerror.bat
./windows/test/big/big.vcproj
./windows/test/bigdll/bigdll.vcproj
./windows/test/bittests/bittests.vcproj
@ -1872,10 +1869,10 @@
./windows/test/dtypesdll/dtypesdll.vcproj
./windows/test/enum/enum.vcproj
./windows/test/enumdll/enumdll.vcproj
./windows/test/error_api/error_api.vcproj
./windows/test/error_apidll/error_apidll.vcproj
./windows/test/error_compat/error_compat.vcproj
./windows/test/error_compatdll/error_compatdll.vcproj
./windows/test/error_test/error_test.vcproj
./windows/test/error_testdll/error_testdll.vcproj
./windows/test/err_compat/err_compat.vcproj
./windows/test/err_compatdll/err_compatdll.vcproj
./windows/test/extend/extend.vcproj
./windows/test/extenddll/extenddll.vcproj
./windows/test/external/external.vcproj
@ -1936,35 +1933,36 @@
./windows/test/vfddll/vfddll.vcproj
# Library Tools
./windows/tools/copytest.BAT
./windows/tools/difftest.BAT
./windows/tools/dumptest.bat
./windows/tools/importtest.BAT
./windows/tools/jamtest.bat
./windows/tools/lstest.BAT
./windows/tools/mask.BAT
./windows/tools/repacktest.BAT
./windows/tools/stattest.BAT
./windows/tools/testhdf5tools.BAT
./windows/tools/tooltest.bat
./windows/tools/checktools.bat
./windows/tools/h5copy/h5copy.vcproj
./windows/tools/h5copy/testh5copy.bat
./windows/tools/h5debug/h5debug.vcproj
./windows/tools/h5debugdll/h5debugdll.vcproj
./windows/tools/h5diff/h5diff.vcproj
./windows/tools/h5diff/testh5diff.bat
./windows/tools/h5diffdll/h5diffdll.vcproj
./windows/tools/h5dump/h5dump.vcproj
./windows/tools/h5dump/testh5dump.bat
./windows/tools/h5dump/testh5dumpxml.bat
./windows/tools/h5dumpdll/h5dumpdll.vcproj
./windows/tools/h5import/h5import.vcproj
./windows/tools/h5import/h5importtestutil.bat
./windows/tools/h5importdll/h5importdll.vcproj
./windows/tools/h5jam/h5jam.vcproj
./windows/tools/h5jam/testh5jam.bat
./windows/tools/h5ls/h5ls.vcproj
./windows/tools/h5ls/testh5ls.bat
./windows/tools/h5lsdll/h5lsdll.vcproj
./windows/tools/h5mkgrp/h5mkgrp.vcproj
./windows/tools/h5mkgrp/testh5mkgrp.bat
./windows/tools/h5repack/h5repack.vcproj
./windows/tools/h5repack/h5repack.bat
./windows/tools/h5repackdll/h5repackdll.vcproj
./windows/tools/h5repart/h5repart.vcproj
./windows/tools/h5repart/testh5repart.bat
./windows/tools/h5repartdll/h5repartdll.vcproj
./windows/tools/h5stat/h5stat.vcproj
./windows/tools/h5stat/testh5stat.bat
./windows/tools/h5statdll/h5statdll.vcproj
./windows/tools/h5unjam/h5unjam.vcproj
./windows/tools/talign/talign.vcproj
@ -2155,10 +2153,10 @@
./windows_vs6/test/dtypesdll/dtypesdll.dsp
./windows_vs6/test/enum/enum.dsp
./windows_vs6/test/enumdll/enumdll.dsp
./windows_vs6/test/error_api/error_api.dsp
./windows_vs6/test/error_apidll/error_apidll.dsp
./windows_vs6/test/error_compat/error_compat.dsp
./windows_vs6/test/error_compatdll/error_compatdll.dsp
./windows_vs6/test/error_test/error_test.dsp
./windows_vs6/test/error_testdll/error_testdll.dsp
./windows_vs6/test/err_compat/err_compat.dsp
./windows_vs6/test/err_compatdll/err_compatdll.dsp
./windows_vs6/test/extend/extend.dsp
./windows_vs6/test/extenddll/extenddll.dsp
./windows_vs6/test/external/external.dsp

View File

@ -840,20 +840,20 @@ To build and test HDF5 C++ examples:
When the debug build or release build is done, there should be the following
subdirectories in c:\MyHDFstuff\hdf5\c++\examples\
chunkstest
chunkstestdll
compoundtest
compoundtestdll
createtest
createtestdll
extend_dstest
extend_dstestdll
h5grouptest
h5grouptestdll
readdatatest
readdatatestdll
writedatatest
writedatatestdll
chunks
chunksdll
compound
compounddll
create
createdll
extend_ds
extend_dsll
h5group
h5groupdll
readdata
readdatadll
writedata
writedatadll
3. Invoke a command prompt window and run the batch file
InstallcppExamples.bat which resides in the top level directory

View File

@ -0,0 +1,88 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the hdf5 c++ library
rem
rem Created: Scott Wegner, 9/4/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem Clean any variables starting with "HDF5_CPPTEST_", as we use these for our
rem tests. Also clear "HDF5_CPPTEST_TESTS", as we will be addding all of our tests
rem to this variable.
rem Set at least one variable in set beforehand to avoid error message.
rem --SJW 9/5/07
set hdf5_cpptest_=foo
for /f "tokens=1 delims==" %%a in ('set hdf5_cpptest_') do set %%a=
set hdf5_cpptest_tests=
goto main
rem Function to add a test to the test suite.
rem Expects the following parameters:
rem %1 - Name of the cpptest being tested
rem %2 - Relative path of script
:add_test
set hdf5_cpptest_tests=%hdf5_cpptest_tests% %1
set hdf5_cpptest_%1_test=%CD%\%2\%1
exit /b
rem Run all of the tests that have been added to the suite. Print a header
rem at the beginning of each one. Short-circuit if a test fails.
rem Expects the following parameters:
rem %1 - release or debug version
rem %2 - "dll" or nothing
:run_tests
for %%a in (%hdf5_cpptest_tests%) do (
echo.
echo.************************************
echo. Testing %%a ^(%1 %2^)
echo.************************************
rem Only add our parameters for batch scripts.
call !hdf5_cpptest_%%a_test:.bat= %1 %2!
rem Exit early if test fails.
if !errorlevel! neq 0 exit /b
)
rem If we get here, that means all of our tests passed.
echo.All C++ library tests passed.
exit /b
rem This is where we add tests to the suite, and run them all at the end.
rem Make sure only to run dll versions of tests you build dll for
rem Also make sure to add *.bat to batch scripts, as the above functions rely
rem on it for sending parameters. --SJW 9/6/07
:main
call :add_test dsets_cpp%2 .\dsets_cpp%2\%1
call :add_test testhdf5_cpp%2 .\testhdf5_cpp%2\%1
rem Run the tests, passing in which version to run
call :run_tests %*
popd
endlocal & exit /b

View File

@ -1,15 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
testhdf5_cpp%2\%1\testhdf5_cpp%2
dsets_cpp%2\%1\dsets_cpp%2

View File

@ -0,0 +1,89 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the hdf5 fortran library
rem
rem Created: Scott Wegner, 9/6/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem Clean any variables starting with "HDF5_FORTTEST_", as we use these for our
rem tests. Also clear "HDF5_FORTTEST_TESTS", as we will be addding all of our tests
rem to this variable.
rem Set at least one variable in set beforehand to avoid error message.
rem --SJW 9/5/07
set hdf5_forttest_=foo
for /f "tokens=1 delims==" %%a in ('set hdf5_forttest_') do set %%a=
set hdf5_forttest_tests=
goto main
rem Function to add a test to the test suite.
rem Expects the following parameters:
rem %1 - Name of the forttest being tested
rem %2 - Relative path of script
:add_test
set hdf5_forttest_tests=%hdf5_forttest_tests% %1
set hdf5_forttest_%1_test=%CD%\%2\%1
exit /b
rem Run all of the tests that have been added to the suite. Print a header
rem at the beginning of each one. Short-circuit if a test fails.
rem Expects the following parameters:
rem %1 - release or debug version
rem %2 - "dll" or nothing
:run_tests
for %%a in (%hdf5_forttest_tests%) do (
echo.
echo.************************************
echo. Testing %%a ^(%1 %2^)
echo.************************************
rem Only add our parameters for batch scripts.
call !hdf5_forttest_%%a_test:.bat= %1 %2!
rem Exit early if test fails.
if !errorlevel! neq 0 exit /b
)
rem If we get here, that means all of our tests passed.
echo.All Fortran library tests passed.
exit /b
rem This is where we add tests to the suite, and run them all at the end.
rem Make sure only to run dll versions of tests you build dll for
rem Also make sure to add *.bat to batch scripts, as the above functions rely
rem on it for sending parameters. --SJW 9/6/07
:main
call :add_test testhdf5_fortran%2 .\testhdf5_fortran%2\%1
call :add_test flush1_fortran%2 .\flush1_fortran%2\%1
call :add_test flush2_fortran%2 .\flush2_fortran%2\%1
rem Run the tests, passing in which version to run
call :run_tests %*
popd
endlocal & exit /b

View File

@ -1,17 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
testhdf5_fortran%2\%1\testhdf5_fortran%2
flush1_fortran%2\%1\flush1_fortran%2
copy fflush1.h5 flush2_fortran\%1\fflush1.h5
flush2_fortran%2\%1\flush2_fortran%2

View File

@ -1,460 +1,136 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem File Name: hdf5check.bat
rem This batch file is used to test HDF5 Libraries and Tools.
rem There are 4 options for this batch file:
rem 1. hdf5check -- HDF5 tools and c library tests
rem 2. hdf5check enablecpp -- HDF5 tools and c/c++ library tests
rem 3. hdf5check enablefortran -- HDF5 tools and c/fortran library tests
rem 4. hdf5check enableall -- HDF5 tools and c/c++/fortran library tests
rem By Xuan Bai
rem Created: Aug. 12, 2004
rem Last Updated: Scott Wegner, 9/10/07
setlocal enabledelayedexpansion
pushd %~dp0
@REM File Name: hdf5check.bat
@REM This batch file is used to test HDF5 Libraries and Tools.
@REM There are 4 options for this batch file:
@REM 1. hdf5check -- HDF5 tools and c library tests
@REM 2. hdf5check enablecpp -- HDF5 tools and c/c++ library tests
@REM 3. hdf5check enablefortran -- HDF5 tools and c/fortran library tests
@REM 4. hdf5check enableall -- HDF5 tools and c/c++/fortran library tests
@REM By Xuan Bai
@REM Created: Aug. 12, 2004
@REM Last Updated: Aug. 16, 2004
rem Clean any variables starting with "HDF5_TEST_", as we use these for our
rem tests. Also clear "HDF5_TEST_TESTS", as we will be addding all of our tests
rem to this variable.
rem Set at least one variable in set beforehand to avoid error message.
rem --SJW 9/5/07
set hdf5_test_=foo
for /f "tokens=1 delims==" %%a in ('set hdf5_test_') do set %%a=
set hdf5_test_tests=
@ECHO OFF
echo install_dll
call install_dll
rem Put built DLLs in the system folder for testing
call install_dll.BAT
echo install_hldll
call install_hldll
set nerrors=0
type nul > check_results.txt
echo ***************************************************************************** >> check_results.txt
echo HDF5 C Library Tests -- Release>> check_results.txt
echo ***************************************************************************** >> check_results.txt
cd test
echo hdf5test release
call hdf5test release >> ..\check_results.txt
echo. >> ..\check_results.txt
echo ***************************************************************************** >> ..\check_results.txt
echo HDF5 Timing Test -- Release>> ..\check_results.txt
echo ***************************************************************************** >> ..\check_results.txt
echo hdf5timingtest release
call hdf5timingtest release >> ..\check_results.txt
cd ..\tools
echo. >> ..\check_results.txt
echo testhdf5tools Release
call testhdf5tools Release
more toolstest_release.txt >> ..\check_results.txt
del toolstest_release.txt
cd ..
echo ***************************************************************************** >> check_results.txt
echo HDF5 High Level C Library Tests -- Release>> check_results.txt
echo ***************************************************************************** >> check_results.txt
cd hl\test
echo test_hdf5_hl Release
call test_hdf5_hl Release >> ..\..\check_results.txt
cd ..\..
echo. >> check_results.txt
echo ***************************************************************************** >> check_results.txt
echo HDF5 C Library Tests -- Debug >> check_results.txt
echo ***************************************************************************** >> check_results.txt
cd test
echo hdf5test debug
call hdf5test debug >> ..\check_results.txt
echo. >> ..\check_results.txt
echo ***************************************************************************** >> ..\check_results.txt
echo HDF5 Timing Test -- Debug>> ..\check_results.txt
echo ***************************************************************************** >> ..\check_results.txt
echo hdf5timingtest debug
call hdf5timingtest debug >> ..\check_results.txt
cd ..\tools
echo. >> ..\check_results.txt
echo testhdf5tools Debug
call testhdf5tools Debug
more toolstest_debug.txt >> ..\check_results.txt
del toolstest_debug.txt
cd ..
echo ***************************************************************************** >> check_results.txt
echo HDF5 High Level C Library Tests -- Debug>> check_results.txt
echo ***************************************************************************** >> check_results.txt
cd hl\test
echo test_hdf5_hl Debug
call test_hdf5_hl Debug >> ..\..\check_results.txt
cd ..\..
echo. >> check_results.txt
echo ***************************************************************************** >> check_results.txt
echo HDF5 C Library Tests -- Release DLL >> check_results.txt
echo ***************************************************************************** >> check_results.txt
cd test
echo hdf5test release dll
call hdf5test release dll >> ..\check_results.txt
echo. >> ..\check_results.txt
echo ***************************************************************************** >> ..\check_results.txt
echo HDF5 Timing Test -- Release DLL>> ..\check_results.txt
echo ***************************************************************************** >> ..\check_results.txt
echo hdf5timingtest release dll
call hdf5timingtest release dll >> ..\check_results.txt
cd ..\tools
echo. >> ..\check_results.txt
echo testhdf5tools Release dll
call testhdf5tools Release dll
more toolstest_releasedll.txt >> ..\check_results.txt
del toolstest_releasedll.txt
cd ..
echo. >> check_results.txt
echo ***************************************************************************** >> check_results.txt
echo HDF5 High Level C Library Tests -- Release DLL>> check_results.txt
echo ***************************************************************************** >> check_results.txt
cd hl\test
echo test_hdf5_hl Release dll
call test_hdf5_hl Release dll>> ..\..\check_results.txt
cd ..\..
echo. >> check_results.txt
echo ***************************************************************************** >> check_results.txt
echo HDF5 C Library Tests -- Debug DLL >> check_results.txt
echo ***************************************************************************** >> check_results.txt
cd test
echo hdf5test debug dll
call hdf5test debug dll >> ..\check_results.txt
echo. >> ..\check_results.txt
echo ***************************************************************************** >> ..\check_results.txt
echo HDF5 Timing Test -- Debug DLL>> ..\check_results.txt
echo ***************************************************************************** >> ..\check_results.txt
echo hdf5timingtest debug dll
call hdf5timingtest debug dll >> ..\check_results.txt
cd ..\tools
echo. >> ..\check_results.txt
echo testhdf5tools Debug dll
call testhdf5tools Debug dll
more toolstest_debugdll.txt >> ..\check_results.txt
del toolstest_debugdll.txt
cd ..
echo ***************************************************************************** >> check_results.txt
echo HDF5 High Level C Library Tests -- Debug DLL>> check_results.txt
echo ***************************************************************************** >> check_results.txt
cd hl\test
echo test_hdf5_hl Debug dll
call test_hdf5_hl Debug dll>> ..\..\check_results.txt
cd ..\..
echo. >> check_results.txt
if "%1"=="enablecpp" (
echo. >> check_results.txt
echo install_cppdll
call install_cppdll
echo install_hlcppdll
call install_hlcppdll
cd c++\test
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 C++ Library Tests -- Release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo hdf5cpptest release
call hdf5cpptest release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level C++ Library Tests -- Release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\c++\test
echo test_hdf5_hl_cpp Release
call test_hdf5_hl_cpp Release >> ..\..\..\check_results.txt
cd ..\..\..\c++\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 C++ Library Tests -- Debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo hdf5cpptest debug
call hdf5cpptest debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level C++ Library Tests -- Debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\c++\test
echo test_hdf5_hl_cpp Debug
call test_hdf5_hl_cpp Debug >> ..\..\..\check_results.txt
cd ..\..\..\c++\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 C++ Library Tests -- Release DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo hdf5cpptest release dll
call hdf5cpptest release dll >> ..\..\check_results.txt
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level C++ Library Tests -- Release DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\c++\test
echo test_hdf5_hl_cpp Release dll
call test_hdf5_hl_cpp Release dll>> ..\..\..\check_results.txt
cd ..\..\..\c++\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 C++ Library Tests -- Debug DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo hdf5cpptest debug dll
call hdf5cpptest debug dll >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level C++ Library Tests -- Debug DLL>> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\c++\test
echo test_hdf5_hl_cpp Debug dll
call test_hdf5_hl_cpp Debug dll>> ..\..\..\check_results.txt
echo. >> ..\..\..\check_results.txt
cd ..\..\..\
rem See if we have built the HL C++ / Fortran libraries, and set
rem BUILD_*_CONDITIONAL appropriately
if /i "%1" equ "enablecpp" (
set build_cpp_conditional=true
) else if /i "%1" equ "enablefortran" (
set build_fortran_conditional=true
) else if /i "%1" equ "enableall" (
set build_cpp_conditional=true
set build_fortran_conditional=true
)
if "%1"=="enablefortran" (
echo. >> check_results.txt
echo install_f90dll
call install_f90dll
echo install_hlf90dll
call install_hlf90dll
cd fortran\test
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Fortran Library Tests -- Release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo testhdf5_fortran release
call testhdf5_fortran release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level Fortran Library Tests -- Release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\fortran\test
echo test_hdf5_hl_fortran Release
call test_hdf5_hl_fortran Release >> ..\..\..\check_results.txt
cd ..\..\..\fortran\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Fortran Library Tests -- Debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo testhdf5_fortran debug
call testhdf5_fortran debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level Fortran Library Tests -- Debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\fortran\test
echo test_hdf5_hl_fortran Debug
call test_hdf5_hl_fortran Debug >> ..\..\..\check_results.txt
cd ..\..\..\fortran\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Fortran Library Tests -- Release DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo testhdf5_fortran release dll
call testhdf5_fortran release dll >> ..\..\check_results.txt
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Hight Level Fortran Library Tests -- Release DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\fortran\test
echo test_hdf5_hl_fortran release dll
call test_hdf5_hl_fortran release dll >> ..\..\..\check_results.txt
cd ..\..\..\fortran\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Fortran Library Tests -- Debug DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo testhdf5_fortran debug dll
call testhdf5_fortran debug dll >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Hight Level Fortran Library Tests -- Debug DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\fortran\test
echo test_hdf5_hl_fortran debug dll
call test_hdf5_hl_fortran debug dll >> ..\..\..\check_results.txt
echo. >> ..\..\..\check_results.txt
cd ..\..\..\
)
goto main
if "%1"=="enableall" (
echo. >> check_results.txt
echo install_cppdll
call install_cppdll
echo install_hlcppdll
call install_hlcppdll
cd c++\test
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 C++ Library Tests -- Release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo hdf5cpptest release
call hdf5cpptest release >> ..\..\check_results.txt
rem Function to add a test to the test suite.
rem Expects the following parameters:
rem %1 - Name of the test being tested
rem %2 - Relative path of script
:add_test
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level C++ Library Tests -- Release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\c++\test
echo test_hdf5_hl_cpp Release
call test_hdf5_hl_cpp Release >> ..\..\..\check_results.txt
cd ..\..\..\c++\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 C++ Library Tests -- Debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo hdf5cpptest debug
call hdf5cpptest debug >> ..\..\check_results.txt
set hdf5_test_tests=%hdf5_test_tests% %1
set hdf5_test_%1_test=%CD%\%2\%1
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level C++ Library Tests -- Debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\c++\test
echo test_hdf5_hl_cpp Debug
call test_hdf5_hl_cpp Debug >> ..\..\..\check_results.txt
cd ..\..\..\c++\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 C++ Library Tests -- Release DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo hdf5cpptest release dll
call hdf5cpptest release dll >> ..\..\check_results.txt
echo. >> ..\..\check_results.txt
exit /b
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level C++ Library Tests -- Release DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\c++\test
echo test_hdf5_hl_cpp Release dll
call test_hdf5_hl_cpp Release dll>> ..\..\..\check_results.txt
cd ..\..\..\c++\test
echo. >> ..\..\check_results.txt
rem Run all of the tests that have been added to the suite. Print a header
rem at the beginning of each one. Short-circuit if a test fails.
rem Expects the following parameters:
rem %1 - release or debug version
rem %2 - "dll" or nothing
:run_tests
for %%a in (%hdf5_test_tests%) do (
echo.
echo.************************************
echo. Testing %%a ^(%1 %2^)
echo.************************************
rem Only add our parameters for batch scripts.
call !hdf5_test_%%a_test:.bat= %1 %2!
rem Exit early if test fails.
if !errorlevel! neq 0 exit /b
)
rem If we get here, that means all of our tests passed.
echo.All HDF5 %* tests passed.
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 C++ Library Tests -- Debug DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo hdf5cpptest debug dll
call hdf5cpptest debug dll >> ..\..\check_results.txt
exit /b
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level C++ Library Tests -- Debug DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\c++\test
echo test_hdf5_hl_cpp Debug dll
call test_hdf5_hl_cpp Debug dll>> ..\..\..\check_results.txt
echo. >> ..\..\..\check_results.txt
cd ..\..\..\
rem This is where we add tests to the suite, and run them all at the end.
rem Make sure only to run dll versions of tests you build dll for
rem Also make sure to add *.bat to batch scripts, as the above functions rely
rem on it for sending parameters. --SJW 9/6/07
:main
echo install_f90dll
call install_f90dll
echo install_hlf90dll
call install_hlf90dll
cd fortran\test
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Fortran Library Tests -- Release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo testhdf5_fortran release
call testhdf5_fortran release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level Fortran Library Tests -- Release >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\fortran\test
echo test_hdf5_hl_fortran Release
call test_hdf5_hl_fortran Release >> ..\..\..\check_results.txt
cd ..\..\..\fortran\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Fortran Library Tests -- Debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo testhdf5_fortran debug
call testhdf5_fortran debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level Fortran Library Tests -- Debug >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\fortran\test
echo test_hdf5_hl_fortran Debug
call test_hdf5_hl_fortran Debug >> ..\..\..\check_results.txt
cd ..\..\..\fortran\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Fortran Library Tests -- Release DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo testhdf5_fortran release dll
call testhdf5_fortran release dll >> ..\..\check_results.txt
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Hight Level Fortran Library Tests -- Release DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\fortran\test
echo test_hdf5_hl_fortran release dll
call test_hdf5_hl_fortran release dll >> ..\..\..\check_results.txt
cd ..\..\..\fortran\test
echo. >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 Fortran Library Tests -- Debug DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo testhdf5_fortran debug dll
call testhdf5_fortran debug dll >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
echo HDF5 High Level Fortran Library Tests -- Debug DLL >> ..\..\check_results.txt
echo ***************************************************************************** >> ..\..\check_results.txt
cd ..\..\hl\fortran\test
echo test_hdf5_hl_fortran debug dll
call test_hdf5_hl_fortran debug dll >> ..\..\..\check_results.txt
echo. >> ..\..\..\check_results.txt
cd ..\..\..\
)
type nul > number_failed.txt
type nul > tests_results.txt
find /C "FAIL" check_results.txt > number_failed.txt
find "FAIL" check_results.txt > tests_failed.txt
for /f "tokens=1,2*" %%a in (
number_failed.txt
) do ( if %%c==0 (
echo All HDF5 Tests Passed! >> tests_results.txt
) else (
echo The Following HDF5 Tests Failed: >> tests_results.txt
more /e +2 tests_failed.txt >> tests_results.txt
)
)
del number_failed.txt
del tests_failed.txt
call :add_test checktests.bat .\test
call :add_test checktools.bat .\tools
rem Only check C++/Fortran if they are set to build.
if defined build_cxx_conditional (
call :add_test checkcpptests.bat .\c++\test
)
if defined build_fortran_conditional (
call :add_test checkfortrantests.bat .\fortran\test
)
rem Assume HL libraries are built. This should be commented out if the
rem default is changed.
call :add_test checkhltests.bat .\hl\test
call :add_test checkperformtests.bat .\perform
rem Run the tests for each version of HDF5
rem We use "nodll" here because we cannot simply leave it blank. Filter
rem it out below. --SJW 9/10/07
for %%b in (nodll dll) do (
for %%a in (debug release) do (
set hdf5_config=%%a %%b
call :run_tests !hdf5_config:nodll=!
if !errorlevel! neq 0 (
set /a nerrors=!nerrors!+1
)
)
)
if %nerrors% equ 0 (
echo.HDF5 Tests passed for all configurations!
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,87 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the hdf5 hl c++ library
rem
rem Created: Scott Wegner, 9/7/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem Clean any variables starting with "HDF5_HLCPPTEST_", as we use these for our
rem tests. Also clear "HDF5_HLCPPTEST_TESTS", as we will be addding all of our tests
rem to this variable.
rem Set at least one variable in set beforehand to avoid error message.
rem --SJW 9/5/07
set hdf5_hlcpptest_=foo
for /f "tokens=1 delims==" %%a in ('set hdf5_hlcpptest_') do set %%a=
set hdf5_hlcpptest_tests=
goto main
rem Function to add a test to the test suite.
rem Expects the following parameters:
rem %1 - Name of the hlcpptest being tested
rem %2 - Relative path of script
:add_test
set hdf5_hlcpptest_tests=%hdf5_hlcpptest_tests% %1
set hdf5_hlcpptest_%1_test=%CD%\%2\%1
exit /b
rem Run all of the tests that have been added to the suite. Print a header
rem at the beginning of each one. Short-circuit if a test fails.
rem Expects the following parameters:
rem %1 - release or debug version
rem %2 - "dll" or nothing
:run_tests
for %%a in (%hdf5_hlcpptest_tests%) do (
echo.
echo.************************************
echo. Testing %%a ^(%1 %2^)
echo.************************************
rem Only add our parameters for batch scripts.
call !hdf5_hlcpptest_%%a_test:.bat= %1 %2!
rem Exit early if test fails.
if !errorlevel! neq 0 exit /b
)
rem If we get here, that means all of our tests passed.
echo.All HL C++ library tests passed.
exit /b
rem This is where we add tests to the suite, and run them all at the end.
rem Make sure only to run dll versions of tests you build dll for
rem Also make sure to add *.bat to batch scripts, as the above functions rely
rem on it for sending parameters. --SJW 9/6/07
:main
call :add_test hl_test_table_cpp%2 .\hl_test_table_cpp%2\%1
rem Run the tests, passing in which version to run
call :run_tests %*
popd
endlocal & exit /b

View File

@ -1,24 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@ECHO OFF
@REM This batch file will be used to test HDF5 High Level C++ Library.
@REM By Fang GUO
@REM Created on: 05/27/2005
echo.
echo ===============================================
echo Testing hl_test_table_cpp%2 -- %1
echo ===============================================
hl_test_table_cpp%2\%1\hl_test_table_cpp%2

View File

@ -0,0 +1,89 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the hdf5 hl fortran library
rem
rem Created: Scott Wegner, 9/6/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem Clean any variables starting with "HDF5_HLFORTTEST_", as we use these for our
rem tests. Also clear "HDF5_HLFORTTEST_TESTS", as we will be addding all of our tests
rem to this variable.
rem Set at least one variable in set beforehand to avoid error message.
rem --SJW 9/5/07
set hdf5_hlforttest_=foo
for /f "tokens=1 delims==" %%a in ('set hdf5_hlforttest_') do set %%a=
set hdf5_hlforttest_tests=
goto main
rem Function to add a test to the test suite.
rem Expects the following parameters:
rem %1 - Name of the hlforttest being tested
rem %2 - Relative path of script
:add_test
set hdf5_hlforttest_tests=%hdf5_hlforttest_tests% %1
set hdf5_hlforttest_%1_test=%CD%\%2\%1
exit /b
rem Run all of the tests that have been added to the suite. Print a header
rem at the beginning of each one. Short-circuit if a test fails.
rem Expects the following parameters:
rem %1 - release or debug version
rem %2 - "dll" or nothing
:run_tests
for %%a in (%hdf5_hlforttest_tests%) do (
echo.
echo.************************************
echo. Testing %%a ^(%1 %2^)
echo.************************************
rem Only add our parameters for batch scripts.
call !hdf5_hlforttest_%%a_test:.bat= %1 %2!
rem Exit early if test fails.
if !errorlevel! neq 0 exit /b
)
rem If we get here, that means all of our tests passed.
echo.All HL Fortran library tests passed.
exit /b
rem This is where we add tests to the suite, and run them all at the end.
rem Make sure only to run dll versions of tests you build dll for
rem Also make sure to add *.bat to batch scripts, as the above functions rely
rem on it for sending parameters. --SJW 9/6/07
:main
call :add_test hl_test_lite_fortran%2 .\hl_test_lite_fortran%2\%1
call :add_test hl_test_image_fortran%2 .\hl_test_image_fortran%2\%1
call :add_test hl_test_table_fortran%2 .\hl_test_table_fortran%2\%1
rem Run the tests, passing in which version to run
call :run_tests %*
popd
endlocal & exit /b

View File

@ -1,36 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@ECHO OFF
REM This batch file will be used to test HDF5 High Level Fortran Library.
REM By Xuan Bai
REM Last Modified on: 07/15/2005
echo.
echo ===============================================
echo Testing hl_test_lite_fortran%2 -- %1
echo ===============================================
hl_test_lite_fortran%2\%1\hl_test_lite_fortran%2
echo.
echo ===============================================
echo Testing hl_test_image_fortran%2 -- %1
echo ===============================================
hl_test_image_fortran%2\%1\hl_test_image_fortran%2
echo.
echo ===============================================
echo Testing hl_test_table_fortran%2 -- %1
echo ===============================================
hl_test_table_fortran%2\%1\hl_test_table_fortran%2

View File

@ -0,0 +1,139 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the hdf5 HL library
rem
rem Created: Scott Wegner, 9/10/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem Clean any variables starting with "HDF5_HLTEST_", as we use these for our
rem tests. Also clear "HDF5_HLTEST_TESTS", as we will be addding all of our tests
rem to this variable.
rem Set at least one variable in set beforehand to avoid error message.
rem --SJW 9/5/07
set hdf5_hltest_=foo
for /f "tokens=1 delims==" %%a in ('set hdf5_hltest_') do set %%a=
set hdf5_hltest_tests=
rem See if we have built the HL C++ / Fortran libraries, and set
rem BUILD_*_CONDITIONAL appropriately
call :check_built fortran %*
call :check_built cxx %*
goto main
rem Function to add a test to the test suite.
rem Expects the following parameters:
rem %1 - Name of the hltest being tested
rem %2 - Relative path of script
:add_test
set hdf5_hltest_tests=%hdf5_hltest_tests% %1
set hdf5_hltest_%1_test=%CD%\%2\%1
exit /b
rem Run all of the tests that have been added to the suite. Print a header
rem at the beginning of each one. Short-circuit if a test fails.
rem Expects the following parameters:
rem %1 - release or debug version
rem %2 - "dll" or nothing
:run_tests
for %%a in (%hdf5_hltest_tests%) do (
echo.
echo.************************************
echo. Testing %%a ^(%1 %2^)
echo.************************************
rem Only add our parameters for batch scripts.
call !hdf5_hltest_%%a_test:.bat= %1 %2!
rem Exit early if test fails.
if !errorlevel! neq 0 exit /b
)
rem If we get here, that means all of our tests passed.
echo.All HL library tests passed.
exit /b
rem Check to see if one of our output files exist for the given parameter. If
rem it does, we can assume that that set of files were set to build, and we can
rem test them. In Linux, the corresponding variable is set by the Makefile.
rem Expects the following parameters:
rem %1 - fortran or cxx
rem %2 - debug or release
rem %3 - dll or nothing
:check_built
rem diffuse early if the variable is already defined
if defined build_%1_conditional exit /b
if /i "%1" equ "cxx" (
if "%2"=="release" (
set hdf5_hl_cpp=hdf5_hl_cpp%3.lib
) else (
set hdf5_hl_cpp=hdf5_hl_cppd%3.lib
)
if exist %CD%\..\..\proj\hdf5_hl_cpp%3\%2\!hdf5_hl_cpp! (
set build_cxx_conditional=true
)
) else if /i "%1" equ "fortran" (
if "%2"=="release" (
set hdf5_hl_fortran=hdf5_hl_fortran%3.lib
) else (
set hdf5_hl_fortran=hdf5_hl_fortrand%3.lib
)
if exist %CD%\..\..\proj\hdf5_hl_fortran%3\%2\!hdf5_hl_fortran! (
set build_fortran_conditional=true
)
)
exit /b
rem This is where we add tests to the suite, and run them all at the end.
rem Make sure only to run dll versions of tests you build dll for
rem Also make sure to add *.bat to batch scripts, as the above functions rely
rem on it for sending parameters. --SJW 9/6/07
:main
call :add_test hl_test_lite%2 .\hl_test_lite%2\%1
call :add_test hl_test_image%2 .\hl_test_image%2\%1
call :add_test hl_test_table%2 .\hl_test_table%2\%1
call :add_test hl_test_ds%2 .\hl_test_ds%2\%1
call :add_test hl_test_packet%2 .\hl_test_packet%2\%1
rem Only check HL C++/Fortran if they are set to build.
if defined build_cxx_conditional (
call :add_test checkhlcpptests.bat ..\c++\test
)
if defined build_fortran_conditional (
call :add_test checkhlfortrantests.bat ..\fortran\test
)
rem Run the tests, passing in which version to run
call :run_tests %*
popd
endlocal & exit /b

View File

@ -1,56 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@ECHO OFF
@REM This batch file will be used to test HDF5 High Level Library.
@REM By Xuan Bai
@REM Last Modified on: 07/14/2005 by Fang GUO
echo.
echo ===============================================
echo Testing hl_test_ds%2 -- %1
echo ===============================================
hl_test_ds%2\%1\hl_test_ds%2
echo.
echo ===============================================
echo Testing hl_test_lite%2 -- %1
echo ===============================================
hl_test_lite%2\%1\hl_test_lite%2
echo.
echo ===============================================
echo Testing hl_test_image%2 -- %1
echo ===============================================
hl_test_image%2\%1\hl_test_image%2
echo.
echo ===============================================
echo Testing hl_test_table%2 -- %1
echo ===============================================
hl_test_table%2\%1\hl_test_table%2
echo.
echo ===============================================
echo Testing hl_test_packet%2 -- %1
echo ===============================================
hl_test_packet%2\%1\hl_test_packet%2
echo.
echo ===============================================
echo Testing h52gif and gif2h5 -- %1 %2
echo ===============================================
cd ..\tools\gif2h5
call h52giftest %1 %2
cd ..\..\test

View File

@ -1,67 +1,89 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem HDF Utilities Test script
rem
rem Created: Scott Wegner, 4/5/07
rem Modified: Scott Wegner, 8/22/07
rem
::This batch file is for h52gif tests.
::Usage
:: h52giftest release -- release static version
:: h52giftest debug -- debug static version
:: h52giftest release dll -- release dll version
:: h52giftest debug dll -- debug dll version
:: Written By: Scott Wegner
:: Date : April 5, 2005
setlocal enabledelayedexpansion
pushd %~dp0
rem h52gif name
set h52gif=h52gif%2
rem The path to the h52gif binary
set h52gif_bin=%CD%\..\gifconv%2\%h52gif%\%1\%h52gif%
rem gif2h5 name
set gif2h5=gif2h5%2
rem The path to the gif2h5 binary
set gif2h5_bin=%CD%\..\gifconv%2\%gif2h5%\%1\%gif2h5%
set testfile1=%CD%\..\testfiles\h52giftst.h5
set testfile2=%CD%\..\testfiles\image1.gif
rem initialze errors variable
set errors=0
goto main
:testing
set test_msg=Testing
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=%test_msg%
echo.%test_msg:~0,69% %1
exit /b
REM Set up our environment
mkdir temptest
:tooltest1
%h52gif_bin% %*
if %errorlevel% neq 0 (
call :testing *FAILED* %h52gif_bin% %*
set /a errors=!errors!+1
) else (
call :testing PASSED %h52gif_bin% %*
)
exit /b
set TESTFILE1=..\testfiles\h52giftst.h5
set TESTFILE2=..\testfiles\image1.gif
set H52GIF=..\gifconv%2\h52gif%2\%1\h52gif%2.exe
set GIF2H5=..\gifconv%2\gif2h5%2\%1\gif2h5%2.exe
REM The tests
REM TOOLTEST1 $TESTFILE1 image1.gif -i image
%H52GIF% %TESTFILE1% image1.gif -i image 2>%1 > temptest\gifconv_1.results
if %ERRORLEVEL% NEQ 0 (
echo Testing h52gif h52giftst.h5 image1.gif -i image FAILED
type temptest\gifconv_1.results
) else (
echo Testing h52gif h52giftst.h5 image1.gif -i image PASSED
)
del temptest\gifconv_1.results
REM TOOLTEST2 $TESTFILE2 image1.h5
%GIF2H5% %TESTFILE2% image1.h5 2>%1 > temptest\gifconv_2.results
if %ERRORLEVEL% NEQ 0 (
echo Testing gif2h5 image1.gif image1.h5 FAILED
type temptest\gifconv_2.results
) else (
echo Testing gif2h5 image1.gif image1.h5 PASSED
)
del temptest\gifconv_2.results
REM Cleanup
set TESTFILE1=
set TESTFILE2=
set H52GIF=
set GIF2H5=
rmdir /s/q temptest
:tooltest2
%gif2h5_bin% %*
if %errorlevel% neq 0 (
call :testing *FAILED* %gif2h5_bin% %*
set /a errors=!errors!+1
) else (
call :testing PASSED %gif2h5_bin% %*
)
exit /b
:main
call :tooltest1 %testfile1% image1.gif -i image
call :tooltest2 %testfile2% image1.h5
popd
endlocal & exit /b %errors%

View File

@ -1,24 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@REM File name: install_cpp.bat
@REM This batch file is used to copy HDF5 c++ library DLLs into system folder.
@REM By Xuan Bai
@REM Created: Aug. 12, 2004
@REM Last Updated: Aug. 16, 2004
@ ECHO OFF
copy proj\hdf5_cppdll\debug\hdf5_cppddll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5_cppdll\release\hdf5_cppdll.dll %SystemRoot%\system >temp.txt
del temp.txt

View File

@ -1,34 +1,88 @@
@rem Copyright by The HDF Group.
@rem Copyright by the Board of Trustees of the University of Illinois.
@rem All rights reserved.
@rem
@rem This file is part of HDF5. The full HDF5 copyright notice, including
@rem terms governing use, modification, and redistribution, is contained in
@rem the files COPYING and Copyright.html. COPYING can be found at the root
@rem of the source code distribution tree; Copyright.html can be found at the
@rem root level of an installed copy of the electronic HDF5 document set and
@rem is linked from the top-level documents page. It can also be found at
@rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@rem access to either file, you may request a copy from help@hdfgroup.org.
@echo OFF
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from helphdfgroup.org.
rem
rem
rem File name: install_dll.bat
rem This batch file is used to copy ALL HDF5 DLLs into system folder.
rem By Xuan Bai
rem Created: Aug. 12, 2004
rem Last Scott Wegner, 9/10/07
setlocal enabledelayedexpansion
pushd %~dp0
@rem File name: install_dll.bat
@rem This batch file is used to copy HDF5 c library DLLs into system folder.
@rem By Xuan Bai
@rem Created: Aug. 12, 2004
@rem Last Updated: Aug. 16, 2004
set install_dir=%systemroot%\system
@ ECHO OFF
copy proj\hdf5dll\debug\hdf5ddll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5dll\release\hdf5dll.dll %SystemRoot%\system >temp.txt
goto :main
rem This function actally copies the DLL over, and prints a status message
rem Expected parameters:
rem %1 - name of DLL to copy
:copy_dll
if exist %1 (
echo.Installing %~nx1
copy /y %1 %install_dir% > nul
)
exit /b
rem Add the DLLS to be copied here.
:main
rem HDF5 Library
call :copy_dll proj\hdf5dll\debug\hdf5ddll.dll
call :copy_dll proj\hdf5dll\release\hdf5dll.dll
rem We need this conditional because vs6 uses libtestD rather than libtestdll,
rem Remove later when we fix the VS6 project name.
if exist test\libtestdll\debug\libtestddll.dll (
call :copy_dll test\libtestdll\debug\libtestddll.dll
call :copy_dll test\libtestdll\release\libtestdll.dll
) else (
call :copy_dll test\libtestD\debug\libtestDd.dll
call :copy_dll test\libtestD\release\libtestD.dll
)
rem C++
call :copy_dll proj\hdf5_cppdll\debug\hdf5_cppddll.dll
call :copy_dll proj\hdf5_cppdll\release\hdf5_cppdll.dll
rem Fortran
call :copy_dll proj\hdf5_f90cstubdll\debug\hdf5_f90cstubddll.dll
call :copy_dll proj\hdf5_f90cstubdll\release\hdf5_f90cstubdll.dll
call :copy_dll proj\hdf5_fortrandll\debug\hdf5_fortranddll.dll
call :copy_dll proj\hdf5_fortrandll\release\hdf5_fortrandll.dll
call :copy_dll fortran\test\libtest_cstubdll\debug\libtest_cstubddll.dll
call :copy_dll fortran\test\libtest_cstubdll\release\libtest_cstubdll.dll
call :copy_dll fortran\test\libtest_fortrandll\debug\libtest_fortranddll.dll
call :copy_dll fortran\test\libtest_fortrandll\release\libtest_fortrandll.dll
rem HL
call :copy_dll proj\hdf5_hldll\Debug\hdf5_hlddll.dll
call :copy_dll proj\hdf5_hldll\Release\hdf5_hldll.dll
rem HL C++
call :copy_dll proj\hdf5_hl_cppdll\Release\hdf5_hl_cppdll.dll
call :copy_dll proj\hdf5_hl_cppdll\Debug\hdf5_hl_cppddll.dll
rem HL Fortran
call :copy_dll proj\hdf5_hl_fortrandll\Debug\hdf5_hl_fortranddll.dll
call :copy_dll proj\hdf5_hl_f90cstubdll\Debug\hdf5_hl_f90cstubddll.dll
call :copy_dll proj\hdf5_hl_fortrandll\Release\hdf5_hl_fortrandll.dll
call :copy_dll proj\hdf5_hl_f90cstubdll\Release\hdf5_hl_f90cstubdll.dll
popd
endlocal & exit /b
rem We need this conditional because vs6 uses libtestD rather than libtestdll,
rem Remove later when we fix the VS6 project name.
if exist copy test\libtestdll\debug\libtestddll.dll (
copy test\libtestdll\debug\libtestddll.dll %SystemRoot%\system >temp.txt
copy test\libtestdll\release\libtestdll.dll %SystemRoot%\system >temp.txt
) else (
copy test\libtestD\debug\libtestDd.dll %SystemRoot%\system >temp.txt
copy test\libtestD\release\libtestD.dll %SystemRoot%\system >temp.txt
)
del temp.txt

View File

@ -1,30 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@REM File name: install_f90dll.bat
@REM This batch file is used to copy HDF5 Fortran library DLLs into system folder.
@REM By Xuan Bai
@REM Created: Aug. 12, 2004
@REM Last Updated: Aug. 16, 2004
@ ECHO OFF
copy proj\hdf5_f90cstubdll\debug\hdf5_f90cstubddll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5_f90cstubdll\release\hdf5_f90cstubdll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5_fortrandll\debug\hdf5_fortranddll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5_fortrandll\release\hdf5_fortrandll.dll %SystemRoot%\system >temp.txt
copy fortran\test\libtest_cstubdll\debug\libtest_cstubddll.dll %SystemRoot%\system >temp.txt
copy fortran\test\libtest_cstubdll\release\libtest_cstubdll.dll %SystemRoot%\system >temp.txt
copy fortran\test\libtest_fortrandll\debug\libtest_fortranddll.dll %SystemRoot%\system >temp.txt
copy fortran\test\libtest_fortrandll\release\libtest_fortrandll.dll %SystemRoot%\system >temp.txt
del temp.txt

View File

@ -1,23 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@REM File name: install_hlcppdll.bat
@REM This batch file is used to copy HDF5 c++ library high level DLLs into system folder.
@REM By Fang GUO
@REM Created: July 14, 2005
@REM Last Updated:
@ ECHO OFF
copy proj\hdf5_hl_cppdll\Release\hdf5_hl_cppdll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5_hl_cppdll\Debug\hdf5_hl_cppddll.dll %SystemRoot%\system >temp.txt
del temp.txt

View File

@ -1,24 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@REM File name: install_hldll.bat
@REM This batch file is used to copy HDF5 c library high level DLLs into system folder.
@REM By Fang GUO
@REM Created: July 14, 2005
@REM Last Updated:
@ ECHO OFF
copy proj\hdf5_hldll\Debug\hdf5_hlddll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5_hldll\Release\hdf5_hldll.dll %SystemRoot%\system >temp.txt
del temp.txt

View File

@ -1,27 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@REM File name: install_hlf90dll.bat
@REM This batch file is used to copy HDF5 fortran library high level DLLs into system folder.
@REM By Fang GUO
@REM Created: July 15, 2005
@REM Last Updated:
@ECHO OFF
copy proj\hdf5_hl_fortrandll\Debug\hdf5_hl_fortranddll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5_hl_f90cstubdll\Debug\hdf5_hl_f90cstubddll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5_hl_fortrandll\Release\hdf5_hl_fortrandll.dll %SystemRoot%\system >temp.txt
copy proj\hdf5_hl_f90cstubdll\Release\hdf5_hl_f90cstubdll.dll %SystemRoot%\system >temp.txt
del temp.txt

View File

@ -0,0 +1,89 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the hdf5 performance tools
rem
rem Created: Scott Wegner, 9/10/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem Clean any variables starting with "HDF5_PERFTEST_", as we use these for our
rem tests. Also clear "HDF5_PERFTEST_TESTS", as we will be addding all of our tests
rem to this variable.
rem Set at least one variable in set beforehand to avoid error message.
rem --SJW 9/5/07
set hdf5_perftest_=foo
for /f "tokens=1 delims==" %%a in ('set hdf5_perftest_') do set %%a=
set hdf5_perftest_tests=
goto main
rem Function to add a test to the test suite.
rem Expects the following parameters:
rem %1 - Name of the perftest being tested
rem %2 - Relative path of script
:add_test
set hdf5_perftest_tests=%hdf5_perftest_tests% %1
set hdf5_perftest_%1_test=%CD%\%2\%1
exit /b
rem Run all of the tests that have been added to the suite. Print a header
rem at the beginning of each one. Short-circuit if a test fails.
rem Expects the following parameters:
rem %1 - release or debug version
rem %2 - "dll" or nothing
:run_tests
for %%a in (%hdf5_perftest_tests%) do (
echo.
echo.************************************
echo. Testing %%a ^(%1 %2^)
echo.************************************
rem Only add our parameters for batch scripts.
call !hdf5_perftest_%%a_test:.bat= %1 %2!
rem Exit early if test fails.
if !errorlevel! neq 0 exit /b
)
rem If we get here, that means all of our tests passed.
echo.All performance tests passed.
exit /b
rem This is where we add tests to the suite, and run them all at the end.
rem Make sure only to run dll versions of tests you build dll for
rem Also make sure to add *.bat to batch scripts, as the above functions rely
rem on it for sending parameters. --SJW 9/6/07
:main
call :add_test iopipe%2 ..\test\iopipe%2\%1
call :add_test chunk%2 ..\test\chunk%2\%1
call :add_test overhead%2 ..\test\overhead%2\%1
rem Run the tests, passing in which version to run
call :run_tests %*
popd
endlocal & exit /b

View File

@ -333,25 +333,25 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "enumdll", "..\..\test\enumd
{C9535AD9-C61D-4691-A5CE-52EF359892AF} = {C9535AD9-C61D-4691-A5CE-52EF359892AF}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_api", "..\..\test\error_api\error_api.vcproj", "{7ABA5DD5-77E7-42D3-9C29-84A13B0CAA91}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_test", "..\..\test\error_test\error_test.vcproj", "{7ABA5DD5-77E7-42D3-9C29-84A13B0CAA91}"
ProjectSection(ProjectDependencies) = postProject
{26346A09-C500-49E7-963A-D22A8E09AAB7} = {26346A09-C500-49E7-963A-D22A8E09AAB7}
{A80D439C-37B4-4619-A122-1C69F567733B} = {A80D439C-37B4-4619-A122-1C69F567733B}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_apidll", "..\..\test\error_apidll\error_apidll.vcproj", "{55894CDC-C220-40FE-B403-D74EAC6EBACF}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_testdll", "..\..\test\error_testdll\error_testdll.vcproj", "{55894CDC-C220-40FE-B403-D74EAC6EBACF}"
ProjectSection(ProjectDependencies) = postProject
{54BDA057-C716-4807-A35E-73185DCB236D} = {54BDA057-C716-4807-A35E-73185DCB236D}
{C9535AD9-C61D-4691-A5CE-52EF359892AF} = {C9535AD9-C61D-4691-A5CE-52EF359892AF}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_compat", "..\..\test\error_compat\error_compat.vcproj", "{265C41B2-30D7-4FF8-A08C-B997363DA763}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "err_compat", "..\..\test\err_compat\err_compat.vcproj", "{265C41B2-30D7-4FF8-A08C-B997363DA763}"
ProjectSection(ProjectDependencies) = postProject
{26346A09-C500-49E7-963A-D22A8E09AAB7} = {26346A09-C500-49E7-963A-D22A8E09AAB7}
{A80D439C-37B4-4619-A122-1C69F567733B} = {A80D439C-37B4-4619-A122-1C69F567733B}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_compatdll", "..\..\test\error_compatdll\error_compatdll.vcproj", "{309CE6F8-4658-44CB-8E99-0B86DCA77EFC}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "err_compatdll", "..\..\test\err_compatdll\err_compatdll.vcproj", "{309CE6F8-4658-44CB-8E99-0B86DCA77EFC}"
ProjectSection(ProjectDependencies) = postProject
{54BDA057-C716-4807-A35E-73185DCB236D} = {54BDA057-C716-4807-A35E-73185DCB236D}
{C9535AD9-C61D-4691-A5CE-52EF359892AF} = {C9535AD9-C61D-4691-A5CE-52EF359892AF}

View File

@ -357,25 +357,25 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "enumdll", "..\..\test\enumd
{C9535AD9-C61D-4691-A5CE-52EF359892AF} = {C9535AD9-C61D-4691-A5CE-52EF359892AF}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_api", "..\..\test\error_api\error_api.vcproj", "{7ABA5DD5-77E7-42D3-9C29-84A13B0CAA91}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_test", "..\..\test\error_test\error_test.vcproj", "{7ABA5DD5-77E7-42D3-9C29-84A13B0CAA91}"
ProjectSection(ProjectDependencies) = postProject
{26346A09-C500-49E7-963A-D22A8E09AAB7} = {26346A09-C500-49E7-963A-D22A8E09AAB7}
{A80D439C-37B4-4619-A122-1C69F567733B} = {A80D439C-37B4-4619-A122-1C69F567733B}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_apidll", "..\..\test\error_apidll\error_apidll.vcproj", "{55894CDC-C220-40FE-B403-D74EAC6EBACF}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_testdll", "..\..\test\error_testdll\error_testdll.vcproj", "{55894CDC-C220-40FE-B403-D74EAC6EBACF}"
ProjectSection(ProjectDependencies) = postProject
{54BDA057-C716-4807-A35E-73185DCB236D} = {54BDA057-C716-4807-A35E-73185DCB236D}
{C9535AD9-C61D-4691-A5CE-52EF359892AF} = {C9535AD9-C61D-4691-A5CE-52EF359892AF}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_compat", "..\..\test\error_compat\error_compat.vcproj", "{265C41B2-30D7-4FF8-A08C-B997363DA763}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "err_compat", "..\..\test\err_compat\err_compat.vcproj", "{265C41B2-30D7-4FF8-A08C-B997363DA763}"
ProjectSection(ProjectDependencies) = postProject
{26346A09-C500-49E7-963A-D22A8E09AAB7} = {26346A09-C500-49E7-963A-D22A8E09AAB7}
{A80D439C-37B4-4619-A122-1C69F567733B} = {A80D439C-37B4-4619-A122-1C69F567733B}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "error_compatdll", "..\..\test\error_compatdll\error_compatdll.vcproj", "{309CE6F8-4658-44CB-8E99-0B86DCA77EFC}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "err_compatdll", "..\..\test\err_compatdll\err_compatdll.vcproj", "{309CE6F8-4658-44CB-8E99-0B86DCA77EFC}"
ProjectSection(ProjectDependencies) = postProject
{54BDA057-C716-4807-A35E-73185DCB236D} = {54BDA057-C716-4807-A35E-73185DCB236D}
{C9535AD9-C61D-4691-A5CE-52EF359892AF} = {C9535AD9-C61D-4691-A5CE-52EF359892AF}

129
windows/test/checktests.bat Normal file
View File

@ -0,0 +1,129 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the hdf5 library
rem
rem Created: Scott Wegner, 9/4/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem Clean any variables starting with "HDF5_LIBTEST_", as we use these for our
rem tests. Also clear "HDF5_LIBTEST_TESTS", as we will be addding all of our tests
rem to this variable.
rem Set at least one variable in set beforehand to avoid error message.
rem --SJW 9/5/07
set hdf5_libtest_=foo
for /f "tokens=1 delims==" %%a in ('set hdf5_libtest_') do set %%a=
set hdf5_libtest_tests=
goto main
rem Function to add a test to the test suite.
rem Expects the following parameters:
rem %1 - Name of the libtest being tested
rem %2 - Relative path of script
:add_test
set hdf5_libtest_tests=%hdf5_libtest_tests% %1
set hdf5_libtest_%1_test=%CD%\%2\%1
exit /b
rem Run all of the tests that have been added to the suite. Print a header
rem at the beginning of each one. Short-circuit if a test fails.
rem Expects the following parameters:
rem %1 - release or debug version
rem %2 - "dll" or nothing
:run_tests
for %%a in (%hdf5_libtest_tests%) do (
echo.
echo.************************************
echo. Testing %%a ^(%1 %2^)
echo.************************************
rem Only add our parameters for batch scripts.
call !hdf5_libtest_%%a_test:.bat= %1 %2!
rem Exit early if test fails.
if !errorlevel! neq 0 exit /b
)
rem If we get here, that means all of our tests passed.
echo.All library tests passed.
exit /b
rem This is where we add tests to the suite, and run them all at the end.
rem Make sure only to run dll versions of tests you build dll for
rem Also make sure to add *.bat to batch scripts, as the above functions rely
rem on it for sending parameters. --SJW 9/6/07
:main
call :add_test testerror.bat .
call :add_test testhdf5%2 .\testhdf5%2\%1
call :add_test lheap%2 .\lheap%2\%1
call :add_test ohdr%2 .\ohdr%2\%1
call :add_test stab%2 .\stab%2\%1
call :add_test gheap%2 .\gheap%2\%1
call :add_test cache%2 .\cache%2\%1
call :add_test cache_api%2 .\cache_api%2\%1
call :add_test pool%2 .\pool%2\%1
call :add_test hyperslab%2 .\hyperslab%2\%1
call :add_test istore%2 .\istore%2\%1
call :add_test bittests%2 .\bittests%2\%1
call :add_test dt_arith%2 .\dt_arith%2\%1
call :add_test dtypes%2 .\dtypes%2\%1
call :add_test dsets%2 .\dsets%2\%1
call :add_test cmpd_dset%2 .\cmpd_dset%2\%1
call :add_test extend%2 .\extend%2\%1
call :add_test external%2 .\external%2\%1
call :add_test objcopy%2 .\objcopy%2\%1
call :add_test links%2 .\links%2\%1
call :add_test unlink%2 .\unlink%2\%1
call :add_test big%2 .\big%2\%1
call :add_test mtime%2 .\mtime%2\%1
call :add_test fillval%2 .\fillval%2\%1
call :add_test mount%2 .\mount%2\%1
call :add_test flush1%2 .\flush1%2\%1
call :add_test flush2%2 .\flush2%2\%1
call :add_test enum%2 .\enum%2\%1
call :add_test set_extent%2 .\set_extent%2\%1
rem Test commented because threadsafe is not built by default on Windows.
rem --SJW 9/5/07
rem call :add_test ttsafe%2 .\ttsafe%2\%1
rem Test commented because stream driver is not supported on Windows.
rem --SJW 9/5/07
rem call :add_test stream_test%2 .\stream_test%2\%1
call :add_test getname%2 .\getname%2\%1
call :add_test vfd%2 .\vfd%2\%1
call :add_test ntypes%2 .\ntypes%2\%1
call :add_test dangle%2 .\dangle%2\%1
call :add_test reserved%2 .\reserved%2\%1
call :add_test cross_read%2 .\cross_read%2\%1
call :add_test btree2%2 .\btree2%2\%1
call :add_test fheap%2 .\fheap%2\%1
rem Run the tests, passing in which version to run
call :run_tests %*
popd
endlocal & exit /b

View File

@ -1,457 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
Name="error_api"
ProjectGUID="{7ABA5DD5-77E7-42D3-9C29-84A13B0CAA91}"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Release|Win32"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\../../../test/error_api/Release/error_api.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
StringPooling="true"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_api/Release/error_api.pch"
AssemblerListingLocation=".\../../../test/error_api/Release/"
ObjectFile=".\../../../test/error_api/Release/"
ProgramDataBaseFileName=".\../../../test/error_api/Release/"
WarningLevel="3"
SuppressStartupBanner="true"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP)"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="libcd.lib"
ProgramDatabaseFile=".\../../../test/error_api/Release/error_api.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|x64"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
TypeLibraryName=".\../../../test/error_api/Release/error_api.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
StringPooling="true"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_api/Release/error_api.pch"
AssemblerListingLocation=".\../../../test/error_api/Release/"
ObjectFile=".\../../../test/error_api/Release/"
ProgramDataBaseFileName=".\../../../test/error_api/Release/"
WarningLevel="3"
SuppressStartupBanner="true"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP)"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="libcd.lib"
ProgramDatabaseFile=".\../../../test/error_api/Release/error_api.pdb"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Debug|Win32"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\../../../test/error_api/Debug/error_api.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_api/Debug/error_api.pch"
AssemblerListingLocation=".\../../../test/error_api/Debug/"
ObjectFile=".\../../../test/error_api/Debug/"
ProgramDataBaseFileName=".\../../../test/error_api/Debug/"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="4"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP)"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="libc.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile=".\../../../test/error_api/Debug/error_api.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Debug|x64"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
TypeLibraryName=".\../../../test/error_api/Debug/error_api.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_api/Debug/error_api.pch"
AssemblerListingLocation=".\../../../test/error_api/Debug/"
ObjectFile=".\../../../test/error_api/Debug/"
ProgramDataBaseFileName=".\../../../test/error_api/Debug/"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP)"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="libc.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile=".\../../../test/error_api/Debug/error_api.pdb"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
>
<File
RelativePath="..\..\..\test\error_test.c"
>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl"
>
</Filter>
<Filter
Name="Resource Files"
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -1,453 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
Name="error_apidll"
ProjectGUID="{55894CDC-C220-40FE-B403-D74EAC6EBACF}"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\../../../test/error_apidll/Debug/error_apidll.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_HDF5USEDLL_;_HDF5TESTUSEDLL_"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_apidll/Debug/error_apidll.pch"
AssemblerListingLocation=".\../../../test/error_apidll/Debug/"
ObjectFile=".\../../../test/error_apidll/Debug/"
ProgramDataBaseFileName=".\../../../test/error_apidll/Debug/"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="4"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
GenerateDebugInformation="true"
ProgramDatabaseFile=".\../../../test/error_apidll/Debug/error_apidll.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Debug|x64"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
TypeLibraryName=".\../../../test/error_apidll/Debug/error_apidll.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_HDF5USEDLL_;_HDF5TESTUSEDLL_"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_apidll/Debug/error_apidll.pch"
AssemblerListingLocation=".\../../../test/error_apidll/Debug/"
ObjectFile=".\../../../test/error_apidll/Debug/"
ProgramDataBaseFileName=".\../../../test/error_apidll/Debug/"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
GenerateDebugInformation="true"
ProgramDatabaseFile=".\../../../test/error_apidll/Debug/error_apidll.pdb"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\../../../test/error_apidll/Release/error_apidll.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;_HDF5USEDLL_;_HDF5TESTUSEDLL_"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_apidll/Release/error_apidll.pch"
AssemblerListingLocation=".\../../../test/error_apidll/Release/"
ObjectFile=".\../../../test/error_apidll/Release/"
ProgramDataBaseFileName=".\../../../test/error_apidll/Release/"
WarningLevel="3"
SuppressStartupBanner="true"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
ProgramDatabaseFile=".\../../../test/error_apidll/Release/error_apidll.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|x64"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
TypeLibraryName=".\../../../test/error_apidll/Release/error_apidll.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;_HDF5USEDLL_;_HDF5TESTUSEDLL_"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_apidll/Release/error_apidll.pch"
AssemblerListingLocation=".\../../../test/error_apidll/Release/"
ObjectFile=".\../../../test/error_apidll/Release/"
ProgramDataBaseFileName=".\../../../test/error_apidll/Release/"
WarningLevel="3"
SuppressStartupBanner="true"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
ProgramDatabaseFile=".\../../../test/error_apidll/Release/error_apidll.pdb"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
>
<File
RelativePath="..\..\..\test\error_test.c"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl"
>
</Filter>
<Filter
Name="Resource Files"
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -1,457 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
Name="error_compat"
ProjectGUID="{265C41B2-30D7-4FF8-A08C-B997363DA763}"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\../../../test/error_compat/Debug/error_compat.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_compat/Debug/error_compat.pch"
AssemblerListingLocation=".\../../../test/error_compat/Debug/"
ObjectFile=".\../../../test/error_compat/Debug/"
ProgramDataBaseFileName=".\../../../test/error_compat/Debug/"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="4"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP)"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="libc.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile=".\../../../test/error_compat/Debug/error_compat.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Debug|x64"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
TypeLibraryName=".\../../../test/error_compat/Debug/error_compat.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_compat/Debug/error_compat.pch"
AssemblerListingLocation=".\../../../test/error_compat/Debug/"
ObjectFile=".\../../../test/error_compat/Debug/"
ProgramDataBaseFileName=".\../../../test/error_compat/Debug/"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP)"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="libc.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile=".\../../../test/error_compat/Debug/error_compat.pdb"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\../../../test/error_compat/Release/error_compat.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
StringPooling="true"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_compat/Release/error_compat.pch"
AssemblerListingLocation=".\../../../test/error_compat/Release/"
ObjectFile=".\../../../test/error_compat/Release/"
ProgramDataBaseFileName=".\../../../test/error_compat/Release/"
WarningLevel="3"
SuppressStartupBanner="true"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP)"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="libcd.lib"
ProgramDatabaseFile=".\../../../test/error_compat/Release/error_compat.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|x64"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
TypeLibraryName=".\../../../test/error_compat/Release/error_compat.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
StringPooling="true"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_compat/Release/error_compat.pch"
AssemblerListingLocation=".\../../../test/error_compat/Release/"
ObjectFile=".\../../../test/error_compat/Release/"
ProgramDataBaseFileName=".\../../../test/error_compat/Release/"
WarningLevel="3"
SuppressStartupBanner="true"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP)"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="libcd.lib"
ProgramDatabaseFile=".\../../../test/error_compat/Release/error_compat.pdb"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
>
<File
RelativePath="..\..\..\test\err_compat.c"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl"
>
</Filter>
<Filter
Name="Resource Files"
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -1,453 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
Name="error_compatdll"
ProjectGUID="{309CE6F8-4658-44CB-8E99-0B86DCA77EFC}"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\../../../test/error_compatdll/Debug/error_compatdll.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_HDF5USEDLL_;_HDF5TESTUSEDLL_"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_compatdll/Debug/error_compatdll.pch"
AssemblerListingLocation=".\../../../test/error_compatdll/Debug/"
ObjectFile=".\../../../test/error_compatdll/Debug/"
ProgramDataBaseFileName=".\../../../test/error_compatdll/Debug/"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="4"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
GenerateDebugInformation="true"
ProgramDatabaseFile=".\../../../test/error_compatdll/Debug/error_compatdll.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Debug|x64"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
TypeLibraryName=".\../../../test/error_compatdll/Debug/error_compatdll.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_HDF5USEDLL_;_HDF5TESTUSEDLL_"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_compatdll/Debug/error_compatdll.pch"
AssemblerListingLocation=".\../../../test/error_compatdll/Debug/"
ObjectFile=".\../../../test/error_compatdll/Debug/"
ProgramDataBaseFileName=".\../../../test/error_compatdll/Debug/"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
GenerateDebugInformation="true"
ProgramDatabaseFile=".\../../../test/error_compatdll/Debug/error_compatdll.pdb"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TypeLibraryName=".\../../../test/error_compatdll/Release/error_compatdll.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;_HDF5USEDLL_;_HDF5TESTUSEDLL_"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_compatdll/Release/error_compatdll.pch"
AssemblerListingLocation=".\../../../test/error_compatdll/Release/"
ObjectFile=".\../../../test/error_compatdll/Release/"
ProgramDataBaseFileName=".\../../../test/error_compatdll/Release/"
WarningLevel="3"
SuppressStartupBanner="true"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
ProgramDatabaseFile=".\../../../test/error_compatdll/Release/error_compatdll.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|x64"
OutputDirectory="..\..\..\test\$(ProjectName)\$(ConfigurationName)"
IntermediateDirectory="$(OutDir)"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
TypeLibraryName=".\../../../test/error_compatdll/Release/error_compatdll.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\src"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;_HDF5USEDLL_;_HDF5TESTUSEDLL_"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
PrecompiledHeaderFile=".\../../../test/error_compatdll/Release/error_compatdll.pch"
AssemblerListingLocation=".\../../../test/error_compatdll/Release/"
ObjectFile=".\../../../test/error_compatdll/Release/"
ProgramDataBaseFileName=".\../../../test/error_compatdll/Release/"
WarningLevel="3"
SuppressStartupBanner="true"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="1033"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib WS2_32.lib"
OutputFile="$(OutDir)\$(ProjectName).exe"
LinkIncremental="1"
SuppressStartupBanner="true"
ProgramDatabaseFile=".\../../../test/error_compatdll/Release/error_compatdll.pdb"
SubSystem="1"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
>
<File
RelativePath="..\..\..\test\err_compat.c"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
BasicRuntimeChecks="3"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl"
>
</Filter>
<Filter
Name="Resource Files"
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -1,306 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@ECHO OFF
REM This batch file is used to HDF5 C Library.
REM Last Modified: 05/19/2005 by Fang GUO
echo ============================
echo Testing testhdf5
echo ============================
testhdf5%2\%1\testhdf5%2
echo ============================
echo Testing lheap
echo ============================
lheap%2\%1\lheap%2
echo.
echo ============================
echo Testing ohdr
echo ============================
ohdr%2\%1\ohdr%2
echo.
echo ============================
echo Testing stab
echo ============================
stab%2\%1\stab%2
echo.
echo ============================
echo Testing gheap
echo ============================
gheap%2\%1\gheap%2
echo.
echo ============================
echo Testing cache
echo ============================
cache%2\%1\cache%2
echo.
echo ============================
echo Testing cache_api
echo ============================
cache_api%2\%1\cache_api%2
echo.
echo ============================
echo Testing btree2
echo ============================
btree2%2\%1\btree2%2
echo.
echo ============================
echo Testing pool
echo ============================
pool%2\%1\pool%2
echo.
echo ============================
echo Testing hyperslab
echo ============================
hyperslab%2\%1\hyperslab%2
echo.
echo ============================
echo Testing istore
echo ============================
istore%2\%1\istore%2
echo.
echo ============================
echo Testing bittests
echo ============================
bittests%2\%1\bittests%2
echo.
echo ============================
echo Testing dt_arith
echo ============================
dt_arith%2\%1\dt_arith%2
echo.
echo ============================
echo Testing dtypes
echo ============================
dtypes%2\%1\dtypes%2
echo.
echo ============================
echo Testing dsets
echo ============================
dsets%2\%1\dsets%2
echo.
echo ============================
echo Testing cmpd_dset
echo ============================
cmpd_dset%2\%1\cmpd_dset%2
echo.
echo ============================
echo Testing extend
echo ============================
extend%2\%1\extend%2
echo.
echo ============================
echo Testing external
echo ============================
external%2\%1\external%2
echo.
echo ============================
echo Testing objcopy
echo ============================
objcopy%2\%1\objcopy%2
echo.
echo ============================
echo Testing links
echo ============================
links%2\%1\links%2
echo.
echo ============================
echo Testing unlink
echo ============================
unlink%2\%1\unlink%2
echo.
echo ============================
echo Testing big
echo ============================
echo.
echo Test skipped because it is not supported on Windows.
echo.
echo ============================
echo Testing mtime
echo ============================
mtime%2\%1\mtime%2
echo.
echo ============================
echo Testing fillval
echo ============================
fillval%2\%1\fillval%2
echo.
echo ============================
echo Testing mount
echo ============================
mount%2\%1\mount%2
echo.
echo ============================
echo Testing flush1
echo ============================
flush1%2\%1\flush1%2
echo.
echo ============================
echo Testing flush2
echo ============================
flush2%2\%1\flush2%2
echo.
echo ============================
echo Testing enum
echo ============================
enum%2\%1\enum%2
echo ============================
echo Testing set_extent
echo ============================
set_extent%2\%1\set_extent%2
echo ============================
echo Testing ttsafe
echo ============================
echo.
echo Test skipped because THREADSAFE is not supported on Windows.
echo.
echo ============================
echo Testing stream_test
echo ============================
echo.
echo Test skipped because it is not supported on Windows.
echo.
echo ============================
echo Testing getname
echo ============================
getname%2\%1\getname%2
echo.
echo ============================
echo Testing vfd
echo ============================
vfd%2\%1\vfd%2
echo.
echo ============================
echo Testing ntypes
echo ============================
ntypes%2\%1\ntypes%2
echo.
echo ============================
echo Testing dangle
echo ============================
dangle%2\%1\dangle%2
echo.
echo ============================
echo Testing dtransform
echo ============================
dtransform%2\%1\dtransform%2
echo.
echo ============================
echo Testing reserved
echo ============================
reserved%2\%1\reserved%2
echo.
echo ============================
echo Testing cross_read
echo ============================
cross_read%2\%1\cross_read%2
echo ============================
echo Testing fheap
echo ============================
fheap%2\%1\fheap%2
echo.
echo ============================
echo Testing ./testerr.bat
echo ============================
echo Test skipped because sed is not universal supported.
echo To test the HDF5 error API, you need to have sed on your machine.
echo Please remove echo on the following line in this batch file to do the test.
echo.
echo call testerr %1 %2
echo.
echo ============================
echo Testing talign
echo ============================
..\tools\talign%2\%1\talign%2

View File

@ -1,19 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
chunk%2\%1\chunk%2
iopipe%2\%1\iopipe%2
overhead%2\%1\overhead%2

View File

@ -1,74 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@REM This batch file tests HDF5 error API and backward compatibility with 1.6.
@REM If you want to use 1.8 with 1.6 compatibility,To the functionality of error APIs,
@REM You need to do the following two things:
@REM 1. Uncomment out /*#define H5_WANT_H5_V1_6_COMPAT 1*/ inside h5pubconf.h.
@REM 2. Set up an environment variable H5_WANT_H5_V1_6_COMPAT to 1
@REM Remember to undo 1 and 2 after you test if you are not going to use 1.6 backward compatibility option.
@echo off
@REM Goto the correct directory
cd error_api%2\%1
@REM Copy the executable files
copy /Y ..\..\error_compat%2\%1\error_compat%2.exe . >tempcopy.out 2>tempcopy.err
copy /Y ..\..\testfiles\err* . >tempcopy.out 2>tempcopy.err
@REM use sed to replace the changable number or string(such as line number, thread IDs etc.)
@REM We also want to combine the standard output and standard error of API tests into one file.
@REM Note the different NAME between 1.6 and 1.8...
if "%H5_WANT_H5_V1_6_COMPAT%"=="1" (
error_compat%2 >actual_test.out 2>actual_test.err
sed -e "s/thread [0-9]*/thread (IDs)/" -e "s/: .*\.c /: (file name) /" actual_test.err >temp1.err
sed -e "s/line [0-9]*/line (number)/" -e "s/v[1-9]*\.[0-9]*\./version (number)\./" temp1.err >temp2.err
sed -e "s/[1-9]*\.[0-9]*\.[0-9]*[^)]*/version (number)/" temp2.err >temp3.err
more /e actual_test.out >actual_temp.err
more /e temp3.err >>actual_temp.err
error_api%2 >actual_compat.out 2>actual_compat.err
) else (
error_api%2 >actual_test.out 2>actual_test.err
sed -e "s/thread [0-9]*/thread (IDs)/" -e "s/: .*\.c /: (file name) /" actual_test.err >temp1.err
sed -e "s/line [0-9]*/line (number)/" -e "s/v[1-9]*\.[0-9]*\./version (number)\./" temp1.err >temp2.err
sed -e "s/[1-9]*\.[0-9]*\.[0-9]*[^)]*/version (number)/" temp2.err >temp3.err
more /e actual_test.out >actual_temp.err
more /e temp3.err >>actual_temp.err
error_compat%2 >actual_compat.out 2>actual_compat.err
)
@REM We also want to filter out the first three lines of the expected output in order to
@REM get the "no difference output" between actual and expected results by using fc command.
if "%H5_WANT_H5_V1_6_COMPAT%"=="1" (
more /e +3 error_test_2 >>err_compat_temp
more /e +3 err_compat_1 >>expect_temp.err
) else (
more /e +3 error_test_1 >>expect_temp.err
more /e +3 err_compat_2 >>err_compat_temp
)
fc actual_temp.err expect_temp.err > fc_temp.out 2>fc_temp.err
if %ERRORLEVEL%==0 (
echo. All error API tests PASSED
)else (
echo. error API tests FAILED
)
fc actual_compat.out err_compat_temp > fc_temp.out 2>fc_temp.err
if %ERRORLEVEL%==0 (
echo. All error API compatible tests passed PASSED
)else (
echo. error API compatible tests FAILED
)
del *.err
del *.out
del *temp
del error_compat%2.exe
del *.h5
cd ..\..

198
windows/test/testerror.bat Normal file
View File

@ -0,0 +1,198 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for test_error and err_compat
rem
rem Created: Scott Wegner, 8/16/07
rem Modified:
setlocal enabledelayedexpansion
pushd %~dp0
rem Determine backwards compatibility options enabled
rem set deprecated_symbols=%deprecated_symbols%
set /a nerrors=0
set verbose=yes
if not exist .\testfiles mkdir testfiles
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%a
) )
)
set test_msg=%test_msg%
echo.%test_msg:~0,69% %1
exit /b
rem Run a test and print PASS or *FAIL*. If a test fails then increment
rem the `nerrors' global variable and (if $verbose is set) display the
rem difference between the actual output and the expected output. The
rem expected output is given as the first argument to this function and
rem the actual output file is calculated by replacing the `.ddl' with
rem `.out'. The actual output is not removed if $HDF5_NOCLEANUP has a
rem non-zero value.
rem
:test
rem The test name
set test_err=%1%3
rem The path of the test binary
set test_err_bin=%cd%\%test_err%\%2\%test_err%
set expect1=%cd%\testfiles\%~n1_1
set expect2=%cd%\testfiles\%~n1_2
set expect1_parsed=%~n1_1.parsed
set expect2_parsed=%~n1_2.parsed
set actual=%~n1.out
set actual_err=%~n1.err
set actual_ext=%~n1.ext
rem Run test
(
echo.#############################
echo.Expected output for %1
echo.#############################
%test_err_bin%
) >%actual% 2>%actual_err%
rem Extract file name, line number, version and thread IDs because they may
rem be different
rem Also filter out lines starting with *****, because Windows treats these
rem as wildcards, and parses as filenames. -SJW, 8/16/07
type nul > %actual_ext%
for /f "delims=" %%a in (%actual_err%) do (
set line_tmp=%%a
if not "!line_tmp:~0,9!"=="*********" (
set line=
set last_token=
for %%b in (%%a) do (
if "!last_token!"=="thread" (
set line=!line! ^(IDs^):
) else if "!last_token:~0,2!"=="#0" (
set line=!line! ^(file name^)
) else if "!last_token!"=="HDF5" (
rem Check if we wrap parenthesis around "version (number)"
set version_token=%%b
if "!version_token:~0,1!"=="(" (
set line=!line! ^(version ^(number^)^)
) else (
set line=!line! version ^(number^).
)
) else if "!last_token!"=="line" (
set line=!line! ^(number^)
) else (
set line=!line! %%b
)
set last_token=%%b
)
echo.!line!>>%actual_ext%
)
)
type %actual_ext% >> %actual%
rem We parse through our expected output file in a similar way, because
rem Windows will parse out commas and other special characters as well.
rem -SJW, 8/16/07
for %%a in (expect1 expect2) do (
type nul > !%%a_parsed!
for /f "delims=" %%b in (!%%a!) do (
set line_tmp=%%b
if not "!line_tmp:~0,9!"=="*********" (
set line=
for %%c in (%%b) do (
set line=!line! %%c
)
echo.!line!>>!%%a_parsed!
)
)
)
type nul > %expect2_parsed%
for /f "delims=" %%a in (%expect2%) do (
set line_tmp=%%a
if not "!line_tmp:~0,9!"=="*********" (
set line=
for %%b in (%%a) do (
set line=!line! %%b
)
echo.!line!>>%expect2_parsed%
)
)
fc /w %expect1_parsed% %actual% | find "FC: no diff" > nul
if %errorlevel% equ 0 (
call :testing PASSED %test_err%
) else (
fc /w %expect2_parsed% %actual% | find "FC: no diff" > nul
if !errorlevel! equ 0 (
call :testing PASSED %test_err%
) else (
call :testing *FAILED* %test_err%
echo. Expected result differs from actual result
set /a nerrors=%nerrors%+1
if "yes"=="%verbose%" fc %expect1_parsed% %actual%
)
)
rem Clean up output file
if not defined HDF5_NOCLEANUP (
for %%a in (%actual% %actual_err% %actual_ext% %expect1_parsed% %expect2_parsed%) do del /f %%a
)
exit /b
rem Print a "SKIP" message
:skip
call :testing -SKIP- %*
exit /b
rem ##############################################################################
rem ##############################################################################
rem ### T H E T E S T S ###
rem ##############################################################################
rem ##############################################################################
:main
rem test for err_compat
if "%deprecated_symbols%"=="yes" (
call :skip err_compat %1 %2
) else (
call :test err_compat %1 %2
)
rem test for error_test
call :test error_test %1 %2
if %nerrors% equ 0 (
echo.All Error API tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,152 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the hdf5 tools
rem
rem Created: Scott Wegner, 9/4/07
rem Modified: Scott Wegner, 9/6/07
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem Clean any variables starting with "HDF5_TOOL_", as we use these for our
rem tests. Also clear "HDF5_TOOL_TESTS", as we will be addding all of our tests
rem to this variable.
rem Set at least one variable in set beforehand to avoid error message.
rem --SJW 9/5/07
set hdf5_tool_=foo
for /f "tokens=1 delims==" %%a in ('set hdf5_tool_') do set %%a=
set hdf5_tool_tests=
goto main
rem Function to add a test to the test suite.
rem Expects the following parameters:
rem %1 - Name of the tool being tested
rem %2 - Relative path of script
:add_test
set hdf5_tool_tests=%hdf5_tool_tests% %1
set hdf5_tool_%1_test=%CD%\%2\%1
exit /b
rem Run all of the tests that have been added to the suite. Print a header
rem at the beginning of each one. Short-circuit if a test fails.
rem Expects the following parameters:
rem %1 - release or debug version
rem %2 - "dll" or nothing
:run_tests
for %%a in (%hdf5_tool_tests%) do (
echo.
echo.************************************
echo. Testing %%a ^(%1 %2^)
echo.************************************
rem Only add our parameters for batch scripts.
call !hdf5_tool_%%a_test:.bat= %1 %2!
rem Exit early if test fails.
if !errorlevel! neq 0 exit /b
)
rem If we get here, that means all of our tests passed.
echo.All tool tests passed.
exit /b
rem This is where we add tests to the suite, and run them all at the end.
rem Make sure only to run dll versions of tests you build dll for.
rem Also make sure to add *.bat to batch scripts, as the above functions rely
rem on it for sending parameters. --SJW 9/6/07
:main
rem lib tests
call :add_test talign%2 talign%2\%1
rem h5dump tests
rem Test commented because it produces output in the wrong directory.
rem --SJW 9/5/07
rem if not "%2"=="dll" (
rem call :add_test h5dumptst .\testfiles\h5dumptst\%1
rem )
call :add_test testh5dump.bat .\h5dump
call :add_test testh5dumpxml.bat .\h5dump
rem h5diff tests
rem Test commented because it produces output in the wrong directory.
rem --SJW 9/5/07
rem if not "%2"=="dll" (
rem call :add_test h5difftst .\testfiles\h5difftst\%1
rem )
call :add_test testh5diff.bat .\h5diff
rem h5ls tests
call :add_test testh5ls.bat .\h5ls
rem misc tests
rem Test commented because we don't built it on Windows
rem --SJW 9/5/07
rem call :add_test h5stat_gentest .\testfiles\h5stat_gentest%2\%1
call :add_test testh5repart.bat .\h5repart
if not "%2"=="dll" (
call :add_test testh5mkgrp.bat .\h5mkgrp
)
rem h5import tests
rem Test commented because it produces output in the wrong directory.
rem --SJW 9/5/07
rem if not "%2"=="dll" (
rem call :add_test h5importtest .\testfiles\h5importtest\%1
rem )
call :add_test h5importtestutil.bat .\h5import
rem h5repack tests
call :add_test h5repack.bat .\h5repack
if not "%2"=="dll" (
call :add_test h5repacktst .\testfiles\h5repacktst\%1
)
rem h5jam tests
if not "%2"=="dll" (
call :add_test testh5jam.bat .\h5jam
)
rem h5copy tests
rem Test commented because we don't built it on Windows
rem --SJW 9/5/07
rem call :add_test h5stat_gentest .\testfiles\h5stat_gentest%2\%1
if not "%2"=="dll" (
call :add_test testh5copy.bat .\h5copy
)
rem h5stat tests
rem Test commented because it produces output in the wrong directory.
rem --SJW 9/5/07
rem if not "%2"=="dll" (
rem call :add_test h5repart_gentest .\testfiles\h5repart_gentest\%1
rem )
call :add_test testh5stat.bat .\h5stat
rem Run the tests, passing in which version to run
call :run_tests %*
popd
endlocal & exit /b

View File

@ -1,194 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
::This batch file is for h5repack tests
::Usage
:: copytest release -- release static version
:: copytest debug -- debug static version
:: copytest release dll -- release dll version
:: copytest debug dll -- debug dll version
:: Written By: MUQUN YANG
:: Date : Oct. 19, 2006
::What is actually doing?
::Example case
::h5copy -i ..\..\testfiles\test1.h5 -o ..\..\temptest\out.test1.h5
::h5diff ..\..\testfiles\test1.h5 ..\..\temptest\out.test1.h5 > ..\..\temptest\temp.txt 2>&1
::fc ..\..\temptest\temp.txt temptest\notcomp.txt
::if %ERRORLEVEL%==0 (
:: echo Testing h5copy test1.h5 PASSED >> ..\..\copytest%2_%1.txt
::) else (
:: echo Testing h5copy test1.h5 FAILED >> ..\..\copytest%2_%1.txt
:: more temp.txt >> ..\..\copytest%2_%1.txt
::)
:: Track total number of testing errors
set /A totalerr=0
set /A totalskip=0
::*******************************************************************
:: Generate a new temp directory for test h5copy and reference file
::*******************************************************************
::Make a temporary directory for testing h5copy
mkdir temptest
:: Reference Files
:: After running h5copy with a input .h5 file, it will use
:: h5diff to compare the expected .h5 file with the output
:: .h5 file generated by h5copy. The comparison results will be
:: one of the following two cases.
:: Case 1: No difference between the expected .h5 and .h5 generated by h5copy file
type nul > temptest\empty.txt
::Case 2: For test1.h5 and test2.h5, the output will be "Some objects
:: are not comparable", but actually there is no difference between
type nul > temptest\notcomp.txt
echo -------------------------------->>temptest\notcomp.txt
echo Some objects are not comparable>> temptest\notcomp.txt
echo -------------------------------->>temptest\notcomp.txt
echo Use -v for a list of objects.>> temptest\notcomp.txt
:: Set two variables to contain the following two file names and paths
set nodiff=..\..\temptest\empty.txt
set notcomp=..\..\temptest\notcomp.txt
::****************************************************
:: Set the Environment Variables & Change Dir to .EXE
::****************************************************
:: The first incoming parameter should be configuration (debug or release)
set p1=%1
:: The second parameter should be the types of library (dll or blank)
set p2=%2
:: Set file name for the test results
set tempResults=copytest%2_%1.txt
:: Set exe file name
set exefile=h5copy%p2%
:: Set a variable for the sub batch file tools\tooltest.bat
set tooltest=..\..\tooltest
set test0=..\..\testfiles\h5copytst.h5
set output0=..\..\testfiles\out.h5copytst.h5
:: Creat the file for saving the tests results
type nul > %tempResults%
:: Change to the direcotory where the .exe file is located
cd h5copy%p2%\%p1%
::*********************************************
:: Test each function by calling TOOLTEST.BAT
::*********************************************
echo.
echo.****************************************************
echo. h5copy%2 %1 T E S T S
echo.****************************************************
::Basic Usage:
::1. Set flag
::2. Call batch file tooltest.bat followed with the expected file name
::3. Example
::If we want to test
::h5copy -i ..\..\testfiles\test1.h5 -o ..\..\temptest\out.test1.h5
::At first, we need to set the flag like
::set flag=-i %test1% -o %output1%
::Secondly, we call batch file tooltest.bat followed by one of reference files
::call %tooltest% %test1% %notcomp%
::--------------
:: case1: simple
::--------------v
set flag=-i %test0% -o %output0% -v -s simple -d simple
call %tooltest% %test0% %nodiff%
::--------------
:: case2: chunk
::--------------
set flag=-i %test0% -o %output0% -v -s chunk -d chunk
call %tooltest% %test0% %nodiff%
::--------------
:: case3: compact
::--------------
set flag=-i %test0% -o %output0% -v -s compact -d compact
call %tooltest% %test0% %nodiff%
::--------------
:: case4: compound
::--------------
set flag=-i %test0% -o %output0% -v -s compound -d compound
call %tooltest% %test0% %nodiff%
::--------------
:: case4: compressed
::--------------
set flag=-i %test0% -o %output0% -v -s compressed -d compressed
call %tooltest% %test0% %nodiff%
::--------------
:: case5: named_vl
::--------------
set flag=-i %test0% -o %output0% -v -s named_vl -d named_vl
call %tooltest% %test0% %nodiff%
::--------------
:: case6: nested_vl
::--------------
set flag=-i %test0% -o %output0% -v -s nested_vl -d nested_vl
call %tooltest% %test0% %nodiff%
cd ..\..
echo.
::Tests how many tests failed and how many tests skiped
if %totalerr%==0 (
echo. All of the %exefile% %p1% Tests Passed!
echo. All of the %exefile% %p1% Tests Passed! >> %tempResults%
) else (
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!>> %tempResults%
)
if not %totalskip%==0 (
echo. %totalskip% Tests in total Skiped! >> %tempResults%
echo. %totalskip% Tests in total Skiped!
echo.
find "SKIPED" %tempResults% | more +2
)
:: remove direcotory temptest and all its contents
rmdir /s/q temptest
:: Clean environment variables
for %%v in (p1 p2 tempResults exefile tooltest nodiff notcomp totalerr totalskip) do set %%v=
for %%v in (0 1 2 3 4 5 _szip _deflate _shuffle _fletcher32 _nbit _scaleoffset _all) do (
set test%%v=
set output%%v=
)

View File

@ -1,477 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
::This batch file is for h5diff tests.
::Usage
:: difftest release -- release static version
:: difftest debug -- debug static version
:: difftest release dll -- release dll version
:: difftest debug dll -- debug dll version
:: Written By: Fang GUO
:: Date : Jan. 12, 2006
:: Track total number of testing errors
set /A totalerr=0
set /A totalskip=0
::**********************************************
:: Generate a new temp directory for test h5diff
::**********************************************
:: Make a tempory directory for difftest
mkdir temptest
::****************************************************
:: Set the Environment Variables & Change Dir to .EXE
::****************************************************
:: The first incoming parameter should be configuration (debug or release)
set p1=%1
:: The second parameter should be the types of library (dll or blank)
set p2=%2
:: Set up some variables for convenience
:: tempResults will contain the tests results temporarily
set tempResults=difftest%p2%_%p1%.txt
:: exefile will contain the file name of the executable file
set exefile=h5diff%p2%
:: tooltest is the sub-batch file which will be called by tool test
set tooltest=..\..\tooltest
::Handle the expected file and the actual output file
::ln is the total line numbers to be deleted from the actual output
set ln=1
::ln_exp is the total line numbers to be deleted from the expected output
set ln_exp=4
:: NOTE1
::Set some variables to contain .h5 file and its path for convenience
::When you add new h5diff tests, check if the .h5 files is inside this for loop.
::For example, if you will add a new h5diff test using hdf5\tools\testfiles\file9.h5
::You need to add "9" after 8 or somewhere inside the ()
::The testing file names have been renamed. The following lines are not valid.
:: for %%v in (1 2 3 4 5 6 7 8) do set file%%v=..\..\testfiles\file%%v.h5
set file1=..\..\testfiles\h5diff_basic1.h5
set file2=..\..\testfiles\h5diff_basic2.h5
set file3=..\..\testfiles\h5diff_types.h5
set file4=..\..\testfiles\h5diff_dtypes.h5
set file5=..\..\testfiles\h5diff_attr1.h5
set file6=..\..\testfiles\h5diff_attr2.h5
set file7=..\..\testfiles\h5diff_dset1.h5
set file8=..\..\testfiles\h5diff_dset2.h5
set file9=..\..\testfiles\h5diff_hyper1.h5
set file10=..\..\testfiles\h5diff_hyper2.h5
::Create the file to contain the tests output
type nul > %tempResults%
::Change directory to the directory where the .exe file is located
cd h5diff%p2%\%p1%
::*********************************************
:: Test each function by calling TOOLTEST.BAT
::*********************************************
::USAGE of difftest.bat
::1. Set flag
::2. Call batch file tooltest.bat followed with the expected file name
::3. Example
::If we want to test h5diff ..\..\testfiles\file1.h5 ..\..\testfiles\file2.h5 g1/dset1 g1/dset2
::At first, we need to set the flag like
::set flag=%file1% %file2% g1/dset1 g1/dset2
::Secondly, we call batch file tooltest.bat by
::call %tooltest% h5diff_12.txt
echo.
echo.****************************************************
echo. H5diff%2 %1 T E S T S
echo.****************************************************
::--------------
::Common usage
::--------------
::1.0
set flag=-h
call %tooltest% h5diff_10.txt
::1.1 normal mode
set flag=%file1% %file2%
call %tooltest% h5diff_11.txt
::1.2 normal mode with objects
set flag=%file1% %file2% g1/dset1 g1/dset2
call %tooltest% h5diff_12.txt
::1.3 report mode
set flag=%file1% %file2% -r
call %tooltest% h5diff_13.txt
::1.4 report mode with objects
set flag=%file1% %file2% -r g1/dset1 g1/dset2
call %tooltest% h5diff_14.txt
::1.5 with -d
set flag=%file1% %file2% -r -d 5 g1/dset3 g1/dset4
call %tooltest% h5diff_15.txt
::1.6.1 with -p (int)
set flag=%file1% %file1% -v -p 0.02 g1/dset5 g1/dset6
call %tooltest% h5diff_16_1.txt
:: Commented out in unix test script (due to cross-platform errors)
::1.6.2 with -p (unsigned long_long)
:: set flag=%file1% %file1% -v -p 0.02 g1/dset7 g1/dset8
:: call %tooltest% h5diff_16_2.txt
::1.6.2 with -p (unsigned long_long)
set flag=%file1% %file1% -v -p 0.02 g1/dset9 g1/dset10
call %tooltest% h5diff_16_3.txt
::1.7 verbose mode
set flag=%file1% %file2% -v
call %tooltest% h5diff_17.txt
::1.8 quiet mode
set flag=%file1% %file2% -q
call %tooltest% h5diff_18.txt
::---------------------
::Not Comparable Types
::---------------------
::2.0
set flag=%file3% %file3% -v dset g1
call %tooltest% h5diff_20.txt
::2.1
set flag=%file3% %file3% -v dset l1
call %tooltest% h5diff_21.txt
::2.2
set flag=%file3% %file3% -v dset t1
call %tooltest% h5diff_22.txt
::2.3
set flag=%file3% %file3% -v g1 g1
call %tooltest% h5diff_23.txt
::2.4
set flag=%file3% %file3% -v t1 t1
call %tooltest% h5diff_24.txt
::2.5
set flag=%file3% %file3% -v l1 l1
call %tooltest% h5diff_25.txt
::2.6
set flag=%file3% %file3% -v g1 g2
call %tooltest% h5diff_26.txt
::2.7
set flag=%file3% %file3% -v t1 t2
call %tooltest% h5diff_27.txt
::2.8
set flag=%file3% %file3% -v l1 l2
call %tooltest% h5diff_28.txt
::-------------
:: Dataset types
:: -------------
::5.0
set flag=%file4% %file4% -v dset0a dset0b
call %tooltest% h5diff_50.txt
::5.1
set flag=%file4% %file4% -v dset1a dset1b
call %tooltest% h5diff_51.txt
::5.2
set flag=%file4% %file4% -v dset2a dset2b
call %tooltest% h5diff_52.txt
::5.3
set flag=%file4% %file4% -v dset3a dset4b
call %tooltest% h5diff_53.txt
::5.4
set flag=%file4% %file4% -v dset4a dset4b
call %tooltest% h5diff_54.txt
::5.5
set flag=%file4% %file4% -v dset5a dset5b
call %tooltest% h5diff_55.txt
::5.6
set flag=%file4% %file4% -v dset6a dset6b
call %tooltest% h5diff_56.txt
::5.7
set flag=%file4% %file4% -v dset7a dset7b
call %tooltest% h5diff_57.txt
::5.8 long_long test; different format of long_long print in Linux and IRIX
set flag=%file7% %file8% -v refreg
call %tooltest% h5diff_58.txt
:: --------------
:: Error messages
:: --------------
::6.0: Check if the command line number of arguments is less than 3
set flag=%file1%
call %tooltest% h5diff_600.txt
::6.1: Check for invalid options
set flag=%file1% %file2% -x
call %tooltest% h5diff_601.txt
:: ----
:: -d
:: ----
::6.2: no value
set flag=%file1% %file2% -d g1/dset3 g1/dset4
call %tooltest% h5diff_602.txt
::6.3: negative value
set flag=%file1% %file2% -d -4 g1/dset3 g1/dset4
call %tooltest% h5diff_603.txt
::6.4: zero
set flag=%file1% %file2% -d 0 g1/dset3 g1/dset4
call %tooltest% h5diff_604.txt
::6.5: non number
set flag=%file1% %file2% -d u g1/dset3 g1/dset4
call %tooltest% h5diff_605.txt
::6.6: hexadecimal
set flag=%file1% %file2% -d 0x1 g1/dset3 g1/dset4
call %tooltest% h5diff_606.txt
::6.7: string
set flag=%file1% %file2% -d "1" g1/dset3 g1/dset4
call %tooltest% h5diff_607.txt
::6.8: repeated option
set flag=%file1% %file2% -d 1 -d 2 g1/dset3 g1/dset4
call %tooltest% h5diff_608.txt
::6.9: number larger than biggest difference
set flag=%file1% %file2% -d 200 g1/dset3 g1/dset4
call %tooltest% h5diff_609.txt
::6.10: number smaller than smallest difference
set flag=%file1% %file2% -d 1 g1/dset3 g1/dset4
call %tooltest% h5diff_610.txt
::---
::-p
::---
::6.11: no value
set flag=%file1% %file2% -r -p g1/dset3 g1/dset4
call %tooltest% h5diff_611.txt
::6.12: negative value
set flag=%file1% %file2% -p -4 g1/dset3 g1/dset4
call %tooltest% h5diff_612.txt
::6.13: zero
set flag=%file1% %file2% -p 0 g1/dset3 g1/dset4
call %tooltest% h5diff_613.txt
::6.14: non number
set flag=%file1% %file2% -p u g1/dset3 g1/dset4
call %tooltest% h5diff_614.txt
::6.15: hexadecimal
set flag=%file1% %file2% -p 0x1 g1/dset3 g1/dset4
call %tooltest% h5diff_615.txt
::6.16: string
set flag=%file1% %file2% -p "0.21" g1/dset3 g1/dset4
call %tooltest% h5diff_616.txt
::6.17: repeated option
set flag=%file1% %file2% -p 0.21 -p 0.22 g1/dset3 g1/dset4
call %tooltest% h5diff_617.txt
::6.18: number larger than biggest difference
set flag=%file1% %file2% -p 2 g1/dset3 g1/dset4
call %tooltest% h5diff_618.txt
::6.19: number smaller than smallest difference
set flag=%file1% %file2% -p 0.005 g1/dset3 g1/dset4
call %tooltest% h5diff_619.txt
::---
::-n
::---
::6.20: no value
set flag=%file1% %file2% -n g1/dset3 g1/dset4
call %tooltest% h5diff_620.txt
::6.21: negative value
set flag=%file1% %file2% -n -4 g1/dset3 g1/dset4
call %tooltest% h5diff_621.txt
::6.22: zero
set flag=%file1% %file2% -n 0 g1/dset3 g1/dset4
call %tooltest% h5diff_622.txt
::6.23: non number
set flag=%file1% %file2% -n u g1/dset3 g1/dset4
call %tooltest% h5diff_623.txt
::6.24: hexadecimal
set flag=%file1% %file2% -n 0x1 g1/dset3 g1/dset4
call %tooltest% h5diff_624.txt
::6.25: string
set flag=%file1% %file2% -n "2" g1/dset3 g1/dset4
call %tooltest% h5diff_625.txt
::6.26: repeated option
set flag=%file1% %file2% -n 2 -n 3 g1/dset3 g1/dset4
call %tooltest% h5diff_626.txt
::6.27: number larger than biggest difference
set flag=%file1% %file2% -n 200 g1/dset3 g1/dset4
call %tooltest% h5diff_627.txt
::6.28: number smaller than smallest difference
set flag=%file1% %file2% -n 1 g1/dset3 g1/dset4
call %tooltest% h5diff_628.txt
::6.29: non valid %files
set flag=file1.h6 file2.h6
call %tooltest% h5diff_629.txt
::--------------
::7. attributes
::--------------
set flag=%file5% %file6% -v
call %tooltest% h5diff_70.txt
::-------------------------
::8. all dataset datatypes
::-------------------------
set flag=%file7% %file8% -v
call %tooltest% h5diff_80.txt
::-----------------------------
::9. compare a %file with itself
::-----------------------------
set flag=%file2% %file2%
call %tooltest% h5diff_90.txt
::-----------------------------
::10. read by hyperslab, print indexes
::-----------------------------
set flag=%file9% %file10% -v
call %tooltest% h5diff_100.txt
::-----------------------------
::11. floating point comparison
::-----------------------------
REM Not tested on Windows due to difference in formatting of scientific notation
REM set flag=%file1% %file1% /g1/d1 g1/d2 -v
REM call %tooltest% h5diff_101.txt
REM set flag=%file1% %file1% /g1/fp1 g1/fp2 -v
REM call %tooltest% h5diff_102.txt
::Change directory to hdf5\tools
cd ..\..
::Check if any of tests failed or skiped for the time being
echo.
if "%totalerr%"=="0" (
echo. All of the %exefile% %p1% Tests Passed!
echo. All of the %exefile% %p1% Tests Passed! >> %tempResults%
) else (
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!>> %tempResults%
)
if not "%totalskip%"=="0" (
echo. %totalskip% Tests in total Skiped! >> %tempResults%
echo. %totalskip% Tests in total Skiped!
find "SKIPED" %tempResults% | more +2
)
::NOTE1 CLEAN
::Clean up Environment Variables
for %%i in (p1 p2 tempResults exefile tooltest ln ln_exp totalskip totalerr) do set %%i=
for %%v in (1 2 3 4 5 6 7 8) do set file%%v=
set flag=
::Clean up Temporary Files
rmdir /s/q temptest

View File

@ -1,710 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
::This batch file is for h5dump general and xml tests.
::Usage
:: dumptest release -- release static version
:: dumptest debug -- debug static version
:: dumptest release dll -- release dll version
:: dumptest debug dll -- debug dll version
:: Written By: Fang GUO
:: Date : Jan. 12, 2006
:: Track total number of testing errors
set /A totalerr=0
set /A totalskip=0
::*******************************************************
:: Generate a new temp directory for test h5dump
::*******************************************************
:: Make a temporary directory for h5dump test
mkdir temptest
::******************************************************************
:: Set the Environment Variables & Change Dir to Dir with h5dump.EXE
::******************************************************************
:: The first incoming parameter should be configuration (debug or release)
set p1=%1
:: The second parameter should be the types of library (dll or blank)
set p2=%2
:: Before comparison between expected file and the actual outputfile,
:: Ignore the first line in actual outputfile and the first four lines
:: in the expected output file
set ln=1
set ln_exp=4
:: Save the tests output into a temporary file
set tempResults=dumptest%2_%1.txt
type nul > %tempResults%
:: Define the .exe file based on the second parameter
set exefile=h5dump%p2%
:: For convenience, set a variable for the sub batch file
set tooltest=..\..\tooltest
:: For convenience, set variable for all testfiles/*.h5 files
for %%i in (testfiles\t*.h5) do set %%~ni=..\..\%%i
:: Special cases: the following are not .h5 files but needed in the tests
for %%i in (tsplit_file tmulti) do (
set %%i=..\..\testfiles\%%i
)
:: Havn't find a way to use % inside a variable name
set tfamily05d=..\..\testfiles\tfamily%%05d.h5
:: Change the directory to dir including .exe file
cd h5dump%p2%\%p1%
::Test h5dump with different options
echo.****************************************************
echo. h5dump%2 %1 T E S T S
echo.****************************************************
::--------------------------
::test for displaying groups
::--------------------------
set flag=%tgroup%
call %tooltest% tgroup-1.ddl
::---------------------------------------
::test for displaying the selected groups
::---------------------------------------
set flag=--group=/g2 --group / -g /y %tgroup%
call %tooltest% tgroup-2.ddl
:: -----------------------------------------
:: test for displaying simple space datasets
::------------------------------------------
set flag=%tdset%
call %tooltest% tdset-1.ddl
::--------------------------------------
::test for displaying selected datasets
::--------------------------------------
set flag=-H -d dset1 -d /dset2 --dataset=dset3 %tdset%
call %tooltest% tdset-2.ddl
::------------------------------
::test for displaying attributes
::------------------------------
set flag=%tattr%
call %tooltest% tattr-1.ddl
::---------------------------------------------------------------------------
::test for displaying the selected attributes of string type and scalar space
::---------------------------------------------------------------------------
set flag=-a /attr1 --attribute /attr4 --attribute=/attr5 %tattr%
call %tooltest% tattr-2.ddl
::----------------------------------
::test for header and error messages
::----------------------------------
set flag=--header -a /attr2 --attribute=/attr %tattr%
call %tooltest% tattr-3.ddl
::-----------------------------------------------------------------------------
::test for displaying attributes in shared datatype (also in group and dataset)
::-----------------------------------------------------------------------------
set flag=%tnamed_dtype_attr%
call %tooltest% tnamed_dtype_attr.ddl
::------------------------------
::test for displaying soft links
::------------------------------
set flag=%tslink%
call %tooltest% tslink-1.ddl
set flag=%tudlink%
call %tooltest% tudlink-1.ddl
::-------------------------------------
::test for displaying the selected link
::-------------------------------------
set flag=-l slink2 %tslink%
call %tooltest% tslink-2.ddl
set flag=-l udlink2 %tudlink%
call %tooltest% tudlink-2.ddl
::--------------------
::tests for hard links
::--------------------
set flag=%thlink%
call %tooltest% thlink-1.ddl
set flag=-d /g1/dset2 --dataset /dset1 --dataset=/g1/g1.1/dset3 %thlink%
call %tooltest% thlink-2.ddl
set flag=-d /g1/g1.1/dset3 --dataset /g1/dset2 --dataset=/dset1 %thlink%
call %tooltest% thlink-3.ddl
set flag=-g /g1 %thlink%
call %tooltest% thlink-4.ddl
set flag=-d /dset1 -g /g2 -d /g1/dset2 %thlink%
call %tooltest% thlink-5.ddl
::-----------------------------
::tests for compound data types
::-----------------------------
set flag=%tcompound%
call %tooltest% tcomp-1.ddl
::-------------------------
::test for named data types
::-------------------------
set flag=-t /type1 --datatype /type2 --datatype=/group1/type3 %tcompound%
call %tooltest% tcomp-2.ddl
::--------------------
::test for unamed type
::--------------------
set flag=-t /#6632:0 -g /group2 %tcompound%
call %tooltest% tcomp-3.ddl
::----------------------------------
::test complicated compound datatype
::----------------------------------
set flag=%tcompound_complex%
call %tooltest% tcomp-4.ddl
::---------------------------------
::test for the nested compound type
::---------------------------------
set flag=%tnestedcomp%
call %tooltest% tnestcomp-1.ddl
::----------------
::test for options
::----------------
set flag=%tall%
call %tooltest% tall-1.ddl
set flag=--header -g /g1/g1.1 -a attr2 %tall%
call %tooltest% tall-2.ddl
set flag=-d /g2/dset2.1 -l /g1/g1.2/g1.2.1/slink %tall%
call %tooltest% tall-3.ddl
::------------------------
::test for loop detection
::------------------------
set flag=%tloop%
call %tooltest% tloop-1.ddl
::---------------
::test for string
::---------------
set flag=%tstr%
call %tooltest% tstr-1.ddl
set flag=%tstr2%
call %tooltest% tstr-2.ddl
::-------------------------------------
::test for file created by Lib SAF team
::-------------------------------------
set flag=%tsaf%
call %tooltest% tsaf.ddl
::---------------------------------------
::test for file with variable length data
::---------------------------------------
set tvldtypes=..\..\testfiles\tvldtypes
for %%v in (1 2 3 4 5) do (
set flag=%tvldtypes%%%v.h5
call %tooltest% tvldtypes%%v.ddl
)
set tvldtypes=
::----------------------------------------------
::test for file with variable length string data
::----------------------------------------------
set flag=%tvlstr%
call %tooltest% tvlstr.ddl
::------------------------------
::test for files with array data
::------------------------------
set tarray=..\..\testfiles\tarray
for /L %%v in (1,1,7) do (
set flag=%tarray%%%v%.h5
call %tooltest% tarray%%v.ddl
)
set tarray=
::------------------------------
::test for files with empty data
::------------------------------
set flag=%tempty%
call %tooltest% tempty.ddl
::---------------------------------------------
::test for files with groups that have comments
::---------------------------------------------
set flag=%tgrp_comments%
call %tooltest% tgrp_comments.ddl
::---------------------------
::test the --filedriver flag
::---------------------------
set flag=--filedriver=split %tsplit_file%
call %tooltest% tsplit_file.ddl
::Special: Find a way to echo environment
set flag=--filedriver=family %tfamily05d%
call %tooltest% tfamily.ddl
set flag=--filedriver=multi %tmulti%
call %tooltest% tmulti.ddl
::----------------------------------------------------------------
::test for files with group names which reach > 1024 bytes in size
::----------------------------------------------------------------
set flag=-w157 %tlarge_objname%
call %tooltest% tlarge_objname.ddl
::-------------------------------------------
::test '-A' to suppress data but print attr's
::-------------------------------------------
set flag=-A %tall%
call %tooltest% tall-2A.ddl
::---------------------------------------------------------
::test '-r' to print attributes in ASCII instead of decimal
::---------------------------------------------------------
set flag=-A -r %tall%
call %tooltest% tall-2B.ddl
::---------------
::test Subsetting
::---------------
set flag=--dataset=/g1/g1.1/dset1.1.1 --start=1,1 --stride=2,3 --count=3,2 --block=1,1 %tall%
call %tooltest% tall-4s.ddl
set flag=-d "/g1/g1.1/dset1.1.2[0;2;10;]" %tall%
call %tooltest% tall-5s.ddl
set flag=-d "/dset1[1,1;;;]" %tdset%
call %tooltest% tdset-3s.ddl
::set flag=-d "/dset1[;3,2;4,4;1,4]" %tdset2%
::call %tooltest% tdset2-1s.ddl
::----------------------------------------------------
::test printing characters in ASCII instead of decimal
::----------------------------------------------------
set flag=-r %tchar%
call %tooltest% tchar1.ddl
::---------------------
::test failure handling
::---------------------
::1. Missing file name
set flag=
call %tooltest% tnofilename.ddl
:: rev. 2004
::---------------------
::tests for super block
::---------------------
set flag=-H -B -d dset %tfcontents1%
call %tooltest% tboot1.ddl
set flag=-B %tfcontents2%
call %tooltest% tboot2.ddl
::------------------------------------
:: test -p with a non existing dataset
::------------------------------------
set flag=-p -d bogus %tfcontents1%
call %tooltest% tperror.ddl
::----------------------
::test for file contents
::----------------------
set flag=-n %tfcontents1%
call %tooltest% tcontents.ddl
::-------------------------
::tests for storage layout
::-------------------------
for %%v in (compact chunked external) do (
set flag=-H -p -d %%v %tfilters%
call %tooltest% t%%v.ddl
)
::contiguous (tcontiguos.ddl or tcontiguous.ddl)
set flag=-H -p -d contiguous %tfilters%
call %tooltest% tcontiguos.ddl
::-----------
::fill values
::-----------
set flag=-p %tfvalues%
call %tooltest% tfill.ddl
::-----------------------------------------------
::several datatype, with references , print path
::-----------------------------------------------
set flag=%tattr2%
call %tooltest% treference.ddl
::------------------------------------------
::escape/not escape non printable characters
::------------------------------------------
set flag=-e %tstr3%
call %tooltest% tstringe.ddl
set flag=%tstr3%
call %tooltest% tstring.ddl
::----------------------------------
::char data as ASCII with non escape
::----------------------------------
set flag=-r -d str4 %tstr3%
call %tooltest% tstring2.ddl
::-----------------------------
::array indices print/not print
::-----------------------------
set flag=%taindices%
call %tooltest% tindicesyes.ddl
set flag=-y %taindices%
call %tooltest% tindicesno.ddl
::-----------------------------
::array indices with subsetting
::-----------------------------
set flag=-d 1d -s 3 -c 40 %taindices%
call %tooltest% tindicessub1.ddl
set flag=-d 2d -s 1,3 -c 6,4 %taindices%
call %tooltest% tindicessub2.ddl
set flag=-d 3d -s 0,1,3 -c 2,6,4 %taindices%
call %tooltest% tindicessub3.ddl
set flag=-d 4d -s 0,0,1,3 -c 2,2,6,4 %taindices%
call %tooltest% tindicessub4.ddl
::-----------------
::tests for filters
::-----------------
:: SZIP
set flag=-H -p -d szip %tfilters%
call %tooltest% tszip.ddl szip
::deflate
set flag=-H -p -d deflate %tfilters%
call %tooltest% tdeflate.ddl zlib
::shuffle
set flag=-H -p -d shuffle %tfilters%
call %tooltest% tshuffle.ddl
::fletcher32
set flag=-H -p -d fletcher32 %tfilters%
call %tooltest% tfletcher32.ddl
::nbit
set flag=-H -p -d nbit %tfilters%
call %tooltest% tnbit.ddl
::scaleoffset
set flag=-H -p -d scaleoffset %tfilters%
call %tooltest% tscaleoffset.ddl
::all
set flag=-H -p -d all %tfilters%
call %tooltest% tallfilters.ddl zlib szip
::user defined
set flag=-H -p -d myfilter %tfilters%
call %tooltest% tuserfilter.ddl
::test for displaying objects with very long names
set flag=%tlonglinks%
call %tooltest% tlonglinks.ddl
::dimensions over 4GB, print boundary
set flag=-d dset4gb -s 4294967284 -c 22 %tbigdims%
call %tooltest% tbigdims.ddl
::hyperslab read
set flag=%thyperslab%
call %tooltest% thyperslab.ddl
::test for displaying dataset and attribute of null space
set flag=%tnullspace%
call %tooltest% tnullspace.ddl
::test for long double (Some systems do not have long double)
set flag=%tldouble%
call %tooltest% tldouble.ddl SKIP
::Test for vms
set flag=%tvms%
call %tooltest% tvms.ddl
::test for binary output
set flag=-d array -o out1.bin -b LE %tbinary%
call %tooltest% tbin1.ddl
set flag=-d float -o out2.bin -b BE %tbinary%
call %tooltest% tbin2.ddl
set flag=-d integer -o out3.bin -b MEMORY %tbinary%
call %tooltest% tbin3.ddl
set flag=-d double -o out4.bin -b FILE %tbinary%
call %tooltest% tbin4.ddl
::test for dataset region references
set flag=%tdatareg%
call %tooltest% tregref.ddl
echo.
echo.****************************************************
echo. h5dump%2 %1 XML T E S T S
echo.****************************************************
::test XML
set flag=--xml %tall%
call %tooltest% tall.h5.xml
set flag=--xml %tattr%
call %tooltest% tattr.h5.xml
set flag=--xml %tbitfields%
call %tooltest% tbitfields.h5.xml
set flag=--xml %tcompound%
call %tooltest% tcompound.h5.xml
set flag=--xml %tcompound2%
call %tooltest% tcompound2.h5.xml
set flag=--xml %tdatareg%
call %tooltest% tdatareg.h5.xml
set flag=--xml %tdset%
call %tooltest% tdset.h5.xml
set flag=--xml %tdset2%
call %tooltest% tdset2.h5.xml
set flag=--xml %tenum%
call %tooltest% tenum.h5.xml
set flag=--xml %tgroup%
call %tooltest% tgroup.h5.xml
set flag=--xml %thlink%
call %tooltest% thlink.h5.xml SKIP
set flag=--xml %tloop%
call %tooltest% tloop.h5.xml
set flag=--xml %tloop2%
call %tooltest% tloop2.h5.xml
set flag=--xml %tmany%
call %tooltest% tmany.h5.xml SKIP
set flag=--xml %tnestedcomp%
call %tooltest% tnestedcomp.h5.xml
set flag=--xml %tcompound_complex%
call %tooltest% tcompound_complex.h5.xml
set flag=--xml %tobjref%
call %tooltest% tobjref.h5.xml
set flag=--xml %topaque%
call %tooltest% topaque.h5.xml
set flag=--xml %tslink%
call %tooltest% tslink.h5.xml
set flag=--xml %tstr%
call %tooltest% tstr.h5.xml
set flag=--xml %tstr2%
call %tooltest% tstr2.h5.xml
set flag=--xml %tref%
call %tooltest% tref.h5.xml
set flag=--xml %tname-amp%
call %tooltest% tname-amp.h5.xml
set flag=--xml %tname-apos%
call %tooltest% tname-apos.h5.xml
set flag=--xml %tname-gt%
call %tooltest% tname-gt.h5.xml
set flag=--xml %tname-lt%
call %tooltest% tname-lt.h5.xml
set flag=--xml %tname-quot%
call %tooltest% tname-quot.h5.xml
set flag=--xml %tname-sp%
call %tooltest% tname-sp.h5.xml
set flag=--xml %tstring%
call %tooltest% tstring.h5.xml
set flag=--xml %tstring-at%
call %tooltest% tstring-at.h5.xml
set flag=--xml %tref-escapes%
call %tooltest% tref-escapes.h5.xml
set flag=--xml %tref-escapes-at%
call %tooltest% tref-escapes-at.h5.xml
set flag=--xml %tnodata%
call %tooltest% tnodata.h5.xml
set flag=--xml %tarray1%
call %tooltest% tarray1.h5.xml
set flag=--xml %tarray2%
call %tooltest% tarray2.h5.xml
set flag=--xml %tarray3%
call %tooltest% tarray3.h5.xml
set flag=--xml %tarray6%
call %tooltest% tarray6.h5.xml
set flag=--xml %tarray7%
call %tooltest% tarray7.h5.xml
set flag=--xml %tvldtypes1%
call %tooltest% tvldtypes1.h5.xml
set flag=--xml %tvldtypes2%
call %tooltest% tvldtypes2.h5.xml
set flag=--xml %tvldtypes3%
call %tooltest% tvldtypes3.h5.xml
set flag=--xml %tvldtypes4%
call %tooltest% tvldtypes4.h5.xml
set flag=--xml %tvldtypes5%
call %tooltest% tvldtypes5.h5.xml
set flag=--xml %tvlstr%
call %tooltest% tvlstr.h5.xml
set flag=--xml %tsaf%
call %tooltest% tsaf.h5.xml
set flag=--xml %tempty%
call %tooltest% tempty.h5.xml
set flag=--xml %tnamed_dtype_attr%
call %tooltest% tnamed_dtype_attr.h5.xml
::Test dataset and attribute of null space. Commented out:
::wait until the XML schema is updated for null space.
set flag=--xml tnulspace.h5
call %tooltest% tnullspace.h5.xml SKIP
::other options for xml
set flag=--xml --use-dtd %tempty%
call %tooltest% tempty-dtd.h5.xml
set flag=--xml -u %tempty%
call %tooltest% tempty-dtd-2.h5.xml
set flag=--xml -X ":" %tempty%
call %tooltest% tempty-nons.h5.xml
set flag=--xml --xml-ns=":" %tempty%
call %tooltest% tempty-nons-2.h5.xml
::Some of these combinations are syntactically correct but
::the URLs are dummies
set flag=--xml -X "thing:" %tempty%
call %tooltest% tempty-ns.h5.xml
set flag=--xml --xml-ns="thing:" %tempty%
call %tooltest% tempty-ns-2.h5.xml
set flag=--xml --xml-ns=":" --xml-dtd="http://somewhere.net" %tempty%
call %tooltest% tempty-nons-uri.h5.xml
set flag=--xml --use-dtd --xml-dtd="http://somewhere.net" %tempty%
call %tooltest% tempty-dtd-uri.h5.xml
set flag=--xml -A %tall%
call %tooltest% tall-2A.h5.xml
::------------------
::End of -xml Tests
::------------------
cd ..\..
echo.
if %totalerr%==0 (
echo. All of the %exefile% %p1% Tests Passed!
echo. All of the %exefile% %p1% Tests Passed! >> %tempResults%
) else (
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!>> %tempResults%
)
if not %totalskip%==0 (
echo. %totalskip% Tests in total Skiped! >> %tempResults%
echo. %totalskip% Tests in total Skiped!
echo.
find "SKIPED" %tempResults% | more +2
)
rmdir /s/q temptest
for %%i in (testfiles\t*.h5) do set %%~ni=
set test_szip=
set output_szip=
for %%v in (p1 p2 tempResults exefile tooltest ln ln_exp tsplit_file tmulti tfamily05d totalskip) do set %%v=
for %%i in (tsplit_file tmulti) do set %%i=
set tfamily05d=

View File

@ -0,0 +1,308 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5copy tool
rem
rem Created: Scott Wegner, 8/16/07
rem Modified: Scott Wegner, 8/22/07
rem
rem We don't currently build DLL version of h5copy, but this test script is
rem setup to support it if we do in the future. --SJW 8/22/07
setlocal enabledelayedexpansion
pushd %~dp0
rem The tool name
set h5copy=h5copy%2
rem The path of the tool binary
set h5copy_bin=%CD%\%1\%h5copy%
rem The h5diff tool name
set h5diff=h5diff%2
rem The path of the h5diff too binary
set h5diff_bin=%CD%\..\%h5diff%\%1\%h5diff%
rem The h5ls tool name
set h5ls=h5ls%2
rem Arguments to the h5ls tool
set h5ls_args=-Svr
rem The path of the h5ls tool binary
set h5ls_bin=%CD%\..\%h5ls%\%1\%h5ls%
set /a nerrors=0
set verbose=yes
set srcfile=h5copytst.h5
set indir=%CD%\..\testfiles
set outdir=%CD%\..\testfiles
if not exist %outdir% mkdir %outdir%
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=%test_msg%
echo.%test_msg:~0,69% %1
exit /b
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Verifying".
rem
:verify
set verify_msg=Verifying h5diff output
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set verify_msg=!test_msg! %%~nxa
) )
)
set verify_msg=%verify_msg%
echo.%verify_msg:~0,69% %1
exit /b
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Verifying".
rem
:verify_h5ls
set verifyh5ls_msg=Verifying h5ls file structure
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set verifyh5ls_msg=!test_msg! %%~nxa
) )
)
set verifyh5ls_msg=%verifyh5ls_msg%
echo.%verifyh5ls_msg:~0,69% %1
exit /b
rem Run a test and print PASS or *FAIL*. If h5copy can complete
rem with exit status 0, consider it pass. If a test fails then increment
rem the `nerrors' global variable.
rem Assumed arguments:
rem $1 is -i
rem $2 is input file
rem $3 is -o
rem $4 is output file
rem $* everything else arguments for h5copy.
:tooltest
set runh5diff=yes
if "%1"=="-i" (
set inputfile=%2
) else (
set runh5diff=no
)
if "%3"=="-o" (
set outputfile=%4
) else (
set h5diff=no
)
(
echo.#############################
echo. output for %h5copy% %*
echo.#############################
%h5copy_bin% %*
) > output.out
if %errorlevel% neq 0 (
call :testing *FAILED* %h5copy% %*
echo.failed result is:
type output.out
set /a nerrors=!nerrors!+1
) else (
call :testing PASSED %h5copy% %*
rem Clean up output file
if not defined HDF5_NOCLEANUP (
del /f output.out
)
)
if %runh5diff neq no (
call :h5difftest %inputfile% %outputfile%
)
exit /b
rem Call the h5diff tool
rem
:h5difftest
%h5diff_bin% %* -q
if %errorlevel% neq 0 (
call :verify *FAILED* %*
set /a nerrors=!nerrors!+1
) else (
call :verify PASSED %*
)
exit /b
rem Call the h5ls tool to verify the correct output data in the destination file
rem
:h5lstest
set expect=%indir%\%~n1.ls
set expect_parsed=%expect%.parsed
set actual=%outdir%\%~n1.out
set actual_parsed=%actual%.parsed
rem Stderr is included in stdout so that the diff can detect
rem any unexpected output from that stream too.
rem
rem Note: The modification time and storage utilization are masked off
rem so that the output is more portable
(
echo.#############################
echo.Expected output for %h5ls% %*
echo.#############################
%h5ls_bin% %h5ls_args% %*
) > %actual% 2>&1
rem Windows doesn't have "sed" command, and parsing the files line-by-line
rem to emulate Unix takes a very long time. Instead, we simply remove lines
rem with "Modified" or "Storage". We also remove lines "Opened (filename)
rem with sec2 driver" and "Expected output for (h5ls test)", because Windows
rem paths differ from Linux. Do this for actual and expected otput.
rem If there is a better alternative in the future, we should use it instead.
rem --SJW 8/22/07
for %%a in (expect actual) do (
findstr /v /c:" Modified:" !%%a! > tmp.txt
findstr /v /c:" Storage:" tmp.txt > tmp2.txt
findstr /v /b /c:"Expected output for " tmp2.txt > tmp.txt
findstr /v /b /c:"Opened " tmp.txt > !%%a_parsed!
)
del /f tmp.txt tmp2.txt
rem Don't special case non-existing expected output as Linux does, because
rem we depend on it above to parse anyway. It should be an error if it
rem doesn't exist. --SJW 8/22/07
rem if not exist %expect% (
rem rem Create the expect file if it doesn't yet exist
rem call :verify_h5ls CREATED %*
rem copy %actual% %expect%
rem ) else (
fc %expect_parsed% %actual_parsed% | find "FC: no diff" > nul
if %errorlevel% equ 0 (
call :verify_h5ls PASSED %*
) else (
call :verify_h5ls *FAILED* %*
echo. Expected result ^(*.ls^) differs from actual result ^(*.out^)
set /a nerrors=!nerrors!+1
if "yes"=="%verbose%" fc %expect_parsed% %actual_parsed%
)
rem )
rem Clean up output file
if not defined HDF5_NOCLEANUP (
for %%a in (%actual% %actual_parsed% %expect_parsed%) do del /f %%a
)
exit /b
rem Copy single datasets of various forms from one group to another,
rem adding object copied to the destination file each time
rem
rem Assumed arguments:
rem <none>
:copyobjects
set testfile=%indir%\%srcfile%
set fileout=%outdir%\%srcfile:.h5=.out.h5%
rem Remove any output file left over from previous test run
del /f %fileout% 2> nul
echo.Test copying various forms of datasets
call :tooltest -i %testfile% -o %fileout% -v -s simple -d simple
call :tooltest -i %testfile% -o %fileout% -v -s chunk -d chunk
call :tooltest -i %testfile% -o %fileout% -v -s compact -d compact
call :tooltest -i %testfile% -o %fileout% -v -s compound -d compound
call :tooltest -i %testfile% -o %fileout% -v -s compressed -d compressed
call :tooltest -i %testfile% -o %fileout% -v -s named_vl -d named_vl
call :tooltest -i %testfile% -o %fileout% -v -s nested_vl -d nested_vl
echo.Test copying dataset within group in source file to root of destination
call :tooltest -i %testfile% -o %fileout% -v -s grp_dsets/simple -d simple_top
echo.Test copying ^& renaming dataset.
call :tooltest -i %testfile% -o %fileout% -v -s compound -d rename
echo.Test copying empty, 'full' ^& 'nested' groups
call :tooltest -i %testfile% -o %fileout% -v -s grp_empty -d grp_empty
call :tooltest -i %testfile% -o %fileout% -v -s grp_dsets -d grp_dsets
call :tooltest -i %testfile% -o %fileout% -v -s grp_nested -d grp_nested
echo.Test copying dataset within group in source file to group in destination
call :tooltest -i %testfile% -o %fileout% -v -s /grp_dsets/simple -d /grp_dsets/simple_group
echo.Test copying ^& renaming group
call :tooltest -i %testfile% -o %fileout% -v -s grp_dsets -d grp_rename
echo.Test copying 'full' group hierarchy into group in destination file
call :tooltest -i %testfile% -o %fileout% -v -s grp_dsets -d /grp_rename/grp_dsets
echo.Test copying objects into group hier. that doesn't exist yet in destination file
call :tooltest -i %testfile% -o %fileout% -vp -s simple -d /A/B1/simple
call :tooltest -i %testfile% -o %fileout% -vp -s simple -d /A/B2/simple2
call :tooltest -i %testfile% -o %fileout% -vp -s /grp_dsets/simple -d /C/D/simple
call :tooltest -i %testfile% -o %fileout% -vp -s /grp_dsets -d /E/F/grp_dsets
call :tooltest -i %testfile% -o %fileout% -vp -s /grp_nested -d /G/H/grp_nested
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 ##############################################################################
:main
call :copyobjects
if %nerrors% equ 0 (
echo.All h5copy tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,427 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5diff tool
rem
rem Created: Scott Wegner, 8/22/07
rem Modified: Scott Wegner, 8/23/07
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem ############################################################################
rem test file names
rem ############################################################################
set file1=h5diff_basic1.h5
set file2=h5diff_basic2.h5
set file3=h5diff_types.h5
set file4=h5diff_dtypes.h5
set file5=h5diff_attr1.h5
set file6=h5diff_attr2.h5
set file7=h5diff_dset1.h5
set file8=h5diff_dset2.h5
set file9=h5diff_hyper1.h5
set file10=h5diff_hyper2.h5
rem The tool name
set h5diff=h5diff%2
rem The path of the tool binary
set h5diff_bin=%CD%\..\%h5diff%\%1\%h5diff%
set /a nerrors=0
set verbose=yes
rem default to run h5diff tests
set pmode=
if not exist ..\testfiles mkdir ..\testfiles
rem Parse options
rem On Windows, we don't parse, because we only want to worry about
rem debug/release and dll --SJW 9/5/07
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=%test_msg%
echo.%test_msg:~0,69% %1
exit /b
rem Function STDOUT_FILTER isn't technically needed on Windows, because this
rem script will never run on platforms that require it. However, include empty
rem interface for consistency. --SJW 8/22/07
:stdout_filter
exit /b
rem Function STDERR_FILTER isn't technically needed on Windows, because this
rem script will never run on platforms that require it. However, include empty
rem interface for consistency. --SJW 8/22/07
:stderr_filter
exit /b
rem Run a test and print PASS or *FAIL*. If a test fails then increment
rem the `nerrors' global variable and (if verbose is set) display the
rem difference between the actual output and the expected output. The
rem expected output is given as the first argument to this function and
rem the actual output file is calculated by replacing the `.ddl' with
rem `.out'. The actual output is not removed if HDF5_NOCLEANUP has a
rem non-zero value.
rem
:tooltest
set expect=%CD%\..\testfiles\%1
set actual=%CD%\..\testfiles\%~n1.out
set actual_err=%CD%\..\testfiles\~n1.err
set actual_sav=%actual%-sav
set actual_err_sav=%actual_err%-sav
rem We define %params% here because Windows `shift` command doesn't affect
rem the %* variable. --SJW 8/22/07
set params=
for /f "tokens=2*" %%a in ("%*") do (
if "%%b"=="" (
set params=%%a
) else (
set params=%%a %%b
)
)
rem Parallel mode not actually supported, but included for consistency.
if defined pmode (
rem do nothing
)
rem Run test.
(
echo.#############################
rem Remove quotes here, because Linux 'echo' command strips them
echo.Expected output for 'h5diff %params:"=%'
echo.#############################
pushd ..\testfiles
%h5diff_bin% %params%
popd
) > %actual% 2> %actual_err%
rem save actual and actual_err in case they are needed later.
copy /y %actual% %actual_sav% > nul
call :stdout_filter %actual%
copy /y %actual_err% %actual_err_sav% > nul
call :stderr_filter %actual_err%
type %actual_err% >> %actual%
if not exist %expect% (
rem Create the expect file if it doesn't yet exist.
call :testing CREATED %h5diff% %params%
copy /y %actual% %expect% > nul
) else (
fc /w %expect% %actual% | find "FC: no diff" > nul
if !errorlevel! equ 0 (
call :testing PASSED %h5diff% %params%
) else (
call :testing *FAILED* %h5diff% %params%
echo. Expected result ^(%expect%^) differs from actual result ^(%actual%^)
set /a nerrors=!nerrors!+1
if "yes"=="%verbose%" fc /w %actual% %expect%
)
)
rem Clean up output file
if not defined hdf5_nocleanup (
del /f %actual% %actual_err% %actual_sav% %actual_err_sav%
)
exit /b
rem Print a "SKIP" message
:skip
call :testing -SKIP- %h5diff% %*
exit /b
:main
rem ############################################################################
rem ############################################################################
rem # T H E T E S T S ###
rem ############################################################################
rem ############################################################################
rem ############################################################################
rem # Common usage
rem ############################################################################
rem 1.0
call :tooltest h5diff_10.txt -h
rem 1.1 normal mode
call :tooltest h5diff_11.txt %file1% %file2%
rem 1.2 normal mode with objects
call :tooltest h5diff_12.txt %file1% %file2% g1/dset1 g1/dset2
rem 1.3 report mode
call :tooltest h5diff_13.txt %file1% %file2% -r
rem 1.4 report mode with objects
call :tooltest h5diff_14.txt %file1% %file2% -r g1/dset1 g1/dset2
rem 1.5 with -d
call :tooltest h5diff_15.txt %file1% %file2% -r -d 5 g1/dset3 g1/dset4
rem 1.6.1 with -p (int)
call :tooltest h5diff_16_1.txt %file1% %file1% -v -p 0.02 g1/dset5 g1/dset6
rem 1.6.2 with -p (unsigned long_long)
call :tooltest h5diff_16_2.txt %file1% %file1% -v -p 0.02 g1/dset7 g1/dset8
rem 1.6.3 with -p (double)
call :tooltest h5diff_16_3.txt %file1% %file1% -v -p 0.02 g1/dset9 g1/dset10
rem 1.7 verbose mode
call :tooltest h5diff_17.txt %file1% %file2% -v
rem 1.8 quiet mode
call :tooltest h5diff_18.txt %file1% %file2% -q
rem ##############################################################################
rem # not comparable types
rem ##############################################################################
rem 2.0
call :tooltest h5diff_20.txt %file3% %file3% -v dset g1
rem 2.1
call :tooltest h5diff_21.txt %file3% %file3% -v dset l1
rem 2.2
call :tooltest h5diff_22.txt %file3% %file3% -v dset t1
rem ##############################################################################
rem # compare groups, types, links (no differences and differences)
rem ##############################################################################
rem 2.3
call :tooltest h5diff_23.txt %file3% %file3% -v g1 g1
rem 2.4
call :tooltest h5diff_24.txt %file3% %file3% -v t1 t1
rem 2.5
call :tooltest h5diff_25.txt %file3% %file3% -v l1 l1
rem 2.6
call :tooltest h5diff_26.txt %file3% %file3% -v g1 g2
rem 2.7
call :tooltest h5diff_27.txt %file3% %file3% -v t1 t2
rem 2.8
call :tooltest h5diff_28.txt %file3% %file3% -v l1 l2
rem ##############################################################################
rem # Dataset datatypes
rem ##############################################################################
rem 5.0
call :tooltest h5diff_50.txt %file4% %file4% -v dset0a dset0b
rem 5.1
call :tooltest h5diff_51.txt %file4% %file4% -v dset1a dset1b
rem 5.2
call :tooltest h5diff_52.txt %file4% %file4% -v dset2a dset2b
rem 5.3
call :tooltest h5diff_53.txt %file4% %file4% -v dset3a dset4b
rem 5.4
call :tooltest h5diff_54.txt %file4% %file4% -v dset4a dset4b
rem 5.5
call :tooltest h5diff_55.txt %file4% %file4% -v dset5a dset5b
rem 5.6
call :tooltest h5diff_56.txt %file4% %file4% -v dset6a dset6b
rem 5.7
call :tooltest h5diff_57.txt %file4% %file4% -v dset7a dset7b
rem 5.8 (region reference)
call :tooltest h5diff_58.txt %file7% %file8% -v refreg
rem ##############################################################################
rem # Error messages
rem ##############################################################################
rem 6.0: Check if the command line number of arguments is less than 3
call :tooltest h5diff_600.txt %file1%
rem 6.1: Check for invalid options
call :tooltest h5diff_601.txt %file1% %file2% -x
rem ##############################################################################
rem # -d
rem ##############################################################################
rem 6.2: no value
call :tooltest h5diff_602.txt %file1% %file2% -d g1/dset3 g1/dset4
rem 6.3: negative value
call :tooltest h5diff_603.txt %file1% %file2% -d -4 g1/dset3 g1/dset4
rem 6.4: zero
call :tooltest h5diff_604.txt %file1% %file2% -d 0 g1/dset3 g1/dset4
rem 6.5: non number
call :tooltest h5diff_605.txt %file1% %file2% -d u g1/dset3 g1/dset4
rem 6.6: hexadecimal
call :tooltest h5diff_606.txt %file1% %file2% -d 0x1 g1/dset3 g1/dset4
rem 6.7: string
call :tooltest h5diff_607.txt %file1% %file2% -d "1" g1/dset3 g1/dset4
rem 6.8: repeated option
call :tooltest h5diff_608.txt %file1% %file2% -d 1 -d 2 g1/dset3 g1/dset4
rem 6.9: number larger than biggest difference
call :tooltest h5diff_609.txt %file1% %file2% -d 200 g1/dset3 g1/dset4
rem 6.10: number smaller than smallest difference
call :tooltest h5diff_610.txt %file1% %file2% -d 1 g1/dset3 g1/dset4
rem ##############################################################################
rem # -p
rem ##############################################################################
rem 6.11: no value
call :tooltest h5diff_611.txt %file1% %file2% -r -p g1/dset3 g1/dset4
rem 6.12: negative value
call :tooltest h5diff_612.txt %file1% %file2% -p -4 g1/dset3 g1/dset4
rem 6.13: zero
call :tooltest h5diff_613.txt %file1% %file2% -p 0 g1/dset3 g1/dset4
rem 6.14: non number
call :tooltest h5diff_614.txt %file1% %file2% -p u g1/dset3 g1/dset4
rem 6.15: hexadecimal
call :tooltest h5diff_615.txt %file1% %file2% -p 0x1 g1/dset3 g1/dset4
rem 6.16: string
call :tooltest h5diff_616.txt %file1% %file2% -p "0.21" g1/dset3 g1/dset4
rem 6.17: repeated option
call :tooltest h5diff_617.txt %file1% %file2% -p 0.21 -p 0.22 g1/dset3 g1/dset4
rem 6.18: number larger than biggest difference
call :tooltest h5diff_618.txt %file1% %file2% -p 2 g1/dset3 g1/dset4
rem 6.19: number smaller than smallest difference
call :tooltest h5diff_619.txt %file1% %file2% -p 0.005 g1/dset3 g1/dset4
rem ##############################################################################
rem # -n
rem ##############################################################################
rem 6.20: no value
call :tooltest h5diff_620.txt %file1% %file2% -n g1/dset3 g1/dset4
rem 6.21: negative value
call :tooltest h5diff_621.txt %file1% %file2% -n -4 g1/dset3 g1/dset4
rem 6.22: zero
call :tooltest h5diff_622.txt %file1% %file2% -n 0 g1/dset3 g1/dset4
rem 6.23: non number
call :tooltest h5diff_623.txt %file1% %file2% -n u g1/dset3 g1/dset4
rem 6.24: hexadecimal
call :tooltest h5diff_624.txt %file1% %file2% -n 0x1 g1/dset3 g1/dset4
rem 6.25: string
call :tooltest h5diff_625.txt %file1% %file2% -n "2" g1/dset3 g1/dset4
rem 6.26: repeated option
call :tooltest h5diff_626.txt %file1% %file2% -n 2 -n 3 g1/dset3 g1/dset4
rem 6.27: number larger than biggest difference
call :tooltest h5diff_627.txt %file1% %file2% -n 200 g1/dset3 g1/dset4
rem 6.28: number smaller than smallest difference
call :tooltest h5diff_628.txt %file1% %file2% -n 1 g1/dset3 g1/dset4
rem 6.29 non valid files
call :tooltest h5diff_629.txt file1.h6 file2.h6
rem ##############################################################################
rem 7. attributes
rem ##############################################################################
call :tooltest h5diff_70.txt %file5% %file6% -v
rem ##############################################################################
rem 8. all dataset datatypes
rem ##############################################################################
call :tooltest h5diff_80.txt %file7% %file8% -v
rem 9. compare a file with itself
call :tooltest h5diff_90.txt %file2% %file2%
rem 10. read by hyperslab, print indexes
call :tooltest h5diff_100.txt %file9% %file10% -v
rem 11. floating point comparison
rem Not tested on Windows due to difference in formatting of scientific
rem notation --SJW 8/23/07
rem call :tooltest h5diff_101.txt %file1% %file1% g1/d1 g1/d2 -v
rem call :tooltest h5diff_102.txt %file1% %file1% g1/fp1 g1/fp2 -v
rem ##############################################################################
rem # END
rem ##############################################################################
if %nerrors% equ 0 (
echo.All %h5diff% tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,530 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5dump tool
rem
rem Created: Scott Wegner, 8/23/07
rem Modified: Scott Wegner, 8/27/07
rem
setlocal enabledelayedexpansion
pushd %~dp0
set h5pubconf=%CD%\..\..\src\h5pubconf.h
rem Determine which filters are available
rem On Windows, the function :detect_filter sets these for us
call :detect_filter szip
call :detect_filter deflate
call :detect_filter shuffle
call :detect_filter fletcher32
call :detect_filter nbit
call :detect_filter scaleoffset
rem The tool name
set dumper=h5dump%2
rem The path of the tool library
set dumper_bin=%CD%\..\%dumper%\%1\%dumper%
set testdir=%CD%\..\testfiles
rem The h5diff tool name
set h5diff=..\h5diff%2\%1\h5diff%2
rem The path of the h5diff tool binary
set h5diff_bin=%CD%\%h5diff%
rem The h5import tool name
set h5import=..\h5import%2\%1\h5import%2
rem The path of the h5import tool binary
set h5import_bin=%CD%\%h5import%
set nerrors=0
set verbose=yes
if not exist %testdir% mkdir %testdir%
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing %dumper%
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
rem We need to replace PERCENT-ZERO here with "%0" for the tfamily test.
rem --SJW 8/24/07
set test_msg=!test_msg:PERCENT-ZERO=%%0!
echo.%test_msg:~0,69% %1
exit /b
rem Run a test and print PASS or *FAIL*. If a test fails then increment
rem the `nerrors' global variable and (if $verbose is set) display the
rem difference between the actual output and the expected output. The
rem expected output is given as the first argument to this function and
rem the actual output file is calculated by replacing the `.ddl' with
rem `.out'. The actual output is not removed if $HDF5_NOCLEANUP has a
rem non-zero value.
rem
:tooltest
set expect=%CD%\..\testfiles\%1
set actual=%CD%\..\testfiles\%~n1.out
set actual_err=%CD%\..\testfiles\%~n1.err
rem We define %params% here because Windows `shift` command doesn't affect
rem the %* variable. --SJW 8/23/07
set params=%*
rem If there is not 2nd parameter, that means we have no filename, which
rem implies that we are on the "tnofilename" test. Make sure we remove the
rem expected output from the params, and add a space. --SJW 8/27/07
if "%2"=="" (
set params=
) else (
set params=!params:* =!
)
rem Run test.
rem On Linux, we synchronize the expected and actual output by removing the
rem 3-line header from the expected. There is no easy way to do this on
rem Windows, so we will instead add this header to our actual. --SJW 8/24/07
(
rem We need to replace PERCENT-ZERO here with "%0" for the tfamily test.
rem Also remove quotes here, because Linux 'echo' command strips them.
rem --SJW 8/24/07
set params_echo=!params:PERCENT-ZERO=%%0!
echo.#############################
echo.Expected output for 'h5dump !params_echo:"=!'
echo.#############################
pushd %CD%\..\testfiles
%dumper_bin% !params:PERCENT-ZERO=%%0!
popd
) > %actual% 2> %actual_err%
type %actual_err% >> %actual%
if not exist %expect% (
call :testing *FAILED* %params%
echo. %expect% missing
set /a nerrors=!nerrors!+1
) else (
rem On Linux, this is where we parse the actual output. On Windows, we
rem don't. See note above. --SJW 8/24/07
fc /w %expect% %actual% | find "FC: no diff" > nul
if !errorlevel! equ 0 (
call :testing PASSED %params%
) else (
call :testing *FAILED* %params%
echo. Expected results ^(*.ddl^) differs from actual results ^(*.out^)
set /a nerrors=!nerrors!+1
if "yes"=="%verbose%" fc /w %expect% %actual%
)
)
rem Clean up output file
if not defined HDF5_NOCLEANUP del /f %actual% %actual_err%
exit /b
rem Print a "SKIP" message
:skip
call :testing -SKIP- %*
exit /b
rem Print a line-line message left justified in a field of 70 characters
rem
:print_h5diff
set test_msg=Running h5diff
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=%test_msg%
echo.%test_msg:~0,69% %1
exit /b
rem Call the h5diff tool
rem
:difftest
(
pushd %CD%\..\testfiles
%h5diff_bin% %* -q
popd
)
if %errorlevel% neq 0 (
call :print_h5diff *FAILED* %*
set /a nerrors=!nerrors!+1
) else (
call :print_h5diff PASSED %*
)
exit /b
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Verifying".
rem
:print_h5import
set test_msg=Running h5import
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=%test_msg%
echo.%test_msg:~0,69% %1
exit /b
rem Call the h5import tool
rem
:importtest
rem Remove the output hdf5 file if it exists
set hdf5_file=%CD%\..\testfiles\%5
if exist %hdf5_file% (
del /f %hdf5_file%
)
(
pushd %CD%\..\testfiles
%h5import_bin% %*
popd
)
if %errorlevel% neq 0 (
call :print_h5import *FAILED* %*
set /a nerrors=!nerrors!+1
) else (
call :print_h5import PASSED %*
)
exit /b
rem This is a Windows-specific function that detects if the filter passed
rem should be enabled for this test script. It searches H5pubconf.h for the
rem string "#define H5_HAVE_FILTER_%1" and sets the variable "use_filter_%1"
rem accordingly. On other platforms, this variable is set in the Makefile.
rem If we find a better way to test this in the future, we should use it.
rem --SJW 9/4/07
:detect_filter
findstr /b /i /c:"#define H5_HAVE_FILTER_%1" %h5pubconf% > nul
if %errorlevel% equ 0 (
set use_filter_%1=yes
) else (
set use_filter_%1=no
)
exit /b
rem ############################################################################
rem ############################################################################
rem # T H E T E S T S ###
rem ############################################################################
rem ############################################################################
:main
rem test for displaying groups
call :tooltest tgroup-1.ddl tgroup.h5
rem test for displaying the selected groups
call :tooltest tgroup-2.ddl --group=/g2 --group / -g /y tgroup.h5
rem test for displaying simple space datasets
call :tooltest tdset-1.ddl tdset.h5
rem test for displaying selected datasets
call :tooltest tdset-2.ddl -H -d dset1 -d /dset2 --dataset=dset3 tdset.h5
rem test for displaying attributes
call :tooltest tattr-1.ddl tattr.h5
rem test for displaying the selected attributes of string type and scalar space
call :tooltest tattr-2.ddl -a /attr1 --attribute /attr4 --attribute=/attr5 tattr.h5
rem test for header and error messages
call :tooltest tattr-3.ddl --header -a /attr2 --attribute=/attr tattr.h5
rem test for displaying attributes in shared datatype (also in group and dataset)
call :tooltest tnamed_dtype_attr.ddl tnamed_dtype_attr.h5
rem test for displaying soft links and user-defined links
call :tooltest tslink-1.ddl tslink.h5
call :tooltest tudlink-1.ddl tudlink.h5
rem test for displaying the selected link
call :tooltest tslink-2.ddl -l slink2 tslink.h5
call :tooltest tudlink-2.ddl -l udlink2 tudlink.h5
rem tests for hard links
call :tooltest thlink-1.ddl thlink.h5
call :tooltest thlink-2.ddl -d /g1/dset2 --dataset /dset1 --dataset=/g1/g1.1/dset3 thlink.h5
call :tooltest thlink-3.ddl -d /g1/g1.1/dset3 --dataset /g1/dset2 --dataset=/dset1 thlink.h5
call :tooltest thlink-4.ddl -g /g1 thlink.h5
call :tooltest thlink-5.ddl -d /dset1 -g /g2 -d /g1/dset2 thlink.h5
rem tests for compound data types
call :tooltest tcomp-1.ddl tcompound.h5
rem test for named data types
call :tooltest tcomp-2.ddl -t /type1 --datatype /type2 --datatype=/group1/type3 tcompound.h5
rem test for unamed type
call :tooltest tcomp-3.ddl -t /#6632:0 -g /group2 tcompound.h5
rem test complicated compound datatype
call :tooltest tcomp-4.ddl tcompound_complex.h5
rem test for the nested compound type
call :tooltest tnestcomp-1.ddl tnestedcomp.h5
rem test for options
call :tooltest tall-1.ddl tall.h5
call :tooltest tall-2.ddl --header -g /g1/g1.1 -a attr2 tall.h5
call :tooltest tall-3.ddl -d /g2/dset2.1 -l /g1/g1.2/g1.2.1/slink tall.h5
rem test for loop detection
call :tooltest tloop-1.ddl tloop.h5
rem test for string
call :tooltest tstr-1.ddl tstr.h5
call :tooltest tstr-2.ddl tstr2.h5
rem test for file created by Lib SAF team
call :tooltest tsaf.ddl tsaf.h5
rem test for file with variable length data
call :tooltest tvldtypes1.ddl tvldtypes1.h5
call :tooltest tvldtypes2.ddl tvldtypes2.h5
call :tooltest tvldtypes3.ddl tvldtypes3.h5
call :tooltest tvldtypes4.ddl tvldtypes4.h5
call :tooltest tvldtypes5.ddl tvldtypes5.h5
rem test for file with variable length string data
call :tooltest tvlstr.ddl tvlstr.h5
rem test for files with array data
call :tooltest tarray1.ddl tarray1.h5
call :tooltest tarray2.ddl tarray2.h5
call :tooltest tarray3.ddl tarray3.h5
call :tooltest tarray4.ddl tarray4.h5
call :tooltest tarray5.ddl tarray5.h5
call :tooltest tarray6.ddl tarray6.h5
call :tooltest tarray7.ddl tarray7.h5
rem test for files with empty data
call :tooltest tempty.ddl tempty.h5
rem test for files with groups that have comments
call :tooltest tgrp_comments.ddl tgrp_comments.h5
rem test the --filedriver flag
call :tooltest tsplit_file.ddl --filedriver=split tsplit_file
rem On Windows, we pass "PERCENT-ZERO", and let other calls replace it with
rem the "%0". We cannot pass "%0" directly because Windows interprets it as
rem the name of the script. --SJW 8/24/07
call :tooltest tfamily.ddl --filedriver=family tfamilyPERCENT-ZERO5d.h5
call :tooltest tmulti.ddl --filedriver=multi tmulti
rem test for files with group names which reach > 1024 bytes in size
call :tooltest tlarge_objname.ddl -w157 tlarge_objname.h5
rem test '-A' to suppress data but print attr's
call :tooltest tall-2A.ddl -A tall.h5
rem test '-r' to print attributes in ASCII instead of decimal
call :tooltest tall-2B.ddl -A -r tall.h5
rem test Subsetting
call :tooltest tall-4s.ddl --dataset=/g1/g1.1/dset1.1.1 --start=1,1 --stride=2,3 --count=3,2 --block=1,1 tall.h5
call :tooltest tall-5s.ddl -d "/g1/g1.1/dset1.1.2[0;2;10;]" tall.h5
call :tooltest tdset-3s.ddl -d "/dset1[1,1;;;]" tdset.h5
rem block
rem call :tooltest tdset2-1s.ddl -d "/dset1[;3,2;4,4;1,4]" tdset2.h5
rem test printing characters in ASCII instead of decimal
call :tooltest tchar1.ddl -r tchar.h5
rem test failure handling
rem Missing file name
call :tooltest tnofilename.ddl
rem rev. 2004
rem tests for super block
call :tooltest tboot1.ddl -H -B -d dset tfcontents1.h5
call :tooltest tboot2.ddl -B tfcontents2.h5
rem test -p with a non existing dataset
call :tooltest tperror.ddl -p -d bogus tfcontents1.h5
rem test for file contents
call :tooltest tcontents.ddl -n tfcontents1.h5
rem tests for storage layout
rem compact
call :tooltest tcompact.ddl -H -p -d compact tfilters.h5
rem contiguous
call :tooltest tcontiguos.ddl -H -p -d contiguous tfilters.h5
rem chunked
call :tooltest tchunked.ddl -H -p -d chunked tfilters.h5
rem external
call :tooltest texternal.ddl -H -p -d external tfilters.h5
rem fill values
call :tooltest tfill.ddl -p tfvalues.h5
rem several datatype, with references , print path
call :tooltest treference.ddl tattr2.h5
rem escape/not escape non printable characters
call :tooltest tstringe.ddl -e tstr3.h5
call :tooltest tstring.ddl tstr3.h5
rem char data as ASCII with non escape
call :tooltest tstring2.ddl -r -d str4 tstr3.h5
rem array indices print/not print
call :tooltest tindicesyes.ddl taindices.h5
call :tooltest tindicesno.ddl -y taindices.h5
rem array indices with subsetting
call :tooltest tindicessub1.ddl -d 1d -s 3 -c 40 taindices.h5
call :tooltest tindicessub2.ddl -d 2d -s 1,3 -c 6,4 taindices.h5
call :tooltest tindicessub3.ddl -d 3d -s 0,1,3 -c 2,6,4 taindices.h5
call :tooltest tindicessub4.ddl -d 4d -s 0,0,1,3 -c 2,2,6,4 taindices.h5
rem tests for filters
rem SZIP
set option=-H -p -d szip tfilters.h5
if not "%use_filter_szip%"=="yes" (
call :skip %option%
) else (
call :tooltest tszip.ddl %option%
)
rem deflate
set option=-H -p -d deflate tfilters.h5
if not "%use_filter_deflate%"=="yes" (
call :skip %option%
) else (
call :tooltest tdeflate.ddl %option%
)
rem shuffle
set option=-H -p -d shuffle tfilters.h5
if not "%use_filter_shuffle%"=="yes" (
call :skip %option%
) else (
call :tooltest tshuffle.ddl %option%
)
rem fletcher32
set option=-H -p -d fletcher32 tfilters.h5
if not "%use_filter_fletcher32%"=="yes" (
call :skip %option%
) else (
call :tooltest tfletcher32.ddl %option%
)
rem nbit
set option=-H -p -d nbit tfilters.h5
if not "%use_filter_nbit%"=="yes" (
call :skip %option%
) else (
call :tooltest tnbit.ddl %option%
)
rem scaleoffset
set option=-H -p -d scaleoffset tfilters.h5
if not "%use_filter_scaleoffset%"=="yes" (
call :skip %option%
) else (
call :tooltest tscaleoffset.ddl %option%
)
rem all
set option=-H -p -d all tfilters.h5
rem Windows doesn't have "or" for compound conditional, so we must check
rem each one individually. --SJW 8/24/07
if not "%use_filter_fletcher32%"=="yes" (
call :skip %option%
) else if not "%use_filter_szip%"=="yes" (
call :skip %option%
) else if not "%use_filter_deflate%"=="yes" (
call :skip %option%
) else if not "%use_filter_shuffle%"=="yes" (
call :skip %option%
) else if not "%use_filter_nbit%"=="yes" (
call :skip %option%
) else if not "%use_filter_scaleoffset%"=="yes" (
call :skip %option%
) else (
call :tooltest tallfilters.ddl %option%
)
rem user defined
call :tooltest tuserfilter.ddl -H -p -d myfilter tfilters.h5
rem test for displaying objects with very long names
call :tooltest tlonglinks.ddl tlonglinks.h5
rem dimensions over 4GB, print boundary
call :tooltest tbigdims.ddl -d dset4gb -s 4294967284 -c 22 tbigdims.h5
rem hyperslab read
call :tooltest thyperslab.ddl thyperslab.h5
rem
rem test for displaying dataset and attribute of null space
call :tooltest tnullspace.ddl tnullspace.h5
rem test for long double (some systems do not have long double)
rem call :tooltest tldouble.ddl tldouble.h5
rem test for vms
call :tooltest tvms.ddl tvms.h5
rem test for binary output
rem Don't use %testdir% here, because we are already in the correct
rem directory, and using it only gets in the way of the output formatting.
rem --SJW 8/24/07
call :tooltest tbin1.ddl -d array -o out1.bin -b LE tbinary.h5
call :tooltest tbin2.ddl -d float -o out2.bin -b BE tbinary.h5
rem the MEMORY test can be validated with h5import/h5diff
call :tooltest tbin3.ddl -d integer -o out3.bin -b MEMORY tbinary.h5
call :importtest out3.bin -c out3.h5import -o out3.h5
call :difftest tbinary.h5 out3.h5 /integer /integer
call :tooltest tbin4.ddl -d double -o out4.bin -b FILE tbinary.h5
rem Clean up binary output files
if not defined hdf5_nocleanup (
for /l %%a in (1,1,4) do del /f %testdir%\out%%a.bin
del /f %testdir%\out3.h5
)
rem test for dataset region references
call :tooltest tregref.ddl tdatareg.h5
if %nerrors% equ 0 (
echo.All %dumper% tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,207 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5dump tool
rem
rem Created: Scott Wegner, 8/27/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem set h5_lone_colon=%h5_lone_colon%
rem The tool name
set dumper=h5dump%2
rem The path of the tool library
set dumper_bin=%CD%\..\%dumper%\%1\%dumper%
set nerrors=0
set verbose=yes
if not exist ..\testfiles mkdir ..\testfiles
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing %dumper%
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=!test_msg!
echo.%test_msg:~0,69% %1
exit /b
rem Run a test and print PASS or *FAIL*. If a test fails then increment
rem the `nerrors' global variable and (if $verbose is set) display the
rem difference between the actual output and the expected output. The
rem expected output is given as the first argument to this function and
rem the actual output file is calculated by replacing the `.ddl' with
rem `.out'. The actual output is not removed if HDF5_NOCLEANUP has a
rem non-zero value.
rem
:tooltest
set expect=%CD%\..\testfiles\%1
set actual=%CD%\..\testfiles\%~n1.out
set actual_err=%CD%\..\testfiles\%~n1.err
rem We define %params% here because Windows `shift` command doesn't affect
rem the %* variable. --SJW 8/23/07
set params=%*
set params=%params:* =%
rem Run test.
(
rem Remove quotes here, because Linux 'echo' command strips them.
rem --SJW 8/24/07
echo.#############################
echo.Expected output for 'h5dump !params:"=!'
echo.#############################
pushd %CD%\..\testfiles
%dumper_bin% !params!
popd
) > %actual% 2> %actual_err%
type %actual_err% >> %actual%
if not exist %expect% (
call :testing CREATED %params%
copy %actual% %expect% > nul
) else (
fc /w %expect% %actual% | find "FC: no diff" > nul
if !errorlevel! equ 0 (
call :testing PASSED %params%
) else (
call :testing *FAILED* %params%
echo. Expected results ^(*.ddl^) differs from actual results ^(*.out^)
set /a nerrors=!nerrors!+1
if "yes"=="%verbose%" fc /w %expect% %actual%
)
)
rem Clean up output file
if not defined HDF5_NOCLEANUP del /f %actual% %actual_err%
exit /b
rem Print a "SKIP" message
:skip
call :testing -SKIP- %*
exit /b
rem ############################################################################
rem ############################################################################
rem # T H E T E S T S ###
rem ############################################################################
rem ############################################################################
:main
rem test XML
call :tooltest tall.h5.xml --xml tall.h5
call :tooltest tattr.h5.xml --xml tattr.h5
call :tooltest tbitfields.h5.xml --xml tbitfields.h5
call :tooltest tcompound.h5.xml --xml tcompound.h5
call :tooltest tcompound2.h5.xml --xml tcompound2.h5
call :tooltest tdatareg.h5.xml --xml tdatareg.h5
call :tooltest tdset.h5.xml --xml tdset.h5
call :tooltest tdset2.h5.xml --xml tdset2.h5
call :tooltest tenum.h5.xml --xml tenum.h5
call :tooltest tgroup.h5.xml --xml tgroup.h5
call :tooltest thlink.h5.xml --xml thlink.h5
call :tooltest tloop.h5.xml --xml tloop.h5
call :tooltest tloop2.h5.xml --xml tloop2.h5
call :tooltest tmany.h5.xml --xml tmany.h5
call :tooltest tnestedcomp.h5.xml --xml tnestedcomp.h5
call :tooltest tcompound_complex.h5.xml --xml tcompound_complex.h5
call :tooltest tobjref.h5.xml --xml tobjref.h5
call :tooltest topaque.h5.xml --xml topaque.h5
call :tooltest tslink.h5.xml --xml tslink.h5
call :tooltest tudlink.h5.xml --xml tudlink.h5
call :tooltest textlink.h5.xml --xml textlink.h5
call :tooltest tstr.h5.xml --xml tstr.h5
call :tooltest tstr2.h5.xml --xml tstr2.h5
call :tooltest tref.h5.xml --xml tref.h5
call :tooltest tname-amp.h5.xml --xml tname-amp.h5
call :tooltest tname-apos.h5.xml --xml tname-apos.h5
call :tooltest tname-gt.h5.xml --xml tname-gt.h5
call :tooltest tname-lt.h5.xml --xml tname-lt.h5
call :tooltest tname-quot.h5.xml --xml tname-quot.h5
call :tooltest tname-sp.h5.xml --xml tname-sp.h5
call :tooltest tstring.h5.xml --xml tstring.h5
call :tooltest tstring-at.h5.xml --xml tstring-at.h5
call :tooltest tref-escapes.h5.xml --xml tref-escapes.h5
call :tooltest tref-escapes-at.h5.xml --xml tref-escapes-at.h5
call :tooltest tnodata.h5.xml --xml tnodata.h5
call :tooltest tarray1.h5.xml --xml tarray1.h5
call :tooltest tarray2.h5.xml --xml tarray2.h5
call :tooltest tarray3.h5.xml --xml tarray3.h5
call :tooltest tarray6.h5.xml --xml tarray6.h5
call :tooltest tarray7.h5.xml --xml tarray7.h5
call :tooltest tvldtypes1.h5.xml --xml tvldtypes1.h5
call :tooltest tvldtypes2.h5.xml --xml tvldtypes2.h5
call :tooltest tvldtypes3.h5.xml --xml tvldtypes3.h5
call :tooltest tvldtypes4.h5.xml --xml tvldtypes4.h5
call :tooltest tvldtypes5.h5.xml --xml tvldtypes5.h5
call :tooltest tvlstr.h5.xml --xml tvlstr.h5
call :tooltest tsaf.h5.xml --xml tsaf.h5
call :tooltest tempty.h5.xml --xml tempty.h5
call :tooltest tnamed_dtype_attr.h5.xml --xml tnamed_dtype_attr.h5
rem Test dataset and attribute of null space. Commented out:
rem wait until the XML schema is updated for null space.
rem call :tooltest tnullspace.h5.xml --xml tnulspace.h5
rem other options for xml
call :tooltest tempty-dtd.h5.xml --xml --use-dtd tempty.h5
call :tooltest tempty-dtd-2.h5.xml --xml -u tempty.h5
rem The lone colon here confuses some systems (Cray X1). Skip
rem it if configure detects that this is a problem.
if not "X$H5_LONE_COLON"=="Xno" (
call :tooltest tempty-nons.h5.xml --xml -X ":" tempty.h5
) else (
call :skip tempty-nons.h5.xml --xml -X ":" tempty.h5
)
call :tooltest tempty-nons-2.h5.xml --xml --xml-ns=":" tempty.h5
rem Some of these combinations are syntactically correct but
rem the URLs are dummies
call :tooltest tempty-ns.h5.xml --xml -X "thing:" tempty.h5
call :tooltest tempty-ns-2.h5.xml --xml --xml-ns="thing:" tempty.h5
call :tooltest tempty-nons-uri.h5.xml --xml --xml-ns=":" --xml-dtd="http://somewhere.net" tempty.h5
call :tooltest tempty-dtd-uri.h5.xml --xml --use-dtd --xml-dtd="http://somewhere.net" tempty.h5
call :tooltest tall-2A.h5.xml --xml -A tall.h5
if %nerrors% equ 0 (
echo.All %dumper% tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,172 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem HDF Utilities Test script
rem
rem Created: Scott Wegner, 8/27/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem The tool name
set h5import=h5import%2
rem The path of the tool binary
set h5import_bin=%CD%\..\%h5import%\%1\%h5import%.exe
rem The h5importtest tool name
set h5importtest=..\testfiles\h5importtst\%1\h5importtst
rem The path of the h5importtst tool binary
set h5importtest_bin=%CD%\%h5importtest%.exe
rem The h5dump tool name
set h5dump=..\h5dump%2\%1\h5dump%2
rem The path of the h5dump tool binary
set h5dump_bin=%CD%\%h5dump%
rem initialize errors variables
set errors=0
goto main
:testing
set test_msg=Testing
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
rem We need to replace PERCENT-ZERO here with "%0" for the tfamily test.
rem --SJW 8/24/07
set test_msg=!test_msg:PERCENT-ZERO=%%0!
echo.%test_msg:~0,69% %1
exit /b
:tooltest
set err=0
%h5import_bin% %*
%h5dump_bin% %5 > log2
pushd tmp_testfiles
%h5dump_bin% %5 > log1
popd
fc /w tmp_testfiles\log1 log2 | find "FC: no diff" > nul
if %errorlevel% neq 0 set err=1
del /f log2 tmp_testfiles\log1
if "%err%"=="1" (
set /a errors=!errors!+1
call :testing *FAILED* %testing%
) else (
call :testing: PASSED %testing%
)
exit /b
:main
echo.
echo.==============================
echo.H5IMPORT tests started
echo.==============================
if exist %h5import_bin% (
if exist %h5importtest_bin% (
rem echo.** Testing h5import ***
del /f output.h5 log1 tx* b* *.dat 2> nul
if not exist tmp_testfiles mkdir tmp_testfiles
copy /y testfiles\*.h5 tmp_testfiles > nul
%h5importtest_bin%
rem On Linux, they call TESTING here, and output pass/fail from TOOLTEST.
rem On Windows, echo gives a carriage return, so we store the TESTING params
rem and call TESTING from TOOLTEST. --SJW 8/27/07
set testing=ASCII I32 rank 3 - Output BE
call :tooltest txtin32 -c %CD%\testfiles\textin32 -o test1.h5
set testing=ASCII I16 rank 3 - Output LE - CHUNKED - extended
call :tooltest txtin16 -c %CD%\testfiles\textin16 -o test2.h5
set testing=ASCII I8 - rank 3 - Output I16 LE-Chunked+Extended+Compressed
call :tooltest txtin16 -c %CD%\testfiles\textin8 -o test3.h5
set testing=ASCII UI32 - rank 3 - Output BE
call :tooltest %CD%\testfiles\in1 -c %CD%\testfiles\textuin32 -o test4.h5
set testing=ASCII UI16 - rank 2 - Output LE+Chunked+Compressed
call :tooltest %CD%\testfiles\in1 -c %CD%\testfiles\textuin16 -o test5.h5
set testing=ASCII F32 - rank 3 - Output LE
call :tooltest %CD%\testfiles\fp1 -c %CD%\testfiles\textfp32 -o test6.h5
set testing=ASCII F64 - rank 3 - Output BE + CHUNKED+Extended+Compressed
call :tooltest %CD%\testfiles\fp2 -c %CD%\testfiles\textfp64 -o test7.h5
set testing=BINARY F64 - rank 3 - Output LE+CHUNKED+Extended+Compressed
call :tooltest bfp64 -c %CD%\testfiles\conbfp64 -o test8.h5
set testing=BINARY I16 - rank 3 - Output order LE + CHUNKED + extended
call :tooltest bin16 -c %CD%\testfiles\conbin16 -o test9.h5
set testing=BINARY I8 - rank 3 - Output I16LE + Chunked+Extended+Compressed
call :tooltest bin8 -c %CD%\testfiles\conbin8 -o test10.h5
set testing=BINARY I32 - rank 3 - Output BE + CHUNKED
call :tooltest bin32 -c %CD%\testfiles\conbin32 -o test11.h5
set testing=BINARY UI16 - rank 3 - Output byte BE + CHUNKED
call :tooltest buin16 -c %CD%\testfiles\conbuin16 -o test12.h5
set testing=BINARY UI32 - rank 3 - Output LE + CHUNKED
call :tooltest buin32 -c %CD%\testfiles\conbuin32 -o test13.h5
set testing=STR
call :tooltest %CD%\testfiles\txtstr -c %CD%\testfiles\textstr -o teststr.h5
del /f tx* b* *.dat
del /f test*.h5
rmdir /s /q tmp_testfiles
) else (
echo.** h5importtest not avaiable ***
set /a errors=!errors!+1
)
) else (
echo.** h5import not avaiable ***
set /a errors=!errors!+1
)
rem
rem Check error results
if %errors% equ 0 (
echo.======================================
echo. H5IMPORT Utilities tests have passed.
echo.======================================
) else (
echo.======================================
echo. H5IMPORT Utilities tests encountered errors
echo.======================================
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,598 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5jam tool
rem
rem Created: Scott Wegner, 8/27/07
rem Modified:
rem
rem We currently don't build DLL version os h5jam / h5unjam, but the test script
rem is setup to handle it if we ever decide to. --SJW 8/27/07
setlocal enabledelayedexpansion
pushd %~dp0
set h5pubconf=%CD%\..\..\src\h5pubconf.h
rem Determine which filters are available
rem On Windows, the function :detect_filter sets these for us
call :detect_filter szip
call :detect_filter deflate
call :detect_filter shuffle
call :detect_filter fletcher32
rem The dumper to use
set dumper=..\h5dump%2\%1\h5dump%2
rem The path of the dumper binary
set dumper_bin=%CD%\%dumper%
rem Tool to test
set jam=h5jam%2
rem Tool to test
set unjam=h5unjam%2
rem The path of the jam binary
set jam_bin=%CD%\..\%jam%\%1\%jam%
rem The path of the unjam binary
set unjam_bin=%CD%\..\%unjam%\%1\%unjam%
rem The tellub to use
set tellub=..\..\test\tellub%2\%1\tellub%2
rem The path of the tellub binary
set tellub_bin=%CD%\%tellub%
rem The getub to use
set getub=..\..\test\getub%2\%1\getub%2
rem The path of the getub binary
set getub_bin=%CD%\%getub%
set nerrors=0
set verbose=yes
set testfiles=%CD%\..\testfiles
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
rem Replace ARROW_RIGHT with the correct symbol. If it was passed directly,
rem our output would be incorrectly redirected. --SJW 8/27/07
set test_msg=!test_msg:ARROW_RIGHT=^>!
echo.%test_msg:~0,69% %1
exit /b
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Compare".
rem
:compare
set test_msg=Compare
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=!test_msg!
echo.%test_msg:~0,69% %1
exit /b
rem Print a "SKIP" message
:skip
call :testing -SKIP- %*
exit /b
rem
rem COMPARE_FILES a.h5 b.h5
rem Compare two files, skipping the first line. This is used to
rem compare the output of the dumper, skipping the file name which
rem is different.
rem The result is stored in 'compval'.
rem
:compare_files
rem The easiest way to compare 2 files on Windows and skip the first line
rem is to simply filter the first line differences from the output. If the
rem first line is different, FC will also display the second line.
rem --SJW 8/27/07
fc %1 %2 | findstr /v /b /c:"Comparing files" | findstr /v /b /c:"*****" > cmp1
findstr /v /b /c:" 1: " cmp1 | findstr /v /b /c:" 2: " > cmp2
findstr /b /c:" " cmp2 > nul
if %errorlevel% neq 1 (
set cmpval=1
) else (
set cmpval=0
)
del /f cmp1 cmp2
exit /b
rem CLEANUP files
rem Clean up named files
:cleanup
if not defined hdf5_nocleanup (
for %%a in (%*) do (
del /f %%a 2> nul
)
)
exit /b
rem SETUP file tocopy
rem Clone a standard input file in the test directory
rem
:setup
copy /y %1 %2 > nul
exit /b
rem
rem CHECKFILE orig.h5 compar.h5
rem Check that the test file is the same as an original.
rem The two files are dumped with the dumper, and the output
rem compared with COMPARE_FILES.
rem If the files are the same, the test reports " PASSED",
rem otherwise, it reports "*FAILED*"
:checkfile
set expected=%~dpn2.out
set expected_err=%~dpn2.err
set actual=%~n1.out
set actual_err=%~n1.err
%dumper_bin% %1 >%expected% 2>%expected_err%
type %expected_err% >> %expected%
rem dump the test file
%dumper_bin% %2 >%actual% 2>%actual_err%
type %actual_err% >> %actual%
rem compare the two files (ignore line 1)
call :compare_files %actual% %expected%
if "%cmpval%"=="0" (
call :compare PASSED %2 to %1
) else (
call :compare *FAILED* %2 to %1
echo. Expected result ^(*.ddl^) differs from actual result ^(*.out^)
set /a nerrors=!nerrors!+1
if "yes"=="%verbose%" fc %expected% %actual%
)
rem Clean up output files
if not defined hdf5_nocleanup (
del /f %actual% %actual_err%
del /f %expected% %expected_err%
)
exit /b
rem
rem CHECK_UB file.h5 user_block_file origfile.h5
rem
rem Check the user block in 'file.h5' is the same as
rem 'user_block' (allowing for padding).
rem
rem If the original file had a user block before the test
rem then 'compare.h5' is passed. The user block must be extracted
rem and the test file compared to:
rem cat compare_ub user_block_file.
rem
rem This test uses './getub' to extract the user block from
rem 'file.h5', which is compared to the file described above.
rem
rem The result is set in variable 'result1'.
rem
:check_ub_1
set hfile=%1
set ufile=%2
rem check for third argument (the original file)
set origfile=
if not "%3"=="" (
set origfile="%3"
)
rem find the length of the user block to check
for /f "tokens=4" %%a in ('dir /-c %ufile% ^| findstr /v /b /c:" "') do (
set s1=%%a
)
if "%s1%"=="0" (
echo.File %ufile% is empty
set result1=1
)
rem Get the size of the original user block, if any
if defined origfile (
rem 'tellub' calls H5Fget_user_block to get the size
rem of the user block
for /f %%a in ('%tellub_bin% %origfile%') do set s2=%%a
if "!s2!"=="0" (
set size=%s1%
set cmpfile=%ufile%
) else (
set cmpfile=tt2
set /a size=!s2!+%s1%
%getub_bin% -c !s2! %origfile% > !cmpfile!
type %ufile% >> !cmpfile!
)
) else (
rem assume no user block
set s2=0
set size=%s1%
set cmpfile=%ufile%
)
rem Extract 'size' bytes from the front of 'hfile'
rem Compare to 'cmpfile', result is set in result1
set tfile=tt1
%getub_bin% -c %size% %hfile% > %tfile%
fc /w %cmpfile% %tfile% | find "FC: no diff" > nul
if %errorlevel% neq 0 (
fc /w %cmpfile% %file%
set result1=1
) else (
set result1=0
)
rem clean up
del /f %tfile%
if not "%s2%"=="0" (
del /f %cmpfile%
)
exit /b
rem CHECK_NOUB file.h5
rem
rem Check that 'file.h5' has no user block.
rem Setst result2 to 1 if there is a user block (fail), 0 if none (pass)
:check_noub
set hfile=%1
rem call `ubsize` to get the size of the user block
%tellub_bin% %hfile% > tmp.txt
if %errorlevel% neq 0 (
rem error
set result2=1
) else (
for /f %%a in (tmp.txt) do set ubsize=%%a
if "!ubsize!"=="0" (
rem pass
set result2=0
) else (
rem fail
set result2=1
)
)
del /f tmp.txt 2> nul
exit /b
rem JAMTEST user_block file.h5 [--clobber] [ofile.h5]
rem
rem Test the 'jam' tool:
rem 1. figure out the input and output, and the comparision
rem that will be done.
rem 2. call 'jam' with the appropriate arguments
rem 3. check the user block is correct in the output (Check_UB)
rem If the user block is correct, print "PASSED", else "*FAILED*"
:jamtest
set ufile=%1
set ifile=%2
rem the file to test
set compare_test=
rem the comparison to test against
set compare_orig=
set cleanup=
rem sort out the arguments for the test and the check
set do_clobber=no
if "%3"=="--clobber" (
rem clobber overwrites and existing user block
set do_clobber=yes
set clobber=--clobber
set compare_orig=
if "%4"=="" (
rem output goes to infile, compare ubfile to infile
set ofile=
set compare_test=%ifile%
) else (
rem output goes to %4, compare ofile to ubfile
set ofile=%4
set compare_test=!ofile!
)
) else (
set clobber=
rem add user block to existing ub, if any
if "%3"=="" (
rem output goes to infile, compare ubfile to infile
set ofile=
set compare_test=%ifile%
copy /y %ifile% xxofile.h5 > nul
set compare_orig=xxofile.h5
set cleanup=%cleanup% !compare_orig!
) else (
rem output goes to %4, compare ofile to ubfile
set ofile=%3
set compare_test=!ofile!
set compare_orig=%ifile%
)
)
rem call 'jam' with the appropriate arguments
if defined ofile (
%jam_bin% -u %ufile% -i %ifile% -o %ofile% %clobber%
) else (
%jam_bin% -u %ufile% -i %ifile% %clobber%
)
call :check_ub_1 %compare_test% %ufile% %compare_orig%
if "%result1%"=="0" (
if defined ofile (
call :testing PASSED %jam% -u %ufile% -i %ifile% -o %ofile% %clobber%
) else (
call :testing PASSED %jam% -u %ufile% -i %ifile% %clobber%
)
) else (
if defined ofile (
call :testing *FAILED* %jam% -u %ufile% -i %ifile% -o %ofile% %clobber%
) else (
call :testing *FAILED* %jam% -u %ufile% -i %ifile% %clobber%
)
set /a nerrors=%nerrors%+1
)
call :cleanup %cleanup%
exit /b
rem UNJAMTEST file.h5 [- | --delete] ofile
rem
rem Test the 'unjam' tool
rem
rem ##fix the working directory here and in jamtest
:unjamtest
set infile=%1
set ofile=%3
if "%2%"=="-" (
set uofile=uofile
%unjam_bin% -i %infile% -o %ofile% > !uofile!
) else if "%2"=="--delete" (
set uofile=none
%unjam_bin% -i %infile% -o %ofile% --delete
) else (
set uofile=%2
%unjam_bin% -i %infile% -u !uofile! -o %ofile%
)
set result1=0
set result2=0
set cleanup=
if not "%uofile%"=="none" (
rem sets results1
call :check_ub_1 %infile% %uofile%
call :cleanup %uofile%
)
rem sets result2
call :check_noub %ofile%
if "%result1% and %result2%"=="0 and 0" (
if "%2%"=="-" (
rem We use "ARROW_RIGHT" here and replace it in :testing because
rem Windows interprets it as a pipe. --SJW 8/27/07
call :testing PASSED %unjam% -i %infile% -o %ofile% ARROW_RIGHT %uofile%
) else if "%2"=="--delete" (
call :testing PASSED %unjam% -i %infile% -o %ofile% --delete
) else (
call :testing PASSED %unjam% -i %infile% -u %uofile% -o %ofile%
)
) else (
if "%2%"=="-" (
rem We use "ARROW_RIGHT" here and replace it in :testing because
rem Windows interprets it as a pipe. --SJW 8/27/07
call :testing *FAILED* %unjam% -i %infile% -o %ofile% ARROW_RIGHT %uofile%
) else if "%2"=="--delete" (
call :testing *FAILED* %unjam% -i %infile% -o %ofile% --delete
) else (
call :testing *FAILED* %unjam% -i %infile% -u %uofile% -o %ofile%
)
set /a nerrors=%nerrors%+1
)
exit /b
rem This is a Windows-specific function that detects if the filter passed
rem should be enabled for this test script. It searches H5pubconf.h for the
rem string "#define H5_HAVE_FILTER_%1" and sets the variable "use_filter_%1"
rem accordingly. On other platforms, this variable is set in the Makefile.
rem If we find a better way to test this in the future, we should use it.
rem --SJW 9/4/07
:detect_filter
findstr /b /i /c:"#define H5_HAVE_FILTER_%1" %h5pubconf% > nul
if %errorlevel% equ 0 (
set use_filter_%1=yes
) else (
set use_filter_%1=no
)
exit /b
rem ############################################################################
rem ############################################################################
rem # T H E T E S T S ###
rem ############################################################################
rem ############################################################################
:main
call :jamtest %testfiles%\u10.txt %testfiles%\tall.h5 ta2.h5
call :checkfile %testfiles%\tall.h5 ta2.h5
call :cleanup ta2.h5
call :jamtest %testfiles%\u511.txt %testfiles%\tall.h5 ta3.h5
call :checkfile %testfiles%\tall.h5 ta3.h5
call :cleanup ta3.h5
call :jamtest %testfiles%\u512.txt %testfiles%\tall.h5 ta4.h5
call :checkfile %testfiles%\tall.h5 ta4.h5
call :cleanup ta4.h5
call :jamtest %testfiles%\u513.txt %testfiles%\tall.h5 ta5.h5
call :checkfile %testfiles%\tall.h5 ta5.h5
call :cleanup ta5.h5
call :setup %testfiles%\tall.h5 ta.h5
call :jamtest %testfiles%\u10.txt ta.h5
call :checkfile %testfiles%\tall.h5 ta.h5
call :setup %testfiles%\tall.h5 ta.h5
call :jamtest %testfiles%\u511.txt ta.h5
call :checkfile %testfiles%\tall.h5 ta.h5
call :setup %testfiles%\tall.h5 ta.h5
call :jamtest %testfiles%\u512.txt ta.h5
call :checkfile %testfiles%\tall.h5 ta.h5
call :setup %testfiles%\tall.h5 ta.h5
call :jamtest %testfiles%\u513.txt ta.h5
call :checkfile %testfiles%\tall.h5 ta.h5
call :cleanup ta.h5
call :jamtest %testfiles%\u10.txt %testfiles%\twithub.h5 tax2.h5
call :checkfile %testfiles%\tall.h5 tax2.h5
call :cleanup tax2.h5
call :jamtest %testfiles%\u511.txt %testfiles%\twithub.h5 tax3.h5
call :checkfile %testfiles%\tall.h5 tax3.h5
call :cleanup tax3.h5
call :jamtest %testfiles%\u512.txt %testfiles%\twithub.h5 tax4.h5
call :checkfile %testfiles%\tall.h5 tax4.h5
call :cleanup tax4.h5
call :jamtest %testfiles%\u513.txt %testfiles%\twithub.h5 tax5.h5
call :checkfile %testfiles%\tall.h5 tax5.h5
call :cleanup tax5.h5
call :jamtest %testfiles%\u10.txt %testfiles%\twithub513.h5 tax6.h5
call :checkfile %testfiles%\tall.h5 tax6.h5
call :cleanup tax6.h5
call :jamtest %testfiles%\u511.txt %testfiles%\twithub513.h5 tax7.h5
call :checkfile %testfiles%\tall.h5 tax7.h5
call :cleanup tax7.h5
call :jamtest %testfiles%\u512.txt %testfiles%\twithub513.h5 tax8.h5
call :checkfile %testfiles%\tall.h5 tax8.h5
call :cleanup tax8.h5
call :jamtest %testfiles%\u513.txt %testfiles%\twithub513.h5 tax9.h5
call :checkfile %testfiles%\tall.h5 tax9.h5
call :cleanup tax9.h5
call :jamtest %testfiles%\u10.txt %testfiles%\twithub.h5 --clobber taz2.h5
call :checkfile %testfiles%\tall.h5 taz2.h5
call :cleanup taz2.h5
call :jamtest %testfiles%\u511.txt %testfiles%\twithub.h5 --clobber taz3.h5
call :checkfile %testfiles%\tall.h5 taz3.h5
call :cleanup taz3.h5
call :jamtest %testfiles%\u512.txt %testfiles%\twithub.h5 --clobber taz4.h5
call :checkfile %testfiles%\tall.h5 taz4.h5
call :cleanup taz4.h5
call :jamtest %testfiles%\u513.txt %testfiles%\twithub.h5 --clobber taz5.h5
call :checkfile %testfiles%\tall.h5 taz5.h5
call :cleanup taz5.h5
call :jamtest %testfiles%\u10.txt %testfiles%\twithub513.h5 --clobber taz6.h5
call :checkfile %testfiles%\tall.h5 taz6.h5
call :cleanup taz6.h5
call :jamtest %testfiles%\u511.txt %testfiles%\twithub513.h5 --clobber taz7.h5
call :checkfile %testfiles%\tall.h5 taz7.h5
call :cleanup taz7.h5
call :jamtest %testfiles%\u512.txt %testfiles%\twithub513.h5 --clobber taz8.h5
call :checkfile %testfiles%\tall.h5 taz8.h5
call :cleanup taz8.h5
call :jamtest %testfiles%\u513.txt %testfiles%\twithub513.h5 --clobber taz9.h5
call :checkfile %testfiles%\tall.h5 taz9.h5
call :cleanup taz9.h5
call :setup %testfiles%\twithub.h5 tay2.h5
call :jamtest %testfiles%\u10.txt tay2.h5 --clobber
call :checkfile %testfiles%\tall.h5 tay2.h5
call :cleanup tay2.h5
call :setup %testfiles%\twithub.h5 tay3.h5
call :jamtest %testfiles%\u511.txt tay3.h5 --clobber
call :checkfile %testfiles%\tall.h5 tay3.h5
call :cleanup tay3.h5
call :setup %testfiles%\twithub.h5 tay4.h5
call :jamtest %testfiles%\u512.txt tay4.h5 --clobber
call :checkfile %testfiles%\tall.h5 tay4.h5
call :cleanup tay4.h5
call :setup %testfiles%\twithub.h5 tay5.h5
call :jamtest %testfiles%\u513.txt tay5.h5 --clobber
call :checkfile %testfiles%\tall.h5 tay5.h5
call :cleanup tay5.h5
call :setup %testfiles%\twithub513.h5 tay6.h5
call :jamtest %testfiles%\u10.txt tay6.h5 --clobber
call :checkfile %testfiles%\tall.h5 tay6.h5
call :cleanup tay6.h5
call :setup %testfiles%\twithub513.h5 tay7.h5
call :jamtest %testfiles%\u511.txt tay7.h5 --clobber
call :checkfile %testfiles%\tall.h5 tay7.h5
call :cleanup tay7.h5
call :setup %testfiles%\twithub513.h5 tay8.h5
call :jamtest %testfiles%\u512.txt tay8.h5 --clobber
call :checkfile %testfiles%\tall.h5 tay8.h5
call :cleanup tay8.h5
call :setup %testfiles%\twithub513.h5 tay9.h5
call :jamtest %testfiles%\u513.txt tay9.h5 --clobber
call :checkfile %testfiles%\tall.h5 tay9.h5
call :cleanup tay9.h5
call :setup %testfiles%\twithub.h5 tai1.h5
call :unjamtest tai1.h5 o10.txt taa1.h5
call :checkfile %testfiles%\tall.h5 taa1.h5
call :cleanup taa1.h5 tai1.h5 o10.txt
call :setup %testfiles%\twithub513.h5 tai2.h5
call :unjamtest tai2.h5 o512.txt taa2.h5
call :checkfile %testfiles%\tall.h5 taa2.h5
call :cleanup taa2.h5 tai2.h5 o512.txt
call :setup %testfiles%\twithub.h5 tai3.h5
call :unjamtest tai3.h5 - taa3.h5
call :checkfile %testfiles%\tall.h5 taa3.h5
call :cleanup taa3.h5 tai3.h5
call :setup %testfiles%\twithub513.h5 tai4.h5
call :unjamtest tai4.h5 - taa4.h5
call :checkfile %testfiles%\tall.h5 taa4.h5
call :cleanup taa4.h5 tai4.h5
call :setup %testfiles%\twithub.h5 taj2.h5
call :unjamtest taj2.h5 --delete tac2.h5
call :checkfile %testfiles%\tall.h5 tac2.h5
call :cleanup tac2.h5 taj2.h5
call :setup %testfiles%\twithub513.h5 taj3.h5
call :unjamtest taj3.h5 --delete tac3.h5
call :checkfile %testfiles%\tall.h5 tac3.h5
call :cleanup tac3.h5 taj3.h5
if %nerrors% equ 0 (
echo.All %jam% tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,220 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5ls tool
rem
rem Created: Scott Wegner, 8/28/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem The tool name
set h5ls=h5ls%2
rem The path of the tool binary
set h5ls_bin=%CD%\..\%h5ls%\%1\%h5ls%
rem Max. lines of output to display if test fails
set nlines=20
set nerrors=0
set verbose=yes
if not exist ..\testfiles mkdir ..\testfiles
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing %h5ls%
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
rem We need to replace PERCENT-ZERO here with "%0" for the tfamily test.
rem --SJW 8/24/07
set test_msg=!test_msg:PERCENT-ZERO=%%0!
echo.%test_msg:~0,69% %1
exit /b
rem Run a test and print PASS or *FAIL*. For now, if h5ls can complete
rem with exit status 0, consider it pass. If a test fails then increment
rem the `nerrors' global variable and (if $verbose is set) display up to %nlines%
rem lines of the actual output from the tool test. The actual output is not
rem removed if $HDF5_NOCLEANUP has a non-zero value.
rem Arguemnts:
rem %1 -- actual output filename to use
rem %2 and on -- argument for the h5ls tool
:tooltest
set expect=%CD%\..\testfiles\%1
set expect_parsed=%expect%.parsed
set actual=%CD%\..\testfiles\%~n1.out
set actual_parsed=%actual%.parsed
rem We define %params% here because Windows `shift` command doesn't affect
rem the %* variable. --SJW 8/23/07
set params=%*
set params=%params:* =%
rem Run test.
rem Stderr is included in stdout so that the diff can detect
rem any unexpected output from that stream too
(
echo.#############################
rem We strip out the parentesis here because echo on Linux does.
rem --SJW 8/28/07
echo. output for 'h5ls %params:"=%'
echo.#############################
pushd %CD%\..\testfiles
%h5ls_bin% %params%
popd
) >%actual% 2>&1
set exitcode=%errorlevel%
rem Windows doesn't have "sed" command, and parsing the files line-by-line
rem to emulate Unix takes a very long time. Instead, we simply remove lines
rem with "Modified". Do this for actual and expected otput. If there is a
rem better alternative in the future, we should use it instead. --SJW 8/22/07
for %%a in (expect actual) do (
findstr /v /c:" Modified:" !%%a! > tmp.txt
move /y tmp.txt !%%a_parsed! > nul
)
if "%exitcode%" neq "0" (
call :testing *FAILED* %params%
set /a nerrors=!nerrors!+1
if "yes"=="%verbose%" (
echo.test returned with exit code !exitcode!
echo.test output: ^(up to %nlines% lines^)
rem Count lines echo'ed, and break out after 20. --SJW 8/28/07
set line=0
for /f "tokens=* delims=" %%a in (%actual%) do (
if !line! geq %nlines% goto break
echo.%%a
set /a line=!line!+1
)
:break
echo.***end of test output***
echo.
)
rem Don't special case non-existing expected output as Linux does, because
rem we depend on it above to parse anyway. It should be an error if it
rem doesn't exist. --SJW 8/28/07
rem ) else if not exist %expect% (
rem rem Create the expect file if it doesn't yet exist
rem call :testing CREATED %params%
rem copy %actual% %expect% > nul
) else (
fc /w %expect_parsed% %actual_parsed% | find "FC: no diff" > nul
if !errorlevel! equ 0 (
call :testing PASSED %params%
) else (
call :testing *FAILED* %params%
echo. Expected result differs from actual result
set nerrors=!nerrors!+1
if "yes"=="%verbose%" fc %expect_parsed% %actual_parsed%
)
)
rem Clean up output file
if not defined hdf5_nocleanup (
del /f %actual% %actual_parsed% %expected_parsed%
)
exit /b
rem ############################################################################
rem ############################################################################
rem # T H E T E S T S ###
rem ############################################################################
rem ############################################################################
:main
rem Toss in a bunch of tests. Not sure if they are the right kinds.
rem test the help syntax
call :tooltest help-1.ls -w80 -h
call :tooltest help-2.ls -w80 -help
call :tooltest help-3.ls -w80 -?
rem test simple command
call :tooltest tall-1.ls -w80 tall.h5
call :tooltest tall-2.ls -w80 -r -d tall.h5
call :tooltest tgroup.ls -w80 tgroup.h5
rem test for displaying groups
call :tooltest tgroup-1.ls -w80 -r -g tgroup.h5
rem test for displaying simple space datasets
call :tooltest tdset-1.ls -w80 -r -d tdset.h5
rem test for displaying soft links
call :tooltest tslink-1.ls -w80 -r tslink.h5
rem test for displaying external and user-defined links
call :tooltest textlink-1.ls -w80 -r textlink.h5
call :tooltest tudlink-1.ls -w80 -r tudlink.h5
rem tests for hard links
call :tooltest thlink-1.ls -w80 thlink.h5
rem tests for compound data types
call :tooltest tcomp-1.ls -w80 -r -d tcompound.h5
rem test for the nested compound type
call :tooltest tnestcomp-1.ls -w80 -r -d tnestedcomp.h5
rem test for loop detection
call :tooltest tloop-1.ls -w80 -r -d tloop.h5
rem test for string
call :tooltest tstr-1.ls -w80 -r -d tstr.h5
rem test test file created from lib SAF team
call :tooltest tsaf.ls -w80 -r -d tsaf.h5
rem test for variable length data types
call :tooltest tvldtypes1.ls -w80 -r -d tvldtypes1.h5
rem test for array data types
call :tooltest tarray1.ls -w80 -r -d tarray1.h5
rem test for empty data
call :tooltest tempty.ls -w80 -d tempty.h5
rem test for all dataset types written to attributes
rem enable -S for avoiding printing NATIVE types
call :tooltest tattr2.ls -w80 -v -S tattr2.h5
rem tests for error handling.
rem test for non-existing file
call :tooltest nosuchfile.ls nosuchfile.h5
if %nerrors% equ 0 (
echo.All h5ls tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,254 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5mkgrp tool
rem
rem Created: Scott Wegner, 8/29/07
rem Modified:
rem
rem We currently only build static version of h5mkgrp, but this batch file is
rem setup for dll versions, in case we decide to build them in the future.
rem --SJW 8/29/07
setlocal enabledelayedexpansion
pushd %~dp0
rem The tool name
set h5mkgrp=h5mkgrp%2
rem The path of the tool binary
set h5mkgrp_bin=%CD%\..\%h5mkgrp%\%1\%h5mkgrp%
rem The h5ls tool name
set h5ls=h5ls%2
rem Arguments to the h5ls tool
set h5ls_args=-vr
rem The path of the h5ls tool binary
set h5ls_bin=%CD%\..\%h5ls%\%1\%h5ls%
set nerrors=0
set verbose=yes
set indir=%CD%\..\testfiles
set outdir=%CD%\..\testfiles
if not exist %outdir% mkdir %outdir%
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
rem We need to replace PERCENT-ZERO here with "%0" for the tfamily test.
rem --SJW 8/24/07
set test_msg=!test_msg:PERCENT-ZERO=%%0!
echo.%test_msg:~0,69% %1
exit /b
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Verifying".
rem
:verify_h5ls
set test_msg=Verifying h5ls file structure
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
rem We need to replace PERCENT-ZERO here with "%0" for the tfamily test.
rem --SJW 8/24/07
set test_msg=!test_msg:PERCENT-ZERO=%%0!
echo.%test_msg:~0,69% %1
exit /b
rem Run a test and print PASS or *FAIL*. If h5mkgrp can complete
rem with exit status 0, consider it pass. If a test fails then increment
rem the `nerrors' global variable.
rem Assumed arguments:
rem %* arguments for h5mkgrp.
:tooltest
(
echo.#############################
echo. output for 'h5mkgrp %*'
echo.#############################
%h5mkgrp_bin% %*
) > output.out
if %errorlevel% neq 0 (
call :testing *FAILED* %*
echo.failed result is:
type output.out
set nerrors=!nerrors!+1
) else (
call :testing PASSED %*
)
rem Clean up output file
if not defined hdf5_nocleanup (
del /f output.out
)
exit /b
rem Call the h5ls tool to verify the correct output data in the destination file
rem
:h5lstest
set expect=%indir%\%~n1.ls
set expect_parsed=%expect%.parsed
set actual=%outdir%\%~n1.out
set actual_parsed=%actual%.parsed
rem Stderr is included in stdout so that the diff can detect
rem any unexpected output from that stream too
(
echo.#############################
echo.Expected output from h5ls %*
echo.#############################
%h5ls_bin% %h5ls_args% %*
) >%actual% 2>&1
rem Windows doesn't have "sed" command, and parsing the files line-by-line
rem to emulate Unix takes a very long time. Instead, we simply remove lines
rem with "Modified". Do this for actual and expected otput. If there is a
rem better alternative in the future, we should use it instead. --SJW 8/29/07
for %%a in (expect actual) do (
findstr /v /c:" Modified:" !%%a! > tmp.txt
move /y tmp.txt !%%a_parsed! > nul
)
rem Don't special case non-existing expected output as Linux does, because
rem we depend on it above to parse anyway. It should be an error if it
rem doesn't exist. --SJW 8/29/07
rem if not exist %expect% (
rem call :verify_h5ls CREATED %*
rem copy %actual% %expect%
rem )
fc /w %expect_parsed% %expect_parsed% | find "FC: no diff" > nul
if %errorlevel% equ 0 (
call :verify_h5ls PASSED %*
) else (
call :verify_h5ls *FAILED* %*
echo. Expected result ^(*.ls^) differs from actual result ^(*.out^)
set /a nerrors=!nerrors!+1
if "%verbose%"=="yes" fc %epect% %actual%
)
rem Clean up output file
if not defined hdf5_nocleanup (
del /f %actual% %actual_parsed% %expect_parsed%
)
exit /b
rem Single run of tool
rem
rem Assumed arguments:
rem %1 is test file name
rem %2 is h5mkgrp options
rem %* are groups to create
:runtest
set fileout=%outdir%\%1
shift
set h5mkgrp_args=%1
rem Filter out quotes
set h5mkgrp_args=%h5mkgrp_args:"=%
shift
rem Remove any output file left over from previous test run
del /f %fileout% 2> nul
rem On Windows, the shift command doesn't actually affect %*, so we must
rem manipulate a params variable. We need to be careful of how we iterate
rem through them, because the " " parameter is tricky on Windows.
rem --SJW 8/29/07
set params=
if not "%1"=="" (
set p_num=1
for %%a in (%*) do (
if !p_num! geq 3 (
set params=!params! %%a
)
set /a p_num=!p_num!+1
)
rem Remove leading space
set params=!params:* =!
)
rem Run test
call :tooltest %h5mkgrp_args% %fileout% %params%
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.
rem Why do we echo FILEOUT on Linux? --SJW 8/29/07
rem echo.FILEOUT= %fileout%
if not defined hdf5_nocleanup (
del /f %fileout% 2> nul
)
exit /b
rem ############################################################################
rem # T H E T E S T S ###
rem ############################################################################
:main
rem Check that help & version is displayed properly
call :runtest h5mkgrp_help.h5 "-h"
call :runtest h5mkgrp_version.h5 "-V"
rem Create single group at root level
call :runtest h5mkgrp_single.h5 " " single
call :runtest h5mkgrp_single.h5 "-v" single
call :runtest h5mkgrp_single.h5 "-p" single
call :runtest h5mkgrp_single_latest.h5 "-l" latest
rem Create several groups at root level
call :runtest h5mkgrp_several.h5 " " one two
call :runtest h5mkgrp_several.h5 "-v" one two
call :runtest h5mkgrp_several.h5 "-p" one two
call :runtest h5mkgrp_several_latest.h5 "-l" one two
rem Create various nested groups
call :runtest h5mkgrp_nested.h5 "-p" /one/two
call :runtest h5mkgrp_nested_latest.h5 "-lp" /one/two
call :runtest h5mkgrp_nested_mult.h5 "-p" /one/two /three/four
call :runtest h5mkgrp_nested_mult_latest.h5 "-lp" /one/two /three/four
if %nerrors% equ 0 (
echo.All h5mkgrp tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,524 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5repack tool
rem
rem Created: Scott Wegner, 8/28/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
set h5pubconf=%CD%\..\..\src\h5pubconf.h
rem On Windows, the function :detect_filter sets these for us
call :detect_filter szip
call :detect_filter deflate
call :detect_filter shuffle
call :detect_filter fletcher32
call :detect_filter nbit
call :detect_filter scaleoffset
rem The tool name
set h5repack=h5repack%2
rem The path of the tool binary
set h5repack_bin=%CD%\..\%h5repack%\%1\%h5repack%
rem The h5diff tool name
set h5diff=..\h5diff%2\%1\h5diff%2
rem The path of the h5diff tool binary
set h5diff_bin=%CD%\%h5diff%
rem The tool name
set h5detectszip=testh5repack_detect_szip%2
rem The path of the tool binary
set h5detectszip_bin=%CD%\..\testfiles\%h5detectszip%\%1\%h5detectszip%
set info_file=..\testfiles\info.h5repack
set file0=h5repack_fill.h5
set file1=h5repack_objs.h5
set file2=h5repack_attr.h5
set file3=h5repack_hlink.h5
set file4=h5repack_layout.h5
set file5=h5repack_early.h5
set file7=h5repack_szip.h5
set file8=h5repack_deflate.h5
set file9=h5repack_shuffle.h5
set file10=h5repack_fletcher.h5
set file11=h5repack_filters.h5
set file12=h5repack_nbit.h5
set file13=h5repack_soffset.h5
set nerrors=0
set verbose=yes
if not exist ..\testfiles mkdir ..\testfiles
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=!test_msg!
echo.%test_msg:~0,69% %1
exit /b
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Verifying".
rem
:verify
set test_msg=Verifying h5diff output
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=!test_msg!
echo.%test_msg:~0,69% %1
exit /b
rem Print a message that a test has been skipped (because a required filter
rem was unavailable)
:skip
call :testing -SKIP- %h5repack% %*
exit /b
rem Call the h5diff tool
rem
:difftest
%h5diff_bin% %* -q
if %errorlevel% neq 0 (
call :verify *FAILED* %*
set /a nerrors=!nerrors!+1
) else (
call :verify PASSED %*
)
exit /b
rem Call h5repack
rem
:tooltest
rem Run test.
set infile=%CD%\..\testfiles\%1
rem Linux uses a $path variable here, but it is unneccessary, and will
rem corrupt our Windows PATH if we use it. --SJW 8/28/07
rem set path=%CD%
rem set outfile=%path%\out.%1
set outfile=%CD%\out.%1
rem We define %params% here because Windows `shift` command doesn't affect
rem the %* variable. --SJW 8/28/07
set params=%*
set params=%params: *=%
%h5repack_bin% -i %infile% -o %outfile% %params%
if %errorlevel% neq 0 (
call :testing *FAILED* %*
set /a nerrors=!nerrors!+1
) else (
call :testing PASSED %*
call :difftest %infile% %outfile%
)
del /f %outfile%
exit /b
rem This is a Windows-specific function that detects if the filter passed
rem should be enabled for this test script. It searches H5pubconf.h for the
rem string "#define H5_HAVE_FILTER_%1" and sets the variable "use_filter_%1"
rem accordingly. On other platforms, this variable is set in the Makefile.
rem If we find a better way to test this in the future, we should use it.
rem --SJW 9/4/07
:detect_filter
findstr /b /i /c:"#define H5_HAVE_FILTER_%1" %h5pubconf% > nul
if %errorlevel% equ 0 (
set use_filter_%1=yes
) else (
set use_filter_%1=no
)
exit /b
rem
rem The tests
rem We use the files generated by h5repacktst
rem Each run generates "<file>.out.h5" and the tool h5diff is used to
rem compare the input and output files
rem
rem the tests are the same as the program h5repacktst, but run from the CLI
rem
:main
rem See which filters are usable (and skip tests for filters we
rem don't have). Do this by searching H5pubconf.h to see which
rem filters are defined.
rem detect whether the encoder is present.
set use_filter_szip_encoder=no
if "%use_filter_szip%"=="yes" (
for /f %%a in ('%h5detectszip_bin%') do set use_filter_szip_encoder=%%a
)
rem copy files (these files have no filters)
call :tooltest %file0%
call :tooltest %file1%
call :tooltest %file2%
call :tooltest %file3%
call :tooltest %file4%
call :tooltest %file5%
rem use %file4% to write some filters (this file has no filters)
rem gzip with individual object
set arg=%file4% -f dset1:GZIP=1 -l dset1:CHUNK=20x10
if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem gzip for all
set arg=%file4% -f GZIP=1
if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem szip with individual object
set arg=%file4% -f dset2:SZIP=8,EC -l dset2:CHUNK=20x10
if not "%use_filter_szip_encoder%"=="yes" (
call :skip %arg%
) else if not "%use_filter_szip%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem szip for all
set arg=%file4% -f SZIP=8,NN
if not "%use_filter_szip_encoder%"=="yes" (
call :skip %arg%
) else if not "%use_filter_szip%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem shuffle with individual object
set arg=%file4% -f dset2:SHUF -l dset2:CHUNK=20x10
if not "%use_filter_shuffle%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem shuffle for all
set arg=%file4% -f SHUF
if not "%use_filter_shuffle%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem fletcher32 with individual object
set arg=%file4% -f dset2:FLET -l dset2:CHUNK=20x10
if not "%use_filter_fletcher32%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem fletcher32 for all
set arg=%file4% -f FLET
if not "%use_filter_fletcher32%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem all filters
set arg=%file4% -f dset2:SHUF -f dset2:FLET -f dset2:SZIP=8,NN -f dset2:GZIP=1 -l dset2:CHUNK=20x10
rem On Windows we must check each filter individually, because we don't have
rem -o flag like Linux. --SJW 8/28/07
if not "%use_filter_szip_encoder%"=="yes" (
call :skip %arg%
) else if not "%use_filter_szip%"=="yes" (
call :skip %arg%
) else if not "%use_filter_shuffle%"=="yes" (
call :skip %arg%
) else if not "%use_filter_fletcher32%"=="yes" (
call :skip %arg%
) else if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem ##########################################################
rem the following tests assume the input files have filters
rem ##########################################################
rem szip copy
set arg=%file7%
if not "%use_filter_szip_encoder%"=="yes" (
call :skip %arg%
) else if not "%use_filter_szip%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem szip remove
set arg=%file7% -f dset_szip:NONE
if not "%use_filter_szip_encoder%"=="yes" (
call :skip %arg%
) else if not "%use_filter_szip%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem deflate copy
set arg=%file8%
if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem deflate remove
set arg=%file8% -f dset_deflate:NONE
if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem shuffle copy
set arg=%file9%
if not "%use_filter_shuffle%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem shuffle remove
set arg=%file9% -f dset_shuffle:NONE
if not "%use_filter_shuffle%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem fletcher32 copy
set arg=%file10%
if not "%use_filter_fletcher32%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem fletcher32 remove
set arg=%file10% -f dset_fletcher32:NONE
if not "%use_filter_fletcher32%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem nbit copy
set arg=%file12%
if not "%use_filter_nbit%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem nbit remove
set arg=%file12% -f dset_nbit:NONE
if not "%use_filter_nbit%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem nbit add
set arg=%file12% -f dset_int31:NBIT
if not "%use_filter_nbit%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem scaleoffset copy
set arg=%file13%
if not "%use_filter_scaleoffset%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem scaleoffset add
set arg=%file13% -f dset_none:SOFF=31,IN
if not "%use_filter_scaleoffset%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem scaleoffset remove
set arg=%file13% -f dset_scaleoffset:NONE
if not "%use_filter_scaleoffset%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem remove all filters
set arg=%file11% -f NONE
if not "%use_filter_fletcher32%"=="yes" (
call :skip %arg%
) else if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else if not "%use_filter_szip%"=="yes" (
call :skip %arg%
) else if not "%use_filter_szip_encoder%"=="yes" (
call :skip %arg%
) else if not "%use_filter_shuffle%"=="yes" (
call :skip %arg%
) else if not "%use_filter_nbit%"=="yes" (
call :skip %arg%
) else if not "%use_filter_scaleoffset%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem filter conversions
set arg=%file8% -f dset_deflate:SZIP=8,NN
if not "%use_filter_szip_encoder%"=="yes" (
call :skip %arg%
) else if not "%use_filter_szip%"=="yes" (
call :skip %arg%
) else if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
set arg=%file7% -f dset_szip:GZIP=1
if not "%use_filter_szip_encoder%"=="yes" (
call :skip %arg%
) else if not "%use_filter_szip%"=="yes" (
call :skip %arg%
) else if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem limit
set arg=%file4% -f GZIP=1 -m 1024
if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem file
set arg=%file4% -e %info_file%
if not "%use_filter_deflate%"=="yes" (
call :skip %arg%
) else (
call :tooltest %arg%
)
rem ########################################################
rem layout options (these files have no filters)
rem ########################################################
call :tooltest %file4% -l dset2:CHUNK=20x10
call :tooltest %file4% -l CHUNK=20x10
call :tooltest %file4% -l dset2:CONTI
call :tooltest %file4% -l CONTI
call :tooltest %file4% -l dset2:COMPA
call :tooltest %file4% -l COMPA
rem ###############################################################
rem layout conversions (file has no filters)
rem ##############################################################
set arg1=%file4% -l dset_compact:CONTI
set arg2=%file4% -l dset_compact:CHUNK=2x5
set arg3=%file4% -l dset_compact:COMPA
set arg4=%file4% -l dset_contiguous:COMPA
set arg5=%file4% -l dset_contiguous:CHUNK=3x6
set arg6=%file4% -l dset_contiguous:CONTI
set arg7=%file4% -l dset_chunk:COMPA
set arg8=%file4% -l dset_chunk:CONTI
set arg9=%file4% -l dset_chunk:CHUNK=18x13
call :tooltest %arg1%
call :tooltest %arg2%
call :tooltest %arg3%
call :tooltest %arg4%
call :tooltest %arg5%
call :tooltest %arg6%
call :tooltest %arg7%
call :tooltest %arg8%
call :tooltest %arg9%
rem native option
set arg=%file1% -n
call :tooltest %arg%
if %nerrors% equ 0 (
echo.All %h5repack% tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,148 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5repart tool
rem
rem Created: Scott Wegner, 8/29/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
rem The tool name
set repart=h5repart%2
rem The path of the tool library
set repart_bin=%CD%\..\%repart%\%1\%repart%
rem The test name
set reparted_fam=h5reparttst
rem The path of the test binary
set reparted_fam_bin=%CD%\..\testfiles\%reparted_fam%\%1\%reparted_fam%
set nerrors=0
set verbose=yes
if not exist ..\testfiles mkdir ..\testfiles
set actual_dir=%CD%\..\testfiles
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing %dumper%
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
rem We need to replace PERCENT-ZERO here with "%0" for the tfamily test.
rem --SJW 9/4/07
set test_msg=!test_msg:PERCENT-ZERO=%%0!
echo.%test_msg:~0,69% %1
exit /b
rem Run a test and print PASS or *FAIL*. If a test fails then increment
rem the `nerrors' global variable.
rem
:tooltest
rem Run tool test.
(
rem We need to replace PERCENT-ZERO here with "%0" for the tfamily test.
rem --SJW 9/4/07
set params=%*
set params=!params:PERCENT-ZERO=%%0!
pushd %CD%\..\testfiles
%repart_bin% !params!
popd
)
if %errorlevel% equ 0 (
call :testing PASSED %repart% %*
) else (
call :testing *FAILED* %repart% %*
set /a nerrors=!nerrors!+1
)
exit /b
:outputtest
rem Run test program
(
pushd %actual_dir%
%reparted_fam_bin% %*
popd
)
if %errorlevel% equ 0 (
call :testing PASSED %reparted_fam% %*
) else (
call :testing *FAILED* %reparted_fam% %*
set /a nerrors=!nerrors!+1
)
exit /b
rem Print a "SKIP" message
:skip
call :testing -SKIP- %*
exit /b
rem ############################################################################
rem ############################################################################
rem # T H E T E S T S ###
rem ############################################################################
rem ############################################################################
:main
rem On Windows, we pass "PERCENT-ZERO", and let other calls replace it with
rem the "%0". We cannot pass "%0" directly because Windows interprets it as
rem the name of the script. --SJW 9/4/07
rem repartition family member size to 20,000 bytes.
call :tooltest -m 20000 family_filePERCENT-ZERO5d.h5 %actual_dir%\fst_familyPERCENT-ZERO5d.h5
rem repartition family member size to 5 KB.
call :tooltest -m 5k family_filePERCENT-ZERO5d.h5 %actual_dir%\scd_familyPERCENT-ZERO5d.h5
rem convert family file to sec2 file of 20,000 bytes
call :tooltest -m 20000 -family_to_sec2 family_filePERCENT-ZERO5d.h5 %actual_dir%\family_to_sec2.h5
rem test the output files repartitioned above.
call :outputtest
echo.
if %nerrors% equ 0 (
echo.All %repart% tests passed.
)
rem Clean up output file
if not defined hdf5_nocleanup (
pushd %actual_dir%
del /f fst_family*.h5 scd_family*.h5 family_to_sec2.h5
popd
)
popd
endlocal & exit /b %nerrors%

View File

@ -0,0 +1,176 @@
@echo off
rem
rem Copyright by The HDF Group.
rem Copyright by the Board of Trustees of the University of Illinois.
rem All rights reserved.
rem
rem This file is part of HDF5. The full HDF5 copyright notice, including
rem terms governing use, modification, and redistribution, is contained in
rem the files COPYING and Copyright.html. COPYING can be found at the root
rem of the source code distribution tree; Copyright.html can be found at the
rem root level of an installed copy of the electronic HDF5 document set and
rem is linked from the top-level documents page. It can also be found at
rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
rem access to either file, you may request a copy from help@hdfgroup.org.
rem
rem Tests for the h5stat tool
rem
rem Created: Scott Wegner, 8/28/07
rem Modified:
rem
setlocal enabledelayedexpansion
pushd %~dp0
set h5pubconf=%CD%\..\..\src\h5pubconf.h
rem Determine which filters are available
rem On Windows, the function :detect_filter sets these for us
call :detect_filter szip
call :detect_filter deflate
call :detect_filter shuffle
call :detect_filter fletcher32
call :detect_filter nbit
call :detect_filter scaleoffset
rem The tool name
set stat=h5stat%2
rem The path of the tool binary
set stat_bin=%CD%\..\%stat%\%1\%stat%
set nerrors=0
set verbose=yes
if not exist .\testfiles mkdir .\testfiles
goto main
rem Print a line-line message left justified in a field of 70 characters
rem beginning with the word "Testing".
rem
:testing
set test_msg=Testing
for %%a in (%*) do (
if %%a neq PASSED (
if %%a neq *FAILED* (
set test_msg=!test_msg! %%~nxa
) )
)
set test_msg=!test_msg!
echo.%test_msg:~0,69% %1
exit /b
rem Run a test and print PASS or *FAIL*. If a test fails then increment
rem the `nerrors' global variable and (if %verbose% is set) display the
rem difference between the actual output and the expected output. The
rem expected output is given as the first argument to this function and
rem the actual output file is calculated by replacing the `.ddl' with
rem `.out'. The actual output is not removed if %HDF5_NOCLEANUP% has a
rem non-zero value.
rem
:tooltest
set expect=%CD%\testfiles\%1
set actual=%CD%\testfiles\%~n1.out
set actual_err=%CD%\testfiles\%~n1.err
rem We define %params% here because Windows `shift` command doesn't affect
rem the %* variable. --SJW 8/28/07
set params=%*
set params=%params:* =%
rem Run test.
(
echo.#############################
rem Filter out quotes because they do on Linux. --SJW 8/28/07
echo.Expected output for 'h5stat %params:"=%'
echo.#############################
pushd %CD%\testfiles
%stat_bin% %params%
popd
) > %actual% 2> %actual_err%
type %actual_err% >> %actual%
if not exist %expect% (
rem Create the expect file if it doesn't yet exist
call :testing CREATED %stat% %params%
copy /y %actual% %expect%
) else (
fc /w %expect% %actual% | find "FC: no diff" > nul
if !errorlevel! equ 0 (
call :testing PASSED %stat% %params%
) else (
call :testing *FAILED* %stat% %params%
echo. Expected results ^(*.ddl^) differs from actual result ^(*.out^)
set /a nerrors=!nerrors!+1
if "yes"=="%verbose%" fc %expect% %actual%
)
)
rem Clean up output file
if not defined hdf5_nocleanup (
del /f %actual% %actual_err%
)
exit /b
rem This is a Windows-specific function that detects if the filter passed
rem should be enabled for this test script. It searches H5pubconf.h for the
rem string "#define H5_HAVE_FILTER_%1" and sets the variable "use_filter_%1"
rem accordingly. On other platforms, this variable is set in the Makefile.
rem If we find a better way to test this in the future, we should use it.
rem --SJW 9/4/07
:detect_filter
findstr /b /i /c:"#define H5_HAVE_FILTER_%1" %h5pubconf% > nul
if %errorlevel% equ 0 (
set use_filter_%1=yes
) else (
set use_filter_%1=no
)
exit /b
rem Print a "SKIP" message
:skip
call :testing -SKIP- %*
exit /b
rem ############################################################################
rem ############################################################################
rem # T H E T E S T S ###
rem ############################################################################
rem ############################################################################
:main
rem Test for help flag
call :tooltest h5stat_help1.ddl -h
call :tooltest h5stat_help2.ddl --help
rem Test file with groups, compressed datasets, user-applied fileters, etc.
rem h5stat_filters.h5 is a copy of ../../testfiles/tfilters.h5 as of release 1.8.0-alpha4
call :tooltest h5stat_filters.ddl h5stat_filters.h5
call :tooltest h5stat_filters-file.ddl -f h5stat_filters.h5
call :tooltest h5stat_filters-F.ddl -F h5stat_filters.h5
call :tooltest h5stat_filters-d.ddl -d h5stat_filters.h5
call :tooltest h5stat_filters-g.ddl -g h5stat_filters.h5
call :tooltest h5stat_filters-dT.ddl -dT h5stat_filters.h5
rem h5stat_tsohm.h5 is a copy of ../../../test/tsohm.h5 generated by tsohm.c
rem as of release 1.8.0-alpha4
call :tooltest h5stat_tsohm.ddl h5stat_tsohm.h5
rem h5stat_newgrat.h5 is generated by h5stat_gentest.c
call :tooltest h5stat_newgrat.ddl h5stat_newgrat.h5
echo.
if %nerrors% equ 0 (
echo.All %stat% tests passed.
)
popd
endlocal & exit /b %nerrors%

View File

@ -1,197 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
::This batch file is for h5import tests
::Usage
:: importtest release -- release static version
:: importtest debug -- debug static version
:: importtest release dll -- release dll version
:: importtest debug dll -- debug dll version
:: Written By: Fang GUO
:: Date : Jan. 27, 2006
:: Track total number of testing errors
set /A totalerr=0
set /A totalskip=0
::**********************************************
:: Generate a new temp directory for test h5diff
::**********************************************
:: Make a tempory directory for difftest
mkdir temptest
:: Run h5importtst
cd testfiles\h5importtst\%1
h5importtst.exe
cd ..\..\..\
::****************************************************
:: Set the Environment Variables & Change Dir to .EXE
::****************************************************
:: The first incoming parameter should be configuration (debug or release)
set p1=%1
:: The second parameter should be the types of library (dll or blank)
set p2=%2
:: Set up some variables for convenience
:: tempResults will contain the tests results temporarily
set tempResults=importtest%2_%1.txt
:: exefile will contain the file name of the executable file
set exefile=h5import%p2%
:: tooltest is the sub-batch file which will be called by tool test
set tooltest=..\..\tooltest
::Handle the expected file and the actual output file
::ln is the total line numbers to be deleted from the actual output
set ln=1
::ln_exp is the total line numbers to be deleted from the expected output
set ln_exp=4
::Set some variables to contain .h5 file and its path for convenience
::Create the file to contain the tests output
type nul > %tempResults%
:: Set up Variables
:: h5import%2 ..\..\testfiles\h5importtst\%1\txtin32 -c ..\..\h5import\testfiles\textin32 -o ..\..\temptest\act_h5\test1.h5
::Set up variables for h5import input files
for %%i in (testfiles\h5importtst\%1\t*) do set %%~ni=..\..\testfiles\h5importtst\%p1%\%%~ni
for %%i in (testfiles\h5importtst\%1\b*) do set %%~ni=..\..\testfiles\h5importtst\%p1%\%%~ni
::Set up variables for h5import configure files
for %%i in (h5import\testfiles\text*) do set %%~ni=..\..\h5import\testfiles\%%~ni
for %%i in (h5import\testfiles\txt*) do set %%~ni=..\..\h5import\testfiles\%%~ni
for %%i in (h5import\testfiles\con*) do set %%~ni=..\..\h5import\testfiles\%%~ni
for %%i in (in1 fp1 fp2) do ( set %%i=..\..\h5import\testfiles\%%i)
::Set up variables for h5import output files
for %%i in (h5import\testfiles\test*) do set out.%%~ni=..\..\temptest\out.%%~ni.h5
::Change directory to the directory where the .exe file is located
cd h5import%p2%\%p1%
::*********************************************
:: Test each function by calling TOOLTEST.BAT
::*********************************************
::USAGE of importtest.bat
::1. Set flag
::2. Call batch file tooltest.bat followed with the expected file name
::3. Example
echo.
echo.****************************************************
echo. h5import%2 %1 T E S T S
echo.****************************************************
::TESTING "ASCII I32 rank 3 - Output BE
set flag=%txtin32% -c %textin32% -o %out.test1%
call %tooltest% textin32 test1.h5
::TESTING "ASCII I16 rank 3 - Output LE - CHUNKED - extended"
set flag=%txtin16% -c %textin16% -o %out.test2%
call %tooltest% textin16.txt test2.h5
::TESTING "ASCII I8 - rank 3 - Output I16 LE-Chunked+Extended+Compressed "
set flag=%txtin16% -c %textin8% -o %out.test3%
call %tooltest% textin8.txt test3.h5
::TESTING "ASCII UI32 - rank 3 - Output BE"
set flag=%in1% -c %textuin32% -o %out.test4%
call %tooltest% textuin32.txt test4.h5
::TESTING "ASCII UI16 - rank 2 - Output LE+Chunked+Compressed "
set flag=%in1% -c %textuin16% -o %out.test5%
call %tooltest% textuin16.txt test5.h5
::TESTING "ASCII F32 - rank 3 - Output LE "
set flag=%fp1% -c %textfp32% -o %out.test6%
call %tooltest% textfp32.txt test6.h5
::TESTING "ASCII F64 - rank 3 - Output BE + CHUNKED+Extended+Compressed "
set flag=%fp2% -c %textfp64% -o %out.test7%
call %tooltest% textfp64.txt test7.h5
::TESTING "BINARY F64 - rank 3 - Output LE+CHUNKED+Extended+Compressed "
set flag=%bfp64% -c %conbfp64% -o %out.test8%
call %tooltest% conbfp64.txt test8.h5
::TESTING "BINARY I16 - rank 3 - Output order LE + CHUNKED + extended "
set flag=%bin16% -c %conbin16% -o %out.test9%
call %tooltest% conbin16.txt test9.h5
::TESTING "BINARY I8 - rank 3 - Output I16LE + Chunked+Extended+Compressed "
set flag=%bin8% -c %conbin8% -o %out.test10%
call %tooltest% conbin8.txt test10.h5
::TESTING "BINARY I32 - rank 3 - Output BE + CHUNKED "
set flag=%bin32% -c %conbin32% -o %out.test11%
call %tooltest% conbin32.txt test11.h5
::TESTING "BINARY UI16 - rank 3 - Output byte BE + CHUNKED "
set flag=%buin16% -c %conbuin16% -o %out.test12%
call %tooltest% conbuin.txt test12.h5
::TESTING "BINARY UI32 - rank 3 - Output LE + CHUNKED "
set flag=%buin32% -c %conbuin32% -o %out.test13%
call %tooltest% conbuin32.txt test13.h5
::TESTING "STR"
set flag=%txtstr% -c %textstr% -o %out.teststr%
call %tooltest% textstr.txt teststr.h5
::Change directory to hdf5\tools
cd ..\..
::Check if any of tests failed or skiped for the time being
echo.
if "%totalerr%"=="0" (
echo. All of the %exefile% %p1% Tests Passed!
echo. All of the %exefile% %p1% Tests Passed! >> %tempResults%
) else (
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!>> %tempResults%
)
if not "%totalskip%"=="0" (
echo. %totalskip% Tests in total Skiped! >> %tempResults%
echo. %totalskip% Tests in total Skiped!
find "SKIPED" %tempResults% | more +2
)
::Clean up Environment Variables
for %%i in (p1 p2 tempResults exefile tooltest ln ln_exp totalskip totalerr) do set %%i=
set flag=
::Clean up the variables set for h5import input files
for %%i in (testfiles\h5importtst\%1\t*) do set %%~ni=
for %%i in (testfiles\h5importtst\%1\b*) do set %%~ni=
::Clean up the variables set for h5import configure files
for %%i in (h5import\testfiles\text*) do set %%~ni=
for %%i in (h5import\testfiles\txt*) do set %%~ni=
for %%i in (h5import\testfiles\con*) do set %%~ni=
for %%i in (in1 fp1 fp2) do ( set %%i=..\..\h5import\testfiles\%%i)
::Clean up the variables set for h5import output files
for %%i in (h5import\testfiles\test*) do (
set out.%%~ni=
)
::Clean up Temporary Files
rmdir /s/q temptest

View File

@ -1,148 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@REM Should copy all testing files to this directory
@REM This batch file only tests the validation of h5jam and h5unjam tools on windows,
@REM It will not check the correctedness of jammed/unjammed user-block.
@echo off
cd h5jam%2\%1
copy /Y ..\..\testfiles\tall.h5 tall.h5 >temp.txt
copy /Y ..\..\testfiles\twithub.h5 twithub.h5 >temp.txt
copy /Y ..\..\testfiles\twithub513.h5 twithub513.h5 >temp.txt
copy /Y ..\..\testfiles\u10.txt u10.txt >temp.txt
copy /Y ..\..\testfiles\u511.txt u511.txt >temp.txt
copy /Y ..\..\testfiles\u512.txt u512.txt >temp.txt
copy /Y ..\..\testfiles\u513.txt u513.txt >temp.txt
@REM the reason to set environment variables is to make sure it is consistent with other batch files.
set p1=%1
set p2=%2
echo.
echo.****************************************************
echo. H5jam%2 %1 T E S T S
echo.****************************************************
echo.
set tempResult=jamtest%p2%_%p1%.txt
h5jam -u u10.txt -i tall.h5 -o ta2.h5
echo h5jam -u u10.txt -i tall.h5 -o ta2.h5 PASSED
echo h5jam -u u10.txt -i tall.h5 -o ta2.h5 PASSED >> ..\..\%tempResult%
h5jam -u u511.txt -i tall.h5 -o ta3.h5
echo h5jam -u u511.txt -i tall.h5 -o ta3.h5 PASSED
echo h5jam -u u511.txt -i tall.h5 -o ta3.h5 PASSED >> ..\..\%tempResult%
h5jam -u u512.txt -i tall.h5 -o ta4.h5
echo h5jam -u u512.txt -i tall.h5 -o ta4.h5 PASSED
echo h5jam -u u512.txt -i tall.h5 -o ta4.h5 PASSED >> ..\..\%tempResult%
h5jam -u u513.txt -i tall.h5 -o ta5.h5
echo h5jam -u u513.txt -i tall.h5 -o ta5.h5 PASSED
echo h5jam -u u513.txt -i tall.h5 -o ta5.h5 PASSED >> ..\..\%tempResult%
copy /Y tall.h5 ta.h5 >temp.txt
h5jam -u u10.txt -i ta.h5
echo h5jam -u u10.txt -i ta.h5 PASSED
echo h5jam -u u10.txt -i ta.h5 PASSED >> ..\..\%tempResult%
copy /Y tall.h5 ta.h5 >temp.txt
h5jam -u u511.txt -i ta.h5
echo h5jam -u u511.txt -i ta.h5 PASSED
echo h5jam -u u511.txt -i ta.h5 PASSED >> ..\..\%tempResult%
copy /Y tall.h5 ta.h5 >temp.txt
h5jam -u u512.txt -i ta.h5
echo h5jam -u u512.txt -i ta.h5 PASSED
echo h5jam -u u512.txt -i ta.h5 PASSED >> ..\..\%tempResult%
copy /Y tall.h5 ta.h5 >temp.txt
h5jam -u u513.txt -i ta.h5
echo h5jam -u u513.txt -i ta.h5 PASSED
echo h5jam -u u513.txt -i ta.h5 PASSED >> ..\..\%tempResult%
h5jam -u u10.txt -i twithub.h5 -o tax2.h5
echo h5jam -u u10.txt -i twithub.h5 -o tax2.h5 PASSED
echo h5jam -u u10.txt -i twithub.h5 -o tax2.h5 PASSED >> ..\..\%tempResult%
h5jam -u u511.txt -i twithub.h5 -o tax3.h5
echo h5jam -u u511.txt -i twithub.h5 -o tax3.h5 PASSED
echo h5jam -u u511.txt -i twithub.h5 -o tax3.h5 PASSED >> ..\..\%tempResult%
h5jam -u u512.txt -i twithub.h5 -o tax4.h5
echo h5jam -u u512.txt -i twithub.h5 -o tax4.h5 PASSED
echo h5jam -u u512.txt -i twithub.h5 -o tax4.h5 PASSED >> ..\..\%tempResult%
h5jam -u u513.txt -i twithub.h5 -o tax5.h5
echo h5jam -u u513.txt -i twithub.h5 -o tax5.h5 PASSED
echo h5jam -u u513.txt -i twithub.h5 -o tax5.h5 PASSED >> ..\..\%tempResult%
h5jam -u u10.txt -i twithub513.h5 -o tax6.h5
echo h5jam -u u10.txt -i twithub513.h5 -o tax6.h5 PASSED
echo h5jam -u u10.txt -i twithub513.h5 -o tax6.h5 PASSED >> ..\..\%tempResult%
h5jam -u u511.txt -i twithub513.h5 -o tax7.h5
echo h5jam -u u511.txt -i twithub513.h5 -o tax7.h5 PASSED
echo h5jam -u u511.txt -i twithub513.h5 -o tax7.h5 PASSED >> ..\..\%tempResult%
h5jam -u u512.txt -i twithub513.h5 -o tax8.h5
echo h5jam -u u512.txt -i twithub513.h5 -o tax8.h5 PASSED
echo h5jam -u u512.txt -i twithub513.h5 -o tax8.h5 PASSED >> ..\..\%tempResult%
h5jam -u u513.txt -i twithub513.h5 -o tax9.h5
echo h5jam -u u513.txt -i twithub513.h5 -o tax9.h5 PASSED
echo h5jam -u u513.txt -i twithub513.h5 -o tax9.h5 PASSED >> ..\..\%tempResult%
h5jam -u u10.txt -i twithub.h5 -o taz2.h5 --clobber
echo h5jam -u u10.txt -i twithub.h5 -o taz2.h5 --clobber PASSED
echo h5jam -u u10.txt -i twithub.h5 -o taz2.h5 --clobber PASSED >> ..\..\%tempResult%
h5jam -u u511.txt -i twithub.h5 -o taz3.h5 --clobber
echo h5jam -u u511.txt -i twithub.h5 -o taz3.h5 --clobber PASSED
echo h5jam -u u511.txt -i twithub.h5 -o taz3.h5 --clobber PASSED >> ..\..\%tempResult%
h5jam -u u512.txt -i twithub.h5 -o taz4.h5 --clobber
echo h5jam -u u512.txt -i twithub.h5 -o taz4.h5 --clobber PASSED
echo h5jam -u u512.txt -i twithub.h5 -o taz4.h5 --clobber PASSED >> ..\..\%tempResult%
h5jam -u u513.txt -i twithub.h5 -o taz5.h5 --clobber
echo h5jam -u u513.txt -i twithub.h5 -o taz5.h5 --clobber PASSED
echo h5jam -u u513.txt -i twithub.h5 -o taz5.h5 --clobber PASSED >> ..\..\%tempResult%
h5jam -u u10.txt -i twithub513.h5 -o taz6.h5 --clobber
echo h5jam -u u10.txt -i twithub513.h5 -o taz6.h5 --clobber PASSED
echo h5jam -u u10.txt -i twithub513.h5 -o taz6.h5 --clobber PASSED >> ..\..\%tempResult%
h5jam -u u511.txt -i twithub513.h5 -o taz7.h5 --clobber
echo h5jam -u u511.txt -i twithub513.h5 -o taz7.h5 --clobber PASSED
echo h5jam -u u511.txt -i twithub513.h5 -o taz7.h5 --clobber PASSED >> ..\..\%tempResult%
h5jam -u u512.txt -i twithub513.h5 -o taz8.h5 --clobber
echo h5jam -u u512.txt -i twithub513.h5 -o taz8.h5 --clobber PASSED
echo h5jam -u u512.txt -i twithub513.h5 -o taz8.h5 --clobber PASSED >> ..\..\%tempResult%
h5jam -u u513.txt -i twithub513.h5 -o taz9.h5 --clobber
echo h5jam -u u513.txt -i twithub513.h5 -o taz9.h5 --clobber PASSED
echo h5jam -u u513.txt -i twithub513.h5 -o taz9.h5 --clobber PASSED >> ..\..\%tempResult%
copy /Y twithub.h5 tay2.h5 >temp.txt
h5jam -u u10.txt -i tay2.h5 --clobber
echo h5jam -u u10.txt -i tay2.h5 --clobber PASSED
echo h5jam -u u10.txt -i tay2.h5 --clobber PASSED >> ..\..\%tempResult%
copy /Y twithub.h5 tay3.h5 >temp.txt
h5jam -u u511.txt -i tay3.h5 --clobber
echo h5jam -u u511.txt -i tay3.h5 --clobber PASSED
echo h5jam -u u511.txt -i tay3.h5 --clobber PASSED >> ..\..\%tempResult%
copy /Y twithub.h5 tay4.h5 >temp.txt
h5jam -u u512.txt -i tay4.h5 --clobber
echo h5jam -u u512.txt -i tay4.h5 --clobber PASSED
echo h5jam -u u512.txt -i tay4.h5 --clobber PASSED >> ..\..\%tempResult%
copy /Y twithub.h5 tay5.h5 >temp.txt
h5jam -u u513.txt -i tay5.h5 --clobber
echo h5jam -u u513.txt -i tay5.h5 --clobber PASSED
echo h5jam -u u513.txt -i tay5.h5 --clobber PASSED >> ..\..\%tempResult%
copy /Y twithub513.h5 tay6.h5 >temp.txt
h5jam -u u10.txt -i tay6.h5 --clobber
echo h5jam -u u10.txt -i tay6.h5 --clobber PASSED
echo h5jam -u u10.txt -i tay6.h5 --clobber PASSED >> ..\..\%tempResult%
copy /Y twithub513.h5 tay7.h5 >temp.txt
h5jam -u u511.txt -i tay7.h5 --clobber
echo h5jam -u u511.txt -i tay7.h5 --clobber PASSED
echo h5jam -u u511.txt -i tay7.h5 --clobber PASSED >> ..\..\%tempResult%
copy /Y twithub513.h5 tay8.h5 >temp.txt
h5jam -u u512.txt -i tay8.h5 --clobber
echo h5jam -u u512.txt -i tay8.h5 --clobber PASSED
echo h5jam -u u512.txt -i tay8.h5 --clobber PASSED >> ..\..\%tempResult%
copy /Y twithub513.h5 tay9.h5 >temp.txt
h5jam -u u513.txt -i tay9.h5 --clobber
echo h5jam -u u513.txt -i tay9.h5 --clobber PASSED
echo h5jam -u u513.txt -i tay9.h5 --clobber PASSED >> ..\..\%tempResult%
del temp.txt
del *.h5
set tempResult=
set p1=
set p2=
cd ../..

View File

@ -1,175 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
::This batch file is for h5ls tests
::Usage
:: lstest release -- release static version
:: lstest debug -- debug static version
:: lstest release dll -- release dll version
:: lstest debug dll -- debug dll version
:: Written By: Fang GUO
:: Date : Jan. 27, 2006
:: Track total number of testing errors
set /A totalerr=0
set /A totalskip=0
::*******************************************************
:: Generate a new temp directory for test h5dump
::*******************************************************
mkdir temptest
::******************************************************************
:: Set the Environment Variables & Change Dir to Dir with h5dump.EXE
::******************************************************************
:: The first incoming parameter should be configuration (debug or release)
set p1=%1
:: The second parameter should be the types of library (dll or blank)
set p2=%2
:: Before comparison between expected file and the actual outputfile,
:: Ignore the first line in actual outputfile and the first four lines
:: in the expected output file
set ln=0
set ln_exp=3
:: Save the tests output into a temporary file
set tempResults=lstest%2_%1.txt
type nul > %tempResults%
:: Define the .exe file based on the second parameter
set exefile=h5ls%p2%
:: For convenience, set a variable for the sub batch file
set tooltest=..\..\tooltest
:: For convenience, set variable for all testfiles/*.h5 files
for %%i in (testfiles\*.h5) do set %%~ni=..\..\%%i
:: Change the directory to dir including .exe file
cd h5ls%p2%\%p1%
::Test h5ls with different options
echo.****************************************************
echo. h5ls%2 %1 T E S T S
echo.****************************************************
:: The paramter following %tooltest% is the expected output file
:: Path of the expected output file is not needed
:: Toss in a bunch of tests. Not sure if they are the right kinds.
:: test the help syntax
set flag=-w80 -h
call %tooltest% help-1.ls
set flag=-w80 -help
call %tooltest% help-2.ls
set flag=-w80 -?
call %tooltest% help-3.ls
:: test simple command
set flag=-w80 %tall%
call %tooltest% tall-1.ls
set flag=-w80 -r -d %tall%
call %tooltest% tall-2.ls
set flag=-w80 %tgroup%
call %tooltest% tgroup.ls
:: test for displaying groups
set flag=-w80 -r -g %tgroup%
call %tooltest% tgroup-1.ls
:: test for displaying simple space datasets
set flag=-w80 -r -d %tdset%
call %tooltest% tdset-1.ls
:: test for displaying soft links
set flag=-w80 -r %tslink%
call %tooltest% tslink-1.ls
:: tests for hard links
set flag=-w80 %thlink%
call %tooltest% thlink-1.ls
:: tests for compound data types
set flag=-w80 -r -d %tcompound%
call %tooltest% tcomp-1.ls
::test for the nested compound type
set flag=-w80 -r -d %tnestedcomp%
call %tooltest% tnestcomp-1.ls
:: test for loop detection
set flag=-w80 -r -d %tloop%
call %tooltest% tloop-1.ls
:: test for string
set flag=-w80 -r -d %tstr%
call %tooltest% tstr-1.ls
:: test test file created from lib SAF team
set flag=-w80 -r -d %tsaf%
call %tooltest% tsaf.ls
:: test for variable length data types
set flag=-w80 -r -d %tvldtypes1%
call %tooltest% tvldtypes1.ls
:: test for array data types
set flag=-w80 -r -d %tarray1%
call %tooltest% tarray1.ls
:: test for empty data
set flag=-w80 -d %tempty%
call %tooltest% tempty.ls
:: test for all dataset types written to attributes
:: enable -S for avoiding printing NATIVE types
:: need batch mask.bat
set flag=-w80 -v -S %tattr2%
call %tooltest% tattr2.ls MASK
if %totalerr%==0 (
echo. All of the %exefile% %p1% Tests Passed!
echo. All of the %exefile% %p1% Tests Passed! >> %tempResults%
) else (
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!>> %tempResults%
)
if not %totalskip%==0 (
echo. %totalskip% Tests in total Skiped! >> %tempResults%
echo. %totalskip% Tests in total Skiped!
echo.
find "SKIPED" %tempResults% | more +2
)
cd ..\..
rmdir /s/q temptest
for %%i in (testfiles\*.h5) do set %%~ni=
set test_szip=
set output_szip=
for %%v in (p1 p2 tempResults exefile tooltest ln ln_exp tsplit_file tmulti tfamily05d totalskip) do set %%v=

View File

@ -1,22 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
type nul > %2
for /f "tokens=1,2*" %%a in (
%1
) do ( if %%a==Modified: (
echo Modified: XXXX-XX-XX XX:XX:XX XXX>> %2
) else (
echo %%a %%b %%c>>%2
)
)

View File

@ -1,523 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
::This batch file is for h5repack tests
::Usage
:: repacktest release -- release static version
:: repacktest debug -- debug static version
:: repacktest release dll -- release dll version
:: repacktest debug dll -- debug dll version
:: Written By: Fang GUO
:: Date : Jan. 12, 2006
::What is actually doing?
::Example case
::h5repack -i ..\..\testfiles\test_objs.h5 -o ..\..\temptest\out.test_objs.h5
::h5diff ..\..\testfiles\test_objs.h5 ..\..\temptest\out.test_objs.h5 > ..\..\temptest\temp.txt 2>&1
::fc ..\..\temptest\temp.txt temptest\notcomp.txt
::if %ERRORLEVEL%==0 (
:: echo Testing h5repack test_objs.h5 PASSED >> ..\..\repacktest%2_%1.txt
::) else (
:: echo Testing h5repack test_objs.h5 FAILED >> ..\..\repacktest%2_%1.txt
:: more temp.txt >> ..\..\repacktest%2_%1.txt
::)
:: We will check whether the SZIP library available includes encoder or not by
:: calling the szip encoder detecting executable file testh5repack_detect_szip(dll).exe
:: and check the printed value.
:: If the printed value is "yes", then the SZIP library has encoder, HDF5_SZIP_ENCODE will be set as 1.
:: Otherwise, HDF5_SZIP_ENCODE will be set as 0, and some tests will be skipped.
FOR /F "delims=" %%a in ('testfiles\testh5repack_detect_szip%2\%1\testh5repack_detect_szip%2.exe') Do Set "Output=%%a"
if "%Output%"=="yes" (
Set HDF5_SZIP_ENCODE=1
) else (
Set HDF5_SZIP_ENCODE=0
)
:: Track total number of testing errors
set /A totalerr=0
set /A totalskip=0
::*******************************************************************
:: Generate a new temp directory for test h5repack and reference file
::*******************************************************************
::Make a temporary directory for testing h5repack
mkdir temptest
:: Reference Files
:: After running h5repack with a input .h5 file, it will use
:: h5diff to compare the expected .h5 file with the output
:: .h5 file generated by h5repack. The comparison results will be
:: one of the following two cases.
:: Case 1: No difference between the expected .h5 and .h5 generated by h5repack file
type nul > temptest\empty.txt
::Case 2: For test_objs.h5 and test_attr.h5, the output will be "Some objects
:: are not comparable", but actually there is no difference between
type nul > temptest\notcomp.txt
echo -------------------------------->>temptest\notcomp.txt
echo Some objects are not comparable>> temptest\notcomp.txt
echo -------------------------------->>temptest\notcomp.txt
echo Use -v for a list of objects.>> temptest\notcomp.txt
:: Set two variables to contain the following two file names and paths
set nodiff=..\..\temptest\empty.txt
set notcomp=..\..\temptest\notcomp.txt
::****************************************************
:: Set the Environment Variables & Change Dir to .EXE
::****************************************************
:: The first incoming parameter should be configuration (debug or release)
set p1=%1
:: The second parameter should be the types of library (dll or blank)
set p2=%2
:: Set file name for the test results
set tempResults=repacktest%2_%1.txt
:: Set exe file name
set exefile=h5repack%p2%
:: Set a variable for the sub batch file tools\tooltest.bat
set tooltest=..\..\tooltest
:: Set Variables to contain the file name and path of input and output files for testing h5repack
for %%v in (_fill _objs _attr _hlink _layout _early _szip _deflate _shuffle _fletcher _filters _nbit _soffset) do (
set test%%v=..\..\testfiles\h5repack%%v.h5
set output%%v=..\..\temptest\out.h5repack%%v.h5
)
:: Creat the file for saving the tests results
type nul > %tempResults%
:: Change to the direcotory where the .exe file is located
cd h5repack%p2%\%p1%
::*********************************************
:: Test each function by calling TOOLTEST.BAT
::*********************************************
echo.
echo.****************************************************
echo. h5repack%2 %1 T E S T S
echo.****************************************************
:: STARTING COMMENTS
::Basic Usage:
::1. Set flag
::2. Call batch file tooltest.bat followed with the expected file name
::3. Example
::If we want to test
::h5repack -i ..\..\testfiles\test_objs.h5 -o ..\..\temptest\out.test_objs.h5
::At first, we need to set the flag like
::set flag=-i %test_objs% -o %output1%
::Secondly, we call batch file tooltest.bat followed by one of reference files
::call %tooltest% %test_objs% %notcomp%
:: Using Filters (Zlib, SZIP)
::1. Set flag
::2. Call batch file tooltest.bat followed with the expected file name, zlib\szip
::3. Example
::If we want to test
::h5repack -i ..\..\testfiles\test_layout.h5 -o ..\..\temptest\out.test_layout.h5 f dset2:SZIP=8,EC -l dset2:CHUNK=20x10
::At first, we need to set the flag like
::set flag=-i %test_layout% -o %output_layout% f dset2:SZIP=8,EC -l dset2:CHUNK=20x10
::Secondly, we call batch file tooltest.bat followed by one of reference files and szip
::call %tooltest% %test_layout% %nodiff% szip
::Similarly, if you are using zlib, replace "szip" with "zlib" when calling %tooltest%
::If you are using both zlib and szip, replace "szip" with "zlib szip" when calling %tooltest%
::The order of "zlib szip" does matter.
::Skip Tests
::Put "skip" after the reference file, like the following
::set flag=-i %test_scaleoffset% -o %output_scaleoffset% -f dset_none:SOFF=31,IN
::call %tooltest% %test_scaleoffset% %nodiff% skip
:: END COMMENTS
::--------------
:: test0.h5
::--------------
set flag=-i %test_fill% -o %output_fill%
call %tooltest% %test_fill% %nodiff%
::This case will be used as an example case for
::illustration purpose inside tooltest.bat for repacktest
::--------------
:: test_objs.h5
::--------------
:: Actually we are doing:
:: set flag=-i ..\..\testfiles\test_objs.h5 -o ..\..\temptest\out.test_objs.h5
:: call ..\..\tooltest ..\..\testfiles\test_objs.h5 ..\..\temptest\notcomp.txt
set flag=-i %test_objs% -o %output_objs%
call %tooltest% %test_objs% %notcomp%
::--------------
:: test2.h5
::--------------
set flag=-i %test_attr% -o %output_attr%
call %tooltest% %test_attr% %notcomp%
::--------------
:: test3.h5
::--------------
set flag=-i %test_hlink% -o %output_hlink%
call %tooltest% %test_hlink% %nodiff%
::--------------
:: test_layout.h5
::--------------
set flag=-i %test_layout% -o %output_layout%
call %tooltest% %test_layout% %nodiff%
::--------------
:: test_early.h5
::--------------
set flag=-i %test_early% -o %output_early%
call %tooltest% %test_early% %nodiff%
::****************************************************************
:: use test_layout.h5 to write some filters (this file has no filters)
::****************************************************************
::---------------------------
::gzip with individual object
::---------------------------
set flag=-i %test_layout% -o %output_layout% -f dset1:GZIP=1 -l dset1:CHUNK=20x10
call %tooltest% %test_layout% %nodiff% zlib
::-------------
::gzip for all
::-------------
set flag=-i %test_layout% -o %output_layout% -f GZIP=1
call %tooltest% %test_layout% %nodiff% zlib
::--------------------------
::szip for individual object
::--------------------------
set flag=-i %test_layout% -o %output_layout% f dset2:SZIP=8,EC -l dset2:CHUNK=20x10
call %tooltest% %test_layout% %nodiff% szip
::--------------
:: szip for all
::--------------
set flag=-i %test_layout% -o %output_layout% -f SZIP=8,NN
call %tooltest% %test_layout% %nodiff% szip
::-------------------------------
:: shuffle with individual object
::-------------------------------
set flag=-i %test_layout% -o %output_layout% -f dset2:SHUF -l dset2:CHUNK=20x10
call %tooltest% %test_layout% %nodiff%
::----------------
:: shuffle for all
::----------------
set flag=-i %test_layout% -o %output_layout% -f SHUF
call %tooltest% %test_layout% %nodiff%
::-----------------------------------
:: fletcher32 with individual object
::-----------------------------------
set flag=-i %test_layout% -o %output_layout% -f dset2:FLET -l dset2:CHUNK=20x10
call %tooltest% %test_layout% %nodiff%
::--------------------
:: fletcher32 for all
::--------------------
set flag=-i %test_layout% -o %output_layout% -f FLET
call %tooltest% %test_layout% %nodiff%
::------------
::all filters
::------------
set flag=-i %test_layout% -o %output_layout% -f dset2:SHUF -f dset2:FLET -f dset2:SZIP=8,NN -f dset2:GZIP=1 -l dset2:CHUNK=20x10
:: Check whether szlib or zlib is available, if either library is not available, skip the test.
if "%HDF5_EXT_SZIP%"=="" (
call %tooltest% %test_layout% %nodiff% skip
)else (
if "%HDF5_EXT_ZLIB%"=="" (
call %tooltest% %test_layout% %nodiff% skip
) else (
call %tooltest% %test_layout% %nodiff%
)
)
:: ***********************************************************
:: If the filter exists,the following tests assume the input files have filters
:: ***********************************************************
::-----------
:: szip copy
::-----------
set flag=-i %test_szip% -o %output_szip%
::-----------
:: The following checks whether szip library is available,
:: If not, skip the test.
::-----------
if "%HDF5_EXT_SZIP%"=="" (
call %tooltest% %test_szip% %nodiff% skip
) else (
call %tooltest% %test_szip% %nodiff%
)
::------------
::szip remove
::------------
set flag=-i %test_szip% -o %output_szip% -f dset_szip:NONE
::-----------
:: The following checks whether szip library is available,
:: If not, skip the test.
::-----------
if "%HDF5_EXT_SZIP%"=="" (
call %tooltest% %test_szip% %nodiff% skip
) else (
call %tooltest% %test_szip% %nodiff%
)
::--------------
:: deflate copy
::--------------
set flag=-i %test_deflate% -o %output_deflate%
::-----------
:: The following checks whether zlib library is available,
:: If not, skip the test.
::-----------
if "%HDF5_EXT_ZLIB%"=="" (
call %tooltest% %test_deflate% %nodiff% skip
) else (
call %tooltest% %test_deflate% %nodiff%
)
::---------------
:: deflate remove
::---------------
set flag=-i %test_deflate% -o %output_deflate% -f dset_deflate:NONE
::-----------
:: The following checks whether zlib library is available,
:: If not, skip the test.
::-----------
if "%HDF5_EXT_ZLIB%"=="" (
call %tooltest% %test_deflate% %nodiff% skip
) else (
call %tooltest% %test_deflate% %nodiff%
)
::--------------
:: shuffle copy
::--------------
set flag=-i %test_shuffle% -o %output_shuffle%
call %tooltest% %test_shuffle% %nodiff%
::----------------
:: shuffle remove
::----------------
set flag=-i %test_shuffle% -o %output_shuffle% -f dset_shuffle:NONE
call %tooltest% %test_shuffle% %nodiff%
::-----------------
:: fletcher32 copy
::-----------------
set flag=-i %test_fletcher% -o %output_fletcher%
call %tooltest% %test_fletcher% %nodiff%
::------------------
:: fletcher32 remove
::------------------
set flag=-i %test_fletcher% -o %output_fletcher% -f dset_fletcher32:NONE
call %tooltest% %test_fletcher% %nodiff%
::----------
:: nbit copy
::----------
set flag=-i %test_nbit% -o %output_nbit%
call %tooltest% %test_nbit% %nodiff%
::------------
:: nbit remove
::------------
set flag=-i %test_nbit% -o %output_nbit% -f dset_nbit:NONE
call %tooltest% %test_nbit% %nodiff%
::---------
:: nbit add
::---------
set flag=-i %test_nbit% -o %output_nbit% -f dset_int31:NBIT
call %tooltest% %test_nbit% %nodiff%
::----------------
:: scaleoffset add
::----------------
set flag=-i %test_soffset% -o %output_soffset% -f dset_none:SOFF=31,IN
call %tooltest% %test_soffset% %nodiff%
::-----------------
:: scaleoffset copy
::-----------------
set flag=-i %test_soffset% -o %output_soffset%
call %tooltest% %test_soffset% %nodiff%
::-------------------
:: scaleoffset remove
::-------------------
set flag=-i %test_soffset% -o %output_soffset% -f dset_scaleoffset:NONE
call %tooltest% %test_soffset% %nodiff%
::--------------------
:: remove all filters
::--------------------
::--------------------
::-- Currently this test is very difficult to be tested on windows since the internal filters
::-- such as fletcher32, scaleoffset, shuffle is hard to be checked in batch files.
::-- Now only szip and deflate filters are checked. KY 2006-11-20
:: Check whether szlib or zlib is available, if either library is not available, skip the test.
set flag=-i %test_filters% -o %output_filters% -f NONE
if "%HDF5_EXT_SZIP%"=="" (
call %tooltest% %test_filters% %nodiff% skip
)else (
if "%HDF5_EXT_ZLIB%"=="" (
call %tooltest% %test_filters% %nodiff% skip
) else (
call %tooltest% %test_filters% %nodiff%
)
)
::------------------
::filter conversions
::------------------
set flag=-i %test_deflate% -o %output_deflate% -f dset_deflate:SZIP=8,NN
call %tooltest% %test_deflate% %nodiff% zlib szip
set flag=-i %test_szip% -o %output_szip% -f dset_szip:GZIP=1
call %tooltest% %test_szip% %nodiff% zlib szip
::------
::limit
::------
set flag=-i %test_layout% -o %output_layout% -f GZIP=1 -m 1024
call %tooltest% %test_layout% %nodiff% zlib
::-----
::file
::-----
set flag=-i %test_layout% -o %output_layout% -e ..\..\testfiles\info.h5repack
call %tooltest% %test_layout% %nodiff% zlib
echo. *********************************************
echo layout options (these files have no filters)
echo. *********************************************
set flag=-i %test_layout% -o %output_layout% -l dset2:CHUNK=20x10
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l CHUNK=20x10
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset2:CONTI
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l CONTI
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset2:COMPA
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l COMPA
call %tooltest% %test_layout% %nodiff%
echo. *****************************************
echo layout conversions (file has no filters)
echo. *****************************************
set flag=-i %test_layout% -o %output_layout% -l dset_compact:CONTI
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset_compact:CHUNK=2x5
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset_compact:COMPA
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset_contiguous:COMPA
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset_contiguous:CHUNK=3x6
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset_contiguous:CONTI
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset_chunk:COMPA
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset_chunk:CHUNK=18x13
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_layout% -o %output_layout% -l dset_chunk:CONTI
call %tooltest% %test_layout% %nodiff%
set flag=-i %test_objs% -o %output_objs% -n
call %tooltest% %test_layout% %nodiff%
cd ..\..
echo.
::Tests how many tests failed and how many tests skiped
if %totalerr%==0 (
echo. All of the %exefile% %p1% Tests Passed!
echo. All of the %exefile% %p1% Tests Passed! >> %tempResults%
) else (
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!>> %tempResults%
)
if not %totalskip%==0 (
echo. %totalskip% Tests in total Skiped! >> %tempResults%
echo. %totalskip% Tests in total Skiped!
echo.
find "SKIPED" %tempResults% | more +2
)
:: remove direcotory temptest and all its contents
rmdir /s/q temptest
:: Clean environment variables
for %%v in (p1 p2 tempResults exefile tooltest nodiff notcomp totalerr totalskip) do set %%v=
for %%v in (0 1 2 3 4 5 _szip _deflate _shuffle _fletcher32 _nbit _scaleoffset _all) do (
set test%%v=
set output%%v=
)

View File

@ -1,161 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
::This batch file is for h5stat tests.
::Usage
:: stattest release -- release static version
:: stattest debug -- debug static version
:: stattest release dll -- release dll version
:: stattest debug dll -- debug dll version
:: Written By:MuQun Yang
:: Date : Oct. 18, 2006
:: Track total number of testing errors
set /A totalerr=0
set /A totalskip=0
::**********************************************
:: Generate a new temp directory for test h5stat
::**********************************************
:: Make a tempory directory for stattest
mkdir temptest
::****************************************************
:: Set the Environment Variables & Change Dir to .EXE
::****************************************************
:: The first incoming parameter should be configuration (debug or release)
set p1=%1
:: The second parameter should be the types of library (dll or blank)
set p2=%2
:: Set up some variables for convenience
:: tempResults will contain the tests results temporarily
set tempResults=stattest%p2%_%p1%.txt
:: exefile will contain the file name of the executable file
set exefile=h5stat%p2%
:: tooltest is the sub-batch file which will be called by tool test
set tooltest=..\..\tooltest
::Handle the expected file and the actual output file
::ln is the total line numbers to be deleted from the actual output
set ln=1
::ln_exp is the total line numbers to be deleted from the expected output
set ln_exp=4
:: NOTE1
::Set some variables to contain .h5 file and its path for convenience
set file1=..\..\h5stat\testfiles\h5stat_filters.h5
set file2=..\..\h5stat\testfiles\h5stat_tsohm.h5
set file3=..\..\h5stat\testfiles\h5stat_newgrat.h5
::Create the file to contain the tests output
type nul > %tempResults%
::Change directory to the directory where the .exe file is located
cd h5stat%p2%\%p1%
::*********************************************
:: Test each function by calling TOOLTEST.BAT
::*********************************************
::USAGE of stattest.bat
::1. Set flag
::2. Call batch file tooltest.bat followed with the expected file name
::3. Example
::If we want to test h5stat \testfiles\file1.h5
::At first, we need to set the flag like
::set flag=%file1%
::Secondly, we call batch file tooltest.bat by
::call %tooltest% h5stat_1.txt
echo.
echo.****************************************************
echo. H5stat%2 %1 T E S T S
echo.****************************************************
::--------------
::Common usage
::--------------
::1.0 help message
set flag=-h
call %tooltest% h5stat_help1.ddl
::1.1 another way to generate "help message"
set flag=--help
call %tooltest% h5stat_help2.ddl
::1.2 all statisical information
set flag=%file1%
call %tooltest% h5stat_filters.ddl
::1.3 print file information
set flag=-f %file1%
call %tooltest% h5stat_filters-file.ddl
::1.4 print file metadata information
set flag=-F %file1%
call %tooltest% h5stat_filters-F.ddl
::1.5 print dataset information
set flag=-d %file1%
call %tooltest% h5stat_filters-d.ddl
::1.6 print group information
set flag=-g %file1%
call %tooltest% h5stat_filters-g.ddl
::1.7 print datatype metadata
set flag=-dT %file1%
call %tooltest% h5stat_filters-dT.ddl
:: h5stat_tsohm.h5 is a copy of ../test/tsohm.h5 generated by tsohm.c
:: as of release 1.8.0-alpha4
set flag=%file2%
call %tooltest% h5stat_tsohm.ddl
:: h5stat_newgrat.h5 is generated by h5stat_gentest.c
set flag=%file3%
call %tooltest% h5stat_newgrat.ddl
::Change directory to hdf5\tools
cd ..\..
::Check if any of tests failed or skiped for the time being
echo.
if "%totalerr%"=="0" (
echo. All of the %exefile% %p1% Tests Passed!
echo. All of the %exefile% %p1% Tests Passed! >> %tempResults%
) else (
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!
echo. %exefile% %p1% Tests Finished with %totalerr% Errors!>> %tempResults%
)
if not "%totalskip%"=="0" (
echo. %totalskip% Tests in total Skiped! >> %tempResults%
echo. %totalskip% Tests in total Skiped!
find "SKIPED" %tempResults% | more +2
)
::NOTE1 CLEAN
::Clean up Environment Variables
for %%i in (p1 p2 tempResults exefile tooltest ln ln_exp totalskip totalerr file1 file2 file3) do set %%i=
set flag=
::Clean up Temporary Files
:: rmdir /s/q temptest

View File

@ -1,66 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@ ECHO OFF
REM This batch file includes hdf5 tool(h5dump, h5diff, h5ls, h5import, and h5repack) testings.
REM testhdf5tools release -- release static version
REM testhdf5tools debug -- debug static version
REM testhdf5tools release dll -- release dll version
REM testhdf5tools debug dll -- debug dll version
REM By: Xuan Bai
REM Created: August 2, 2004
REM Last Modified: August 2, 2004
@type nul > toolstest_%1%2.txt
@echo ***************************************************************************** >> toolstest_%1%2.txt
@echo HDF5 Tools Tests -- %1 %2 >> toolstest_%1%2.txt
@echo ***************************************************************************** >> toolstest_%1%2.txt
call dumptest %1 %2
@more dumptest%2_%1.txt >> toolstest_%1%2.txt
@del dumptest%2_%1.txt
call difftest %1 %2
@more difftest%2_%1.txt >> toolstest_%1%2.txt
@del difftest%2_%1.txt
call lstest %1 %2
@more lstest%2_%1.txt >> toolstest_%1%2.txt
@del lstest%2_%1.txt
call importtest %1 %2
@more importtest%2_%1.txt >> toolstest_%1%2.txt
@del importtest%2_%1.txt
call repacktest %1 %2
@more repacktest%2_%1.txt >> toolstest_%1%2.txt
@del repacktest%2_%1.txt
call stattest %1 %2
@more stattest%2_%1.txt >> toolstest_%1%2.txt
@del stattest%2_%1.txt
set p2=%2
if "%2"=="dll" (
echo "DLL version is not available for h5copy,h5jam or h5unjam, SKIP the test" >>toolstest_%1%2.txt
) else (
call jamtest %1 %2
@more jamtest%2_%1.txt >> toolstest_%1%2.txt
@del jamtest%2_%1.txt
call copytest %1 %2
@more copytest%2_%1.txt >> toolstest_%1%2.txt
@del copytest%2_%1.txt
)

View File

@ -1,345 +0,0 @@
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@echo off
::This batch file will be called by the following batch files
::---dumptest.bat
::---difftest.bat
::---importtest.bat
::---lstest.bat
::---repacktest.bat
::---stattest.bat
:: Written By: Fang GUO
:: Date : Jan. 12, 2006
:: Modified By: MuQun Yang
:: Date : Oct. 19, 2006
:: Setting the starting column number for "PASSED/FAILED/SKIPED"
set flagmax=65
:: Decide which tool will be test
:: Define an environment variable to decide which test should run
:: Find string "dll" inside %exefile% and remove it
set test_exefile=%exefile:dll=%
if %test_exefile%==h5repack goto REPACKCOPY
if %test_exefile%==h5copy goto REPACKCOPY
if %test_exefile%==h5diff goto COMMON
if %test_exefile%==h5dump goto DUMP
if %test_exefile%==h5ls goto COMMON
if %test_exefile%==h5stat goto COMMON
if %test_exefile%==h5import goto IMPORT
:: This block is for Repack test
:REPACKCOPY
::----------------------------------
::Test for h5repack or h5repackdll
::----------------------------------
:: Get the input parameters
:: Example case for h5repack
:: if %1 is ..\..\testfiles\test1.h5
:: This line will set variable %testinput% equal to ..\..\testfiles\test1.h5
set testinput=%1
::echo %testinput%
:: %testinput:~16% will get all of the chars of %testinput% except the first 16 chars
:: The number 16 here is calculated through the length of "..\..\testfiles\".
:: Example case: %testinput:~16% will give you test1.h5
:: The whole line will set varialbe %testoutput% equal to ..\..\temptest\out.test1.h5
set testoutput=..\..\temptest\out.%testinput:~16%
::echo %testoutput%
::Set exp_file equal to the second parameter
:: Example case: %exp_file% will be equal to %nodiff%
set exp_file=%2
:: Set a variable to be the path to the real output
set actual_output=..\..\temptest\temp.txt
:: Extract the string for printing results
:: Variable flagout is for printing purpose only
:: These lines will get rid of the paths inside %flag% and set it to %flagout%
:: Example case:
:: %flag% was set inside repacktest.bat to
:: "-i ..\..\testfiles\test1.h5 -o ..\..\temptest\out.test1.h5"
:: The following two lines will set %flagout% equal to
:: "-i test1.h5 -o ..\..\temptest\out.test1.h5"
:: KY note: replace the string "..\..\testfiles\test1.h5" to "test1.h5", this can be done with
:: "..\..\testfiles\t=t" inside the variable with"% %". Now the testing file has been changed
:: from test1.h5 to h5repack..., so the following line should be changed too. 11/21/2006.
:: replace "testfiles\t" with "t" if the name of testing file is test***.h5. Now the testing file is h5repack**.h5,
:: replace "h" with "t".
set flagout=%flag:..\..\testfiles\h=h%
::echo %flagout%
set flagout=%flagout:..\..\temptest\h=h%
::echo %flagout%
:: "." will be used as a delimiter in the for loop for printing output
:: But "." inside ".txt" and".." will not be treated as a delimiter. So replace it
:: with a "#" and recover it before printing results.
set flagout=%flagout:.txt=#txt%
set flagout=%flagout:..=##%
:: echo %flagout%
:: This for loop uses "." as a delimiter and gets the first and the fourth tokens
:: and assign it to var1 and var4
::Example case:
:: %flagout% now is "-i test1.h5 -o ##\##\temptest\out.test1.h5"
:: This for loop will set %var1% as "-i test1" and %var4% as "h5"
for /f "tokens=1,4 delims=." %%a in ("%flagout%") do (
set var1=%%a
set var4=%%b
)
::Add in extension for input file
::Example case: %var1% is "-i test1" in previous step
:: This step will set %var1% as %var1% as "-i test1.h5"
set var1=%var1%.h5
::Check for output file name
::Example case: %var4% is ".h5" in previous step
::This step will set it to nothing
set var4=%var4:~2%
::Check if %var4% is blank, we will print the "flagout" with the "var1" only
if "%var4%"=="" (
set flagout=%var1%
goto CHOICE
)
::If %var4% is not blank, for example in the "file test" we have flags like
::set flag=-i %test4% -o %output4% -e ..\..\testfiles\h5repack_info.txt
::In this case, we want to print the %var4% out
::Recover "."
set var4=%var4:#=.%
set flagout=%var1% %var4%
if %test_exefile%==h5copy (
set testoutput=..\..\testfiles\out.h5copytst.h5
goto GTEST
)
:: if %test_exefile%==h5copy goto GTEST
::Based on the third parameter, we will go to different part.
:: GTEST means general test, no need to check zlib and szlib
:CHOICE
if "%3"=="" goto GTEST
if "%3"=="SKIP" goto SKIP
if "%3"=="zlib" (
if "%4"=="" goto ZLIB
if "%4"=="szip" goto ZSLIB
goto SKIP
)
if "%3"=="szip" (
if "%4"=="" goto SZIP
goto SKIP
)
goto SKIP
:ZLIB
if "%HDF5_EXT_ZLIB%"=="zdll.lib" goto GTEST
goto SKIP
:SZIP
if "%HDF5_EXT_SZIP%"=="szlibdll.lib" (
if %HDF5_SZIP_ENCODE%==1 goto GTEST
)
goto SKIP
:ZSLIB
if "%HDF5_EXT_ZLIB%"=="zdll.lib" (
if "%HDF5_EXT_SZIP%"=="szlibdll.lib" (
if %HDF5_SZIP_ENCODE%==1 goto GTEST
)
)
goto SKIP
::Run the .exe file with the specified flag and generate %testoutput%
::Compare the expected and the actual output and save the comparison
::results into .\..\temptest\temp.txt(%actual_output%)
::Example case:
::Expected output(%testinput%) is "..\..\testfiles\test1.h5"
::Actual output(%testoutput%) is "..\..\temptest\out.test1.h5"
::Save the comparion results into .\..\temptest\temp.txt
:GTEST
%exefile% %flag%
..\..\h5diff%p2%\%p1%\h5diff%p2% %testinput% %testoutput% > %actual_output% 2>&1
if %test_exefile%==h5copy (
del %testoutput%
)
goto RESULTS
:: End of Repack tests
:: h5copy tests
::H5diff and H5ls Tests
:COMMON
:: ------------------------------------------------------
:: Test for Tools which only need to run .exe and compare
:: actual_output and expected_output
:: ------------------------------------------------------
:: Call tooltest with the following parameters set in difftest.bat
:: 1. expected_outputfile.txt
:: 2. flags
::Set a flaghandle for output tests results
set flagout=%flag:..\..\testfiles\=%
set flagout=%flagout:..\..\temptest\=%
if "%2%"=="SKIP" goto SKIP
::Set the file name and path for the expected and actual outputs
set exp_file=..\..\temptest\%1
set actual_output=..\..\temptest\out.%1
::Run .exe file with flag and rediect the output to a temp file
%exefile% %flag% > ..\..\temptest\temp.txt 2>&1 | more
if "%2%"=="MASK" goto MASK
more /e +%ln% ..\..\temptest\temp.txt > %actual_output%
if %test_exefile%==h5stat (
more /e +%ln_exp% ..\..\h5stat\testfiles\%1 > %exp_file%
) else (
more /e +%ln_exp% ..\..\testfiles\%1 > %exp_file%
)
::Clean up temporary file
del ..\..\temptest\temp.txt
goto RESULTS
:MASK
call ..\..\mask ..\..\temptest\temp.txt %actual_output%
call ..\..\mask ..\..\testfiles\%1 %exp_file%
more /e +1 %actual_output% > ..\..\temptest\tempa%1
more /e +4 %exp_file% > ..\..\temptest\tempe%1
move /Y ..\..\temptest\tempa%1 %actual_output%
move /Y ..\..\temptest\tempe%1 %exp_file%
del ..\..\temptest\temp.txt
goto RESULTS
:DUMP
:: -----------------------------
:: Test for h5dump or h5dumpdll
:: ------------------------------
if "%2"=="" goto COMMON
if "%2"=="zlib" (
if "%3"=="" goto DUMPZLIB
if "%3"=="szip" goto DUMPSZ
)
if "%2"=="szip" goto DUMPSZIP
if "%2"=="SKIP" goto SKIP
:DUMPZLIB
if "%HDF5_EXT_ZLIB%"=="zdll.lib" goto COMMON
goto SKIP
:DUMPSZIP
if "%HDF5_EXT_SZIP%"=="szlibdll.lib" goto COMMON
goto SKIP
:DUMPSZ
if "%HDF5_EXT_ZLIB%"=="zdll.lib" (
if "%HDF5_EXT_SZIP%"=="szlibdll.lib" goto COMMON
)
goto SKIP
:IMPORT
set exp_file=..\..\temptest\exp_%1
set actual_output=..\..\temptest\act_%1
set flagout=%flag:..\..\testfiles\=%
set flagout=%flagout:..\..\h5import\=%
set flagout=%flagout:..\..\temptest\=%
%exefile% %flag%
..\..\h5dump%p2%\%p1%\h5dump%p2% ..\..\h5import\testfiles\%2 | more +%ln% >%exp_file% 2>&1
..\..\h5dump%p2%\%p1%\h5dump%p2% ..\..\temptest\out.%2 | more +%ln%>%actual_output% 2>&1
:RESULTS
::-------------------
::Echo tests results
::-------------------
fc %exp_file% %actual_output% > ..\..\temp_fc.txt
type ..\..\temp_fc.txt | find "FC: no dif" > nul
if not errorlevel 1 (
set result=PASSED
) else (
set result=FAILED
set /A totalerr=totalerr+1
)
goto ALIGN
:SKIP
set flagout=%flag:..\..\testfiles\=%
set flagout=%flagout:..\..\temptest\=%
set result=-SKIPED-
set /A totalskip=totalskip+1
goto ALIGN
:ALIGN
::Set a var to count the # of chars for %flagout%
set flaghandle=%flagout:"=**%
set /A n=0
if not "%flaghandle%"=="" goto ALOOP
:ALOOP
set firstchar=%flaghandle:~0,1%
set /A n=n+1
set flaghandle=%flaghandle:~1%
if not "%flaghandle%"=="" goto ALOOP
:AOUT
::Test if the length of any flags is over the maximum setting
if /I %n% GTR %flagmax% goto APRINT
if not %n%==%flagmax% (
set flagout=%flagout%@
set /A n=n+1
)
if not %n%==%flagmax% goto AOUT
:APRINT
::Recover " and space
set flagout=%flagout:@= %
set flagout=%flagout:**=" %
echo %exefile% %flagout% %result%
echo %exefile% %flagout% %result% >> ..\..\%tempResults%
if "%result%"=="FAILED" (
::more ..\..\temp_fc.txt
more ..\..\temp_fc.txt >> ..\..\%tempResults%
)
:END
::Clean up temporary file
::For repacktest, there will be a tempory file under directory tools\temptest
if defined actual_ouput del %actual_output%
::clean the environment variables
for %%v in (exp_file actual_output flag testinput testoutput test_exefile var1 var4 flagout flaghandle result tests) do set %%v=

View File

@ -420,16 +420,16 @@ Package=<4>
Project_Dep_Name vfddll
End Project Dependency
Begin Project Dependency
Project_Dep_Name error_api
Project_Dep_Name error_test
End Project Dependency
Begin Project Dependency
Project_Dep_Name error_apidll
Project_Dep_Name error_testdll
End Project Dependency
Begin Project Dependency
Project_Dep_Name error_compat
Project_Dep_Name err_compat
End Project Dependency
Begin Project Dependency
Project_Dep_Name error_compatdll
Project_Dep_Name err_compatdll
End Project Dependency
Begin Project Dependency
Project_Dep_Name h5mkgrp
@ -1011,7 +1011,7 @@ Package=<4>
###############################################################################
Project: "error_api"="..\..\test\error_api\error_api.dsp" - Package Owner=<4>
Project: "error_test"="..\..\test\error_test\error_test.dsp" - Package Owner=<4>
Package=<5>
{{{
@ -1029,7 +1029,7 @@ Package=<4>
###############################################################################
Project: "error_apidll"="..\..\test\error_apidll\error_apidll.dsp" - Package Owner=<4>
Project: "error_testdll"="..\..\test\error_testdll\error_testdll.dsp" - Package Owner=<4>
Package=<5>
{{{
@ -1047,7 +1047,7 @@ Package=<4>
###############################################################################
Project: "error_compat"="..\..\test\error_compat\error_compat.dsp" - Package Owner=<4>
Project: "err_compat"="..\..\test\err_compat\err_compat.dsp" - Package Owner=<4>
Package=<5>
{{{
@ -1065,7 +1065,7 @@ Package=<4>
###############################################################################
Project: "error_compatdll"="..\..\test\error_compatdll\error_compatdll.dsp" - Package Owner=<4>
Project: "err_compatdll"="..\..\test\err_compatdll\err_compatdll.dsp" - Package Owner=<4>
Package=<5>
{{{

View File

@ -1,102 +0,0 @@
# Microsoft Developer Studio Project File - Name="error_api" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=error_api - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "error_api.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "error_api.mak" CFG="error_api - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "error_api - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "error_api - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "error_api - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "../../../test/error_api/Release"
# PROP Intermediate_Dir "../../../test/error_api/Release"
# PROP Target_Dir ""
F90=df.exe
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /W3 /GX /O2 /I "..\..\..\src" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP) /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcd.lib" /include:"_gethostname@8"
!ELSEIF "$(CFG)" == "error_api - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "../../../test/error_api/Debug"
# PROP Intermediate_Dir "../../../test/error_api/Debug"
# PROP Target_Dir ""
F90=df.exe
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\..\..\src" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP) /nologo /subsystem:console /debug /machine:I386 /nodefaultlib:"libc.lib" /include:"_gethostname@8" /pdbtype:sept
!ENDIF
# Begin Target
# Name "error_api - Win32 Release"
# Name "error_api - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\..\test\error_test.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@ -1,103 +0,0 @@
# Microsoft Developer Studio Project File - Name="error_apidll" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=error_apidll - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "error_apidll.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "error_apidll.mak" CFG="error_apidll - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "error_apidll - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "error_apidll - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "error_apidll - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "../../../test/error_apidll/Release"
# PROP Intermediate_Dir "../../../test/error_apidll/Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
F90=df.exe
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\..\src" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /D "_HDF5USEDLL_" /D "_HDF5TESTUSEDLL_" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WS2_32.lib /nologo /subsystem:console /machine:I386 /include:"_gethostname@8"
!ELSEIF "$(CFG)" == "error_apidll - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "../../../test/error_apidll/Debug"
# PROP Intermediate_Dir "../../../test/error_apidll/Debug"
# PROP Target_Dir ""
F90=df.exe
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\..\..\src" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_HDF5USEDLL_" /D "_HDF5TESTUSEDLL_" /YX /FD /GZ /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WS2_32.lib /nologo /subsystem:console /debug /machine:I386 /include:"_gethostname@8" /pdbtype:sept
!ENDIF
# Begin Target
# Name "error_apidll - Win32 Release"
# Name "error_apidll - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\..\test\error_test.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@ -1,102 +0,0 @@
# Microsoft Developer Studio Project File - Name="error_compat" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=error_compat - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "error_compat.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "error_compat.mak" CFG="error_compat - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "error_compat - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "error_compat - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "error_compat - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "../../../test/error_compat/Release"
# PROP Intermediate_Dir "../../../test/error_compat/Release"
# PROP Target_Dir ""
F90=df.exe
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /W3 /GX /O2 /I "..\..\..\src" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP) /nologo /subsystem:console /machine:I386 /nodefaultlib:"libcd.lib" /include:"_gethostname@8"
!ELSEIF "$(CFG)" == "error_compat - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "../../../test/error_compat/Debug"
# PROP Intermediate_Dir "../../../test/error_compat/Debug"
# PROP Target_Dir ""
F90=df.exe
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\..\..\src" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WS2_32.lib $(HDF5_EXT_ZLIB) $(HDF5_EXT_SZIP) /nologo /subsystem:console /debug /machine:I386 /nodefaultlib:"libc.lib" /include:"_gethostname@8" /pdbtype:sept
!ENDIF
# Begin Target
# Name "error_compat - Win32 Release"
# Name "error_compat - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\..\test\err_compat.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@ -1,103 +0,0 @@
# Microsoft Developer Studio Project File - Name="error_compatdll" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=error_compatdll - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "error_compatdll.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "error_compatdll.mak" CFG="error_compatdll - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "error_compatdll - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "error_compatdll - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "error_compatdll - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "../../../test/error_compatdll/Release"
# PROP Intermediate_Dir "../../../test/error_compatdll/Release"
# PROP Target_Dir ""
F90=df.exe
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\..\src" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /D "_HDF5USEDLL_" /D "_HDF5TESTUSEDLL_" /YX /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WS2_32.lib /nologo /subsystem:console /machine:I386 /include:"_gethostname@8"
!ELSEIF "$(CFG)" == "error_compatdll - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "../../../test/error_compatdll/Debug"
# PROP Intermediate_Dir "../../../test/error_compatdll/Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
F90=df.exe
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\..\..\src" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_HDF5USEDLL_" /D "_HDF5TESTUSEDLL_" /YX /FD /GZ /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib WS2_32.lib /nologo /subsystem:console /debug /machine:I386 /include:"_gethostname@8" /pdbtype:sept
!ENDIF
# Begin Target
# Name "error_compatdll - Win32 Release"
# Name "error_compatdll - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\..\test\err_compat.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project