00001
00002 #include "HltTools/PathResolver.h"
00003
00004 #include <cstdlib>
00005 #include <cstdio>
00006 #include <iostream>
00007
00008 int main ()
00009 {
00010 char b1[256];
00011
00012
00013
00014 sprintf (b1, "APATH=../test:../test/A:../test/B");
00015
00016 ::putenv (b1);
00017
00018 const char* env_ptr = ::getenv ("APATH");
00019 if (env_ptr != 0)
00020 {
00021 std::string env = env_ptr;
00022
00023 std::cout << "APATH=" << env << std::endl;
00024 }
00025
00026 std::string name;
00027
00028 name = PathResolverFindFile ("a.txt", "APATH");
00029 std::cout << "1) [a.txt] Name = " << name << " [expected : ../test/A/a.txt]" << std::endl;
00030
00031 name = PathResolverFindFile ("x", "APATH");
00032 std::cout << "2) [x] Name = " << name << " [expected : ]" << std::endl;
00033
00034 name = PathResolverFindDirectory ("x", "APATH");
00035 std::cout << "3) [x] Name = " << name << " [expected : ../test/A/x]" << std::endl;
00036
00037 name = PathResolver::find_file ("b.txt", "APATH");
00038 std::cout << "4) [b.txt] Name = " << name << " [expected : ../test/A/b.txt]" << std::endl;
00039
00040 name = PathResolver::find_file ("c.txt", "APATH");
00041 std::cout << "5) [c.txt] Name = " << name << " [expected : ../src/dd.txt]" << std::endl;
00042
00043 name = PathResolver::find_file ("A/a.txt", "APATH");
00044 std::cout << "6) [A/a.txt] Name = " << name << " [expected : ../test/A/a.txt]" << std::endl;
00045
00046 name = PathResolver::find_file ("A/d.txt", "APATH");
00047 std::cout << "7) [A/d.txt] Name = " << name << " [expected : ]" << std::endl;
00048
00049 name = PathResolver::find_file ("A/e.txt", "APATH");
00050 std::cout << "8) [A/e.txt] Name = " << name << " [expected : ]" << std::endl;
00051
00052 name = PathResolver::find_file ("e.txt", "APATH", PathResolver::RecursiveSearch);
00053 std::cout << "9) [e.txt] Name = " << name << " [expected : ./s/t/u/e.txt]" << std::endl;
00054
00055 }