blob: e972d3f41b2611884a1e0f2e83f6699fa7e166a2 [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::WriteBinaryFile(file_name, test_data),
absl::OkStatus());
auto val = proto_reader::ReadBinaryFile(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::ReadBinaryFile(file_name);
EXPECT_FALSE(val.ok());
}
TEST(ProtoReaderTest, ReadBinaryFailRead) {
std::string file_name = "";
auto val = proto_reader::ReadBinaryFile(file_name);
EXPECT_FALSE(val.ok());
}
TEST(ProtoReaderTest, WriteBinaryFailOpen) {
std::string file_name = "";
std::string test_data = "0123456789ABCDEF";
EXPECT_FALSE(proto_reader::WriteBinaryFile(file_name, test_data).ok());
}
} // namespace