@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\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 ::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\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