5#include "fxbarcode/oned/BC_OnedEAN8Writer.h"
9#include "core/fxcrt/compiler_specific.h"
10#include "core/fxcrt/data_vector.h"
11#include "testing/gtest/include/gtest/gtest.h"
15TEST(OnedEAN8WriterTest, Encode) {
16 CBC_OnedEAN8Writer writer;
21 EXPECT_TRUE(writer.Encode(
"").empty());
22 EXPECT_TRUE(writer.Encode(
"123").empty());
23 EXPECT_TRUE(writer.Encode(
"1234567").empty());
24 EXPECT_TRUE(writer.Encode(
"123456789").empty());
26 static const char kExpected1[] =
38 DataVector<uint8_t> encoded = writer.Encode(
"12345670");
39 ASSERT_EQ(strlen(kExpected1), encoded.size());
40 for (size_t i = 0; i < strlen(kExpected1); i++) {
41 UNSAFE_TODO(EXPECT_EQ(kExpected1[i] !=
' ', !!encoded[i])) << i;
43 static const char kExpected2[] =
55 encoded = writer.Encode(
"99441104");
56 ASSERT_EQ(strlen(kExpected2), encoded.size());
57 for (size_t i = 0; i < strlen(kExpected2); i++)
58 UNSAFE_TODO(EXPECT_EQ(kExpected2[i] !=
' ', !!encoded[i])) << i;
61TEST(OnedEAN8WriterTest, Checksum) {
62 CBC_OnedEAN8Writer writer;
virtual void InitEANWriter()
int32_t CalcChecksum(const ByteString &contents) override