24 std::locale::global(std::locale(
""));
32 MathData() : num_squares_(0), num_triangles_(0) {}
35 for (
int s = 0; s < 42; ++s) {
36 squares_.push_back(s * s);
38 num_squares_ = squares_.size();
39 for (
int t = 0; t < 52; ++t) {
40 triangles_.push_back(t * (t + 1) / 2);
42 num_triangles_ = triangles_.size();
46 EXPECT_EQ(num_squares_, other.num_squares_);
47 for (
unsigned s = 0; s < squares_.size(); ++s) {
48 EXPECT_EQ(squares_[s], other.squares_[s]);
50 EXPECT_EQ(num_triangles_, other.num_triangles_);
51 for (
unsigned s = 0; s < triangles_.size(); ++s) {
52 EXPECT_EQ(triangles_[s], other.triangles_[s]);
56 if (fp->
FWrite(&num_squares_,
sizeof(num_squares_), 1) != 1) {
62 if (fp->
FWrite(&num_triangles_,
sizeof(num_triangles_), 1) != 1) {
71 if (fp->
FReadEndian(&num_squares_,
sizeof(num_squares_), 1) != 1) {
77 if (fp->
FReadEndian(&num_triangles_,
sizeof(num_triangles_), 1) != 1) {
86 ReverseN(&num_squares_,
sizeof(num_squares_));
87 if (fp->
FWrite(&num_squares_,
sizeof(num_squares_), 1) != 1) {
92 if (fp->
FWrite(&num_squares_,
sizeof(num_squares_), 1) != 1) {
95 for (
int &square : squares_) {
101 ReverseN(&num_triangles_,
sizeof(num_triangles_));
102 if (fp->
FWrite(&num_triangles_,
sizeof(num_triangles_), 1) != 1) {
105 if (fp->
FWrite(&num_triangles_,
sizeof(num_triangles_), 1) != 1) {
108 for (
auto &triangle : triangles_) {
109 ReverseN(&triangle,
sizeof(triangles_[0]));
114 if (fp->
FReadEndian(&num_squares_,
sizeof(num_squares_), 1) != 1) {
123 if (fp->
FReadEndian(&last_element,
sizeof(last_element), 1) != 1) {
126 squares_.erase(squares_.begin());
127 squares_.push_back(last_element);
128 if (fp->
FReadEndian(&num_triangles_,
sizeof(num_triangles_), 1) != 1) {
134 if (fp->
FReadEndian(&last_element,
sizeof(last_element), 1) != 1) {
137 triangles_.erase(triangles_.begin());
138 triangles_.push_back(last_element);
143 std::vector<int> squares_;
145 std::vector<int> triangles_;
154 std::vector<char> data;
173 std::string line_str =
"This is a textline with a newline\n";
175 std::vector<char> data;
187 const int kBufsize = 1024;
188 char buffer[kBufsize + 1];
200 std::vector<char> data;
#define EXPECT_EQ(val1, val2)
#define EXPECT_TRUE(condition)
#define EXPECT_STREQ(s1, s2)
#define EXPECT_FALSE(condition)
void ReverseN(void *ptr, int num_bytes)
bool Serialize(FILE *fp, const std::vector< T > &data)
TEST_F(EuroText, FastLatinOCR)
void OpenWrite(std::vector< char > *data)
size_t FWrite(const void *buffer, size_t size, size_t count)
size_t FReadEndian(void *buffer, size_t size, size_t count)
bool DeSerialize(std::string &data)
bool Serialize(const std::string &data)
void set_swap(bool value)
char * FGets(char *buffer, int buffer_size)
bool Open(const char *filename, FileReader reader)
bool DeSerializeBigEndian(TFile *fp)
bool Serialize(TFile *fp)
bool SerializeBigEndian(TFile *fp)
bool DeSerialize(TFile *fp)
void ExpectEq(const MathData &other)