27 assert(files.find(
".") != files.end());
28 assert(files.find(
"..") != files.end());
29 assert(files.find(
"etc") != files.end());
30 assert(files.find(
"bin") != files.end());
31 assert(files.find(
"tmp") != files.end());
38 assert(files.find(
".") != files.end());
39 assert(files.find(
"..") != files.end());
40 assert(files.find(
"etc") != files.end());
41 assert(files.find(
"bin") != files.end());
42 assert(files.find(
"tmp") != files.end());
87 Directory dir1(
"/antaniblindalasupercazzola123456");
121 system(
"rm -rf test-mkpath");
122 mkpath(
"test-mkpath/test-mkpath");
125 system(
"rm -rf test-mkpath");
132 system(
"rm -rf test-mkpath");
137 system(
"rm -rf test-mkpath");
144 system(
"rm -rf test-mkpath");
153 system(
"rm -rf test-mkpath; touch test-mkpath");
158 assert(
string(e.
what()).find(
"exists but it is not a directory") != string::npos);
164 system(
"rm -rf test-mkpath; ln -s ./tmp/tmp/tmp/DOESNOTEXISTS test-mkpath");
169 assert(
string(e.
what()).find(
"looks like a dangling symlink") != string::npos);
176 system(
"rm -f does-not-exist");
178 system(
"touch does-exist");
185 system(
"rm -rf testdir");
187 system(
"touch testdir");
189 system(
"rm testdir; mkdir testdir");
198 string test1 =
readFile(
"testfile");
205 system(
"rm -f testfile");
Exception thrown when some consistency check fails.
Definition: exception.h:255
virtual const char * what() const
Definition: exception.h:213
Base class for system exceptions.
Definition: exception.h:397
Nicely wrap access to directories.
Definition: fs.h:154
bool exists() const
Check if the directory exists.
const_iterator begin() const
Begin iterator.
const_iterator end() const
End iterator.
void mkdirIfMissing(const std::string &dir, mode_t mode=0777)
Create the given directory, if it does not already exists.
bool deleteIfExists(const std::string &file)
Delete a file if it exists.
Definition: fs.cpp:244
void mkpath(const std::string &dir)
Create all the component of the given directory, including the directory itself.
bool access(const std::string &s, int m)
access() a filename
void writeFile(const std::string &file, const std::string &data)
Write data to file, replacing existing contents if it already exists.
Definition: fs.cpp:198
void writeFileAtomically(const std::string &file, const std::string &data)
Write data to file, replacing existing contents if it already exists.
Definition: fs.cpp:206
time_t timestamp(const std::string &file)
File mtime.
Definition: fs.cpp:274
std::string readFile(const std::string &file)
Read whole file into memory. Throws exceptions on failure.
Definition: fs.cpp:164
void unlink(const std::string &fname)
Delete the file.
Definition: fs.cpp:262
bool isdir(const std::string &pathname)
Returns true if the given pathname is a directory, else false.
void mkFilePath(const std::string &file)
Ensure that the path to the given file exists, creating it if it does not.
Definition: buffer.cpp:28
Test writeFileAtomically()
Definition: fs.test.h:194
Test _isdir()
Definition: fs.test.h:183
Test invalidDirectories()
Definition: fs.test.h:85
Test directoryIsdir()
Definition: fs.test.h:46
Test _mkPath()
Definition: fs.test.h:105
Test _mkdirIfMissing()
Definition: fs.test.h:141
Test directoryIterate()
Definition: fs.test.h:18
Test _mkPath2()
Definition: fs.test.h:118
Test timestamp()
Definition: fs.test.h:202
Test _mkFilePath()
Definition: fs.test.h:129
Test _deleteIfExists()
Definition: fs.test.h:174
void Test
Definition: test.h:178
#define assert_eq(x, y)
Definition: test.h:33
#define assert(x)
Definition: test.h:30