File::rename

- Added a rename method to permit safe file writes.
This commit is contained in:
Paul Beckingham
2012-10-03 22:13:47 -04:00
parent d2f267a7da
commit 9fe9f96f8f
3 changed files with 36 additions and 1 deletions

View File

@@ -34,7 +34,7 @@ Context context;
int main (int argc, char** argv)
{
UnitTest t (6);
UnitTest t (13);
File::write ("/tmp/file.t.txt", "This is a test\n");
File f6 ("/tmp/file.t.txt");
@@ -48,6 +48,23 @@ int main (int argc, char** argv)
t.ok (File::create ("/tmp/file.t.create"), "File::create /tmp/file.t.create good");
t.ok (File::remove ("/tmp/file.t.create"), "File::remove /tmp/file.t.create good");
// basename (std::string) const;
t.is (f6.name (), "file.t.txt", "File::basename /tmp/file.t.txt --> file.t.txt");
// dirname (std::string) const;
t.is (f6.parent (), "/tmp", "File::dirname /tmp/file.t.txt --> /tmp");
// bool rename (const std::string&);
File f7 ("/tmp/file.t.2.txt");
f7.append ("something\n");
f7.close ();
t.ok (f7.rename ("/tmp/file.t.3.txt"), "File::rename did not fail");
t.is (f7._data, "/tmp/file.t.3.txt", "File::rename stored new name");
t.ok (f7.exists (), "File::rename new file exists");
t.ok (f7.remove (), "File::remove /tmp/file.t.3.txt good");
t.notok (f7.exists (), "File::remove new file no longer exists");
return 0;
}