fix(file_handler): avoid writing extra newline character (#2335)
This commit is contained in:
+1
-10
@@ -31,16 +31,7 @@ namespace file_handler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
std::ifstream in(path);
|
std::ifstream in(path);
|
||||||
|
return std::string { (std::istreambuf_iterator<char>(in)), std::istreambuf_iterator<char>() };
|
||||||
std::string input;
|
|
||||||
std::string base64_cert;
|
|
||||||
|
|
||||||
while (!in.eof()) {
|
|
||||||
std::getline(in, input);
|
|
||||||
base64_cert += input + '\n';
|
|
||||||
}
|
|
||||||
|
|
||||||
return base64_cert;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -6,14 +6,54 @@
|
|||||||
|
|
||||||
#include <tests/conftest.cpp>
|
#include <tests/conftest.cpp>
|
||||||
|
|
||||||
TEST(FileHandlerTests, WriteFileTest) {
|
class FileHandlerTests: public virtual BaseTest, public ::testing::WithParamInterface<std::tuple<int, std::string>> {
|
||||||
EXPECT_EQ(file_handler::write_file("write_file_test.txt", "test"), 0);
|
protected:
|
||||||
|
void
|
||||||
|
SetUp() override {
|
||||||
|
BaseTest::SetUp();
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
TearDown() override {
|
||||||
|
BaseTest::TearDown();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
INSTANTIATE_TEST_SUITE_P(
|
||||||
|
TestFiles,
|
||||||
|
FileHandlerTests,
|
||||||
|
::testing::Values(
|
||||||
|
std::make_tuple(0, ""), // empty file
|
||||||
|
std::make_tuple(1, "a"), // single character
|
||||||
|
std::make_tuple(2, "Mr. Blue Sky - Electric Light Orchestra"), // single line
|
||||||
|
std::make_tuple(3, R"(
|
||||||
|
Morning! Today's forecast calls for blue skies
|
||||||
|
The sun is shining in the sky
|
||||||
|
There ain't a cloud in sight
|
||||||
|
It's stopped raining
|
||||||
|
Everybody's in the play
|
||||||
|
And don't you know, it's a beautiful new day
|
||||||
|
Hey, hey, hey!
|
||||||
|
Running down the avenue
|
||||||
|
See how the sun shines brightly in the city
|
||||||
|
All the streets where once was pity
|
||||||
|
Mr. Blue Sky is living here today!
|
||||||
|
Hey, hey, hey!
|
||||||
|
)") // multi-line
|
||||||
|
));
|
||||||
|
|
||||||
|
TEST_P(FileHandlerTests, WriteFileTest) {
|
||||||
|
auto [fileNum, content] = GetParam();
|
||||||
|
std::string fileName = "write_file_test_" + std::to_string(fileNum) + ".txt";
|
||||||
|
EXPECT_EQ(file_handler::write_file(fileName.c_str(), content), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(FileHandlerTests, ReadFileTest) {
|
TEST_P(FileHandlerTests, ReadFileTest) {
|
||||||
// read file from WriteFileTest
|
auto [fileNum, content] = GetParam();
|
||||||
EXPECT_EQ(file_handler::read_file("write_file_test.txt"), "test\n"); // sunshine adds a newline
|
std::string fileName = "write_file_test_" + std::to_string(fileNum) + ".txt";
|
||||||
|
EXPECT_EQ(file_handler::read_file(fileName.c_str()), content);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(FileHandlerTests, ReadMissingFileTest) {
|
||||||
// read missing file
|
// read missing file
|
||||||
EXPECT_EQ(file_handler::read_file("non-existing-file.txt"), "");
|
EXPECT_EQ(file_handler::read_file("non-existing-file.txt"), "");
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user