test-vaulter-setup.cc

Go to the documentation of this file.
00001 #include "config.h"
00002 
00003 #include <iostream>
00004 #include <fstream>
00005 #include <iomanip>
00006 #include <string>
00007 #include <cassert>
00008 
00009 #include "asserts.h"
00010 #include "error.h"
00011 #include "fs.h"
00012 #include "vaulter.h"
00013 
00014 bool make_dir(const std::string& path)
00015 {
00016         bool thrown;
00017 
00018         thrown = false;
00019         try {
00020                 mk_dir(path);
00021         }
00022         catch(...) {
00023                 thrown = true;
00024         }
00025 
00026         return(thrown == false);
00027 }
00028 
00029 void setup(void)
00030 {
00031         std::ofstream out;
00032 
00033         assert(make_dir("./test-vaulter.dir"));
00034         assert(make_dir("./test-vaulter.dir/group-1"));
00035         assert(make_dir("./test-vaulter.dir/group-1/vault-1"));
00036         assert(make_dir("./test-vaulter.dir/group-1/vault-2"));
00037         assert(make_dir("./test-vaulter.dir/group-1/vault-3"));
00038         assert(make_dir("./test-vaulter.dir/group-1/vault-1/2003-09-15"));
00039         assert(make_dir("./test-vaulter.dir/group-1/vault-2/2003-09-16"));
00040         assert(make_dir("./test-vaulter.dir/group-1/vault-3/2003-09-17"));
00041         assert(make_dir("./test-vaulter.dir/group-1/vault-1/2003-09-18.incomplete"));
00042         assert(make_dir("./test-vaulter.dir/group-1/vault-1/2003-09-18.corrupt"));
00043         assert(make_dir("./test-vaulter.dir/group-1/vault-2/2003-09-19"));
00044         assert(make_dir("./test-vaulter.dir/group-1/vault-3/2003-09-20"));
00045         assert(make_dir("./test-vaulter.dir/group-1/vault-1/2003-09-21"));
00046         assert(make_dir("./test-vaulter.dir/group-1/vault-2/2003-09-22"));
00047         assert(make_dir("./test-vaulter.dir/group-2"));
00048         assert(make_dir("./test-vaulter.dir/group-2/vault-1"));
00049         assert(make_dir("./test-vaulter.dir/group-2/vault-2"));
00050         assert(make_dir("./test-vaulter.dir/group-2/vault-3"));
00051         assert(make_dir("./test-vaulter.dir/group-2/vault-1/2003-09-15"));
00052         assert(make_dir("./test-vaulter.dir/group-2/vault-2/2003-09-16"));
00053         assert(make_dir("./test-vaulter.dir/group-2/vault-3/2003-09-17"));
00054         assert(make_dir("./test-vaulter.dir/group-2/vault-1/2003-09-18"));
00055         assert(make_dir("./test-vaulter.dir/group-2/vault-2/2003-09-19"));
00056         assert(make_dir("./test-vaulter.dir/group-2/vault-3/2003-09-20"));
00057         assert(make_dir("./test-vaulter.dir/group-2/vault-1/2003-09-21"));
00058         assert(make_dir("./test-vaulter.dir/log.dir"));
00059         assert(make_dir("./test-vaulter.dir/log.dir/log-1.dir"));
00060         assert(make_dir("./test-vaulter.dir/log.dir/log-2.dir"));
00061 
00062         out.open("./test-vaulter.dir/file-1.conf");
00063         assert(out.is_open());
00064         out << "log-dir ./test-vaulter.dir/log.dir/log-1.dir" << std::endl;
00065         out << "vault ./test-vaulter.dir/group-1/*" << std::endl;
00066         out << "vault-selection-behavior round-robin" << std::endl;
00067         out.close();
00068 
00069         assert(make_dir("./test-vaulter.dir/log.dir/log-3.dir"));
00070         assert(make_dir("./test-vaulter.dir/group-3"));
00071         assert(make_dir("./test-vaulter.dir/group-3/vault-1"));
00072         assert(make_dir("./test-vaulter.dir/group-3/vault-1/2006-06-20"));
00073         assert(make_dir("./test-vaulter.dir/group-3/vault-1/2006-06-21"));
00074         assert(make_dir("./test-vaulter.dir/group-3/vault-1/2006-06-22"));
00075         assert(make_dir("./test-vaulter.dir/group-3/vault-1/2006-06-23"));
00076         assert(make_dir("./test-vaulter.dir/group-3/vault-1/2006-06-24"));
00077 
00078         out.open("./test-vaulter.dir/log.dir/log-3.dir/2006-06-20.log");
00079         assert(out.is_open());
00080         out << "Hello World" << std::endl;
00081         out.close();
00082 
00083         out.open("./test-vaulter.dir/log.dir/log-3.dir/2006-06-20.report");
00084         assert(out.is_open());
00085         out << "Hello World" << std::endl;
00086         out.close();
00087 
00088         out.open("./test-vaulter.dir/log.dir/log-3.dir/2006-06-21.relink");
00089         assert(out.is_open());
00090         out << "Hello World" << std::endl;
00091         out.close();
00092 
00093         out.open("./test-vaulter.dir/log.dir/log-3.dir/2006-06-22.log");
00094         assert(out.is_open());
00095         out << "Hello World" << std::endl;
00096         out.close();
00097 
00098         out.open("./test-vaulter.dir/log.dir/log-3.dir/2006-06-22.report");
00099         assert(out.is_open());
00100         out << "Hello World" << std::endl;
00101         out.close();
00102 
00103         out.open("./test-vaulter.dir/log.dir/log-3.dir/2006-06-23.log");
00104         assert(out.is_open());
00105         out << "Hello World" << std::endl;
00106         out.close();
00107 
00108         out.open("./test-vaulter.dir/log.dir/log-3.dir/2006-06-23.report");
00109         assert(out.is_open());
00110         out << "Hello World" << std::endl;
00111         out.close();
00112 
00113         out.open("./test-vaulter.dir/file-2.conf");
00114         assert(out.is_open());
00115         out << "log-dir ./test-vaulter.dir/log.dir/log-3.dir" << std::endl;
00116         out << "delete-old-log-files yes" << std::endl;
00117         out << "vault ./test-vaulter.dir/group-3/*" << std::endl;
00118         out << "vault-selection-behavior round-robin" << std::endl;
00119         out.close();
00120 
00121         out.open("./test-vaulter.dir/file-3.conf");
00122         assert(out.is_open());
00123         out << "log-dir ./test-vaulter.dir/log.dir/log-3.dir" << std::endl;
00124         out << "delete-old-report-files yes" << std::endl;
00125         out << "vault ./test-vaulter.dir/group-3/*" << std::endl;
00126         out << "vault-selection-behavior round-robin" << std::endl;
00127         out.close();
00128 
00129         out.open("./test-vaulter.dir/file-4.conf");
00130         assert(out.is_open());
00131         out << "log-dir ./test-vaulter.dir/log.dir/log-3.dir" << std::endl;
00132         out << "delete-old-log-files yes" << std::endl;
00133         out << "delete-old-report-files yes" << std::endl;
00134         out << "vault ./test-vaulter.dir/group-3/*" << std::endl;
00135         out << "vault-selection-behavior round-robin" << std::endl;
00136         out.close();
00137 
00138         out.open("./test-vaulter.dir/file-5.conf");
00139         assert(out.is_open());
00140         out << "log-dir ./test-vaulter.dir/log.dir/log-3.dir" << std::endl;
00141         out << "vault ./test-vaulter.dir/group-3/*" << std::endl;
00142         out << "vault-selection-behavior round-robin" << std::endl;
00143         out.close();
00144 }
00145 
00146 void cleanup(void)
00147 {
00148         assert(system("rm -fr ./test-vaulter.dir") == 0);
00149 }
00150 

Generated on Thu Jun 5 11:12:58 2008 for rvm by  doxygen 1.5.1