5#include "fxbarcode/oned/BC_OnedUPCAWriter.h"
9#include "core/fxcrt/data_vector.h"
10#include "testing/gtest/include/gtest/gtest.h"
14TEST(OnedUPCAWriterTest, Encode) {
15 CBC_OnedUPCAWriter writer;
20 EXPECT_TRUE(writer.Encode(
"").empty());
21 EXPECT_TRUE(writer.Encode(
"123").empty());
22 EXPECT_TRUE(writer.Encode(
"12345678901").empty());
23 EXPECT_TRUE(writer.Encode(
"1234567890123").empty());
25 static const char kExpected1[] =
41 DataVector<uint8_t> encoded = writer.Encode(
"123456789012");
42 ASSERT_EQ(strlen(kExpected1), encoded.size());
43 for (size_t i = 0; i < strlen(kExpected1); i++)
44 EXPECT_EQ(kExpected1[i] !=
' ', !!encoded[i]) << i;
46 encoded = writer.Encode(
"777666555440");
47 static const char kExpected2[] =
63 ASSERT_EQ(strlen(kExpected2), encoded.size());
64 for (size_t i = 0; i < strlen(kExpected2); i++)
65 EXPECT_EQ(kExpected2[i] !=
' ', !!encoded[i]) << i;
68TEST(OnedUPCAWriterTest, Checksum) {
69 CBC_OnedUPCAWriter writer;
void InitEANWriter() override
int32_t CalcChecksum(const ByteString &contents) override