1 /*=========================================================================
2 Program: vv http://www.creatis.insa-lyon.fr/rio/vv
5 - University of LYON http://www.universite-lyon.fr/
6 - Léon Bérard cancer center http://www.centreleonberard.fr
7 - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr
9 This software is distributed WITHOUT ANY WARRANTY; without even
10 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 PURPOSE. See the copyright notices for more information.
13 It is distributed under dual licence
15 - BSD See included LICENSE.txt file
16 - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
17 ===========================================================================*/
25 #include <itksys/SystemTools.hxx>
28 const size_t NUMTESTS=2;
31 const char mhd_files[NUMTESTS][128] = {
32 CLITK_DATA_PATH"/4d/mhd/00.mhd",
33 CLITK_DATA_PATH"/4d/mhd/bh.mhd"
36 // pre-written validation files. the idea
37 // is that the output generated from the test
38 // files match the verification files
39 const char validation_files[NUMTESTS][128] = {
40 CLITK_DATA_PATH"/tools/clitkImageInfoTestValidate3D.out",
41 CLITK_DATA_PATH"/tools/clitkImageInfoTestValidate4D.out"
44 int main(int argc, char** argv)
49 for (size_t i = 0; i < NUMTESTS; i++) {
50 std::ostringstream cmd_line;
51 cmd_line << "clitkImageInfo " << mhd_files[i] << " > clitkImageInfoTest.out";
53 std::cout << "Executing " << cmd_line.str() << std::endl;
54 system(cmd_line.str().c_str());
56 // compare output with validation file
57 std::cout << "Validating output against " << validation_files[i] << std::endl;
58 bool differ = itksys::SystemTools::FilesDiffer("clitkImageInfoTest.out", validation_files[i]);
62 std::cout << "FAILED: Program output and reference do not match." << std::endl;
66 itksys::SystemTools::RemoveFile("clitkImageInfoTest.out");
67 std::cout << "PASSED" << std::endl;
70 return failed ? -1 : 0;