blob: d582bb51deeb4771ff67b380d0f2f8cac39fd05e [file] [log] [blame]
#include "bmc/proto_reader.h"
#include <cstdio>
#include <string>
#include "gtest/gtest.h"
#include "absl/status/status.h"
namespace {
TEST(ProtoReaderTest, ReadWriteBinary) {
std::string file_name = std::tmpnam(nullptr);
std::string test_data = "0123456789ABCDEF";
EXPECT_EQ(proto_reader::WriteFileToString(file_name, test_data),
absl::OkStatus());
auto val = proto_reader::ReadFileToString(file_name);
EXPECT_EQ(val.value(), test_data);
}
TEST(ProtoReaderTest, ReadBinaryFailOpen) {
std::string file_name = std::tmpnam(nullptr);
std::string test_data = "0123456789ABCDEF";
auto val = proto_reader::ReadFileToString(file_name);
EXPECT_FALSE(val.ok());
}
TEST(ProtoReaderTest, ReadBinaryFailRead) {
std::string file_name = "";
auto val = proto_reader::ReadFileToString(file_name);
EXPECT_FALSE(val.ok());
}
TEST(ProtoReaderTest, WriteBinaryFailOpen) {
std::string file_name = "";
std::string test_data = "0123456789ABCDEF";
EXPECT_FALSE(proto_reader::WriteFileToString(file_name, test_data).ok());
}
} // namespace