summaryrefslogtreecommitdiffhomepage
path: root/tests/test-file.cpp
diff options
context:
space:
mode:
authorRoland Reichwein <mail@reichwein.it>2023-01-05 13:55:20 +0100
committerRoland Reichwein <mail@reichwein.it>2023-01-05 13:55:20 +0100
commit7973293c311e27ff08a1488c9759c1b5b0fda30e (patch)
treeb4c622de1af43979ba1779713398bbcb6e52be31 /tests/test-file.cpp
parent0f2ac0c4311e4429bfa4ede1d96ce467b5dceb5b (diff)
Added tests
Diffstat (limited to 'tests/test-file.cpp')
-rw-r--r--tests/test-file.cpp45
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/test-file.cpp b/tests/test-file.cpp
index 7c3b752..a175858 100644
--- a/tests/test-file.cpp
+++ b/tests/test-file.cpp
@@ -53,3 +53,48 @@ TEST_F(FileTest, getFile_proc)
EXPECT_GT(s.size(), 0);
}
+
+TEST_F(FileTest, getFile_not_found)
+{
+ EXPECT_THROW({Reichwein::File::getFile(testFilename);}, std::runtime_error);
+}
+
+TEST_F(FileTest, setFile)
+{
+ Reichwein::File::setFile(testFilename, std::string("abc"));
+
+ std::ifstream f(testFilename, std::ios::binary);
+ std::string s{" "};
+ EXPECT_EQ(f.readsome(s.data(), s.size()), static_cast<std::streamsize>(3));
+ EXPECT_EQ(s, "abc ");
+}
+
+TEST_F(FileTest, setFile_ptr)
+{
+ std::string s{"abc"};
+ Reichwein::File::setFile(testFilename, s.data(), s.size());
+
+ EXPECT_EQ(Reichwein::File::getFile(testFilename), "abc");
+}
+
+TEST_F(FileTest, setFile_vector)
+{
+ std::vector<uint8_t> v{1, 2, 3, 4};
+ Reichwein::File::setFile(testFilename, v);
+
+ EXPECT_EQ(Reichwein::File::getFile(testFilename), "\x01\x02\x03\x04");
+}
+
+TEST_F(FileTest, setFile_overwrite)
+{
+ Reichwein::File::setFile(testFilename, std::string("abc"));
+ Reichwein::File::setFile(testFilename, std::string("def"));
+
+ EXPECT_EQ(Reichwein::File::getFile(testFilename), "def");
+}
+
+TEST_F(FileTest, setFile_nonexisting_dir)
+{
+ EXPECT_THROW({Reichwein::File::setFile(testFilename/testFilename, "abc");}, std::runtime_error);
+}
+