// mkdir_t.cxx #include "dataset_util/mkdir.h" #include "dataset_util/FileStatus.h" #include #include using std::string; using std::cout; using std::endl; void msg(const char* msg) { cout << "----- "; cout << msg; cout << " -----" << endl; } int mkdir_t() { { const char* dir = "dir1"; system("rm -rf dir1"); FileStatus dstat(dir); assert( ! dstat.exists() ); int stat = mkdir(dir); cout << "return status: " << stat << endl; assert( stat == 0 ); dstat.update(); assert( dstat.exists() ); assert( dstat.is_readable() ); assert( dstat.is_writeable() ); assert( dstat.is_executable() ); system("ls -ls"); assert( mkdir(dir) != 0 ); } { string dir = "dir2/dir21"; system("rm -rf dir2"); FileStatus dstat(dir); assert( ! dstat.exists() ); assert( mkdir(dir) != 0 ); int stat = mkfulldir(dir); cout << "return status: " << stat << endl; assert( stat == 0 ); dstat.update(); assert( dstat.exists() ); assert( dstat.is_readable() ); assert( dstat.is_writeable() ); assert( dstat.is_executable() ); system("ls -ls"); assert( mkdir(dir) != 0 ); assert( mkfulldir(dir) != 0 ); } msg("All tests passed."); return 0; } #ifdef CTEST_MAIN int main() { return mkdir_t(); } #endif