22 const uint8_t src_buf[] = {1, 2, 3, 4, 255, 255, 255, 255};
23 DataVector<uint8_t> dest_buf = BasicModule::A85Encode(src_buf);
26 const uint8_t expected_out[] = {33, 60, 78, 63, 43, 115,
27 56, 87, 45, 33, 126, 62};
28 ASSERT_EQ(std::size(expected_out), dest_buf.size());
31 for (uint32_t i = 0; i < dest_buf.size(); i++)
32 EXPECT_EQ(expected_out[i], dest_buf[i]) <<
" at " << i;
36TEST(fxcodec, A85LeftoverBytes) {
39 const uint8_t src_buf_1leftover[] = {1, 2, 3, 4, 255};
40 DataVector<uint8_t> dest_buf = BasicModule::A85Encode(src_buf_1leftover);
43 uint8_t expected_out_1leftover[] = {33, 60, 78, 63, 43, 114, 114, 126, 62};
44 ASSERT_EQ(std::size(expected_out_1leftover), dest_buf.size());
47 for (uint32_t i = 0; i < dest_buf.size(); i++)
48 EXPECT_EQ(expected_out_1leftover[i], dest_buf[i]) <<
" at " << i;
53 const uint8_t src_buf_2leftover[] = {1, 2, 3, 4, 255, 254};
54 DataVector<uint8_t> dest_buf = BasicModule::A85Encode(src_buf_2leftover);
56 const uint8_t expected_out_2leftover[] = {33, 60, 78, 63, 43,
57 115, 56, 68, 126, 62};
58 ASSERT_EQ(std::size(expected_out_2leftover), dest_buf.size());
61 for (uint32_t i = 0; i < dest_buf.size(); i++)
62 EXPECT_EQ(expected_out_2leftover[i], dest_buf[i]) <<
" at " << i;
67 const uint8_t src_buf_3leftover[] = {1, 2, 3, 4, 255, 254, 253};
68 DataVector<uint8_t> dest_buf = BasicModule::A85Encode(src_buf_3leftover);
70 const uint8_t expected_out_3leftover[] = {33, 60, 78, 63, 43, 115,
71 56, 77, 114, 126, 62};
72 ASSERT_EQ(std::size(expected_out_3leftover), dest_buf.size());
75 for (uint32_t i = 0; i < dest_buf.size(); i++)
76 EXPECT_EQ(expected_out_3leftover[i], dest_buf[i]) <<
" at " << i;
84 const uint8_t src_buf[] = {1, 2, 3, 4, 0, 0, 0, 0};
85 DataVector<uint8_t> dest_buf = BasicModule::A85Encode(src_buf);
88 const uint8_t expected_out[] = {33, 60, 78, 63, 43, 122, 126, 62};
89 ASSERT_EQ(std::size(expected_out), dest_buf.size());
92 for (uint32_t i = 0; i < dest_buf.size(); i++)
93 EXPECT_EQ(expected_out[i], dest_buf[i]) <<
" at " << i;
98 const uint8_t src_buf_2[] = {0, 0, 0, 0, 1, 2, 3, 4};
99 DataVector<uint8_t> dest_buf = BasicModule::A85Encode(src_buf_2);
102 const uint8_t expected_out_2[] = {122, 33, 60, 78, 63, 43, 126, 62};
103 ASSERT_EQ(std::size(expected_out_2), dest_buf.size());
106 for (uint32_t i = 0; i < dest_buf.size(); i++)
107 EXPECT_EQ(expected_out_2[i], dest_buf[i]) <<
" at " << i;
112 const uint8_t src_buf_3[] = {1, 2, 3, 4, 0, 0};
113 DataVector<uint8_t> dest_buf = BasicModule::A85Encode(src_buf_3);
116 const uint8_t expected_out_leftover[] = {33, 60, 78, 63, 43,
117 33, 33, 33, 126, 62};
118 ASSERT_EQ(std::size(expected_out_leftover), dest_buf.size());
121 for (uint32_t i = 0; i < dest_buf.size(); i++)
122 EXPECT_EQ(expected_out_leftover[i], dest_buf[i]) <<
" at " << i;
129 uint8_t src_buf[131] = {0};
131 for (
int k = 0; k < 116; k += 4) {
138 for (
int k = 120; k < 128; k++) {
146 DataVector<uint8_t> dest_buf = BasicModule::A85Encode(src_buf);
151 ASSERT_EQ(166u, dest_buf.size());
154 EXPECT_EQ(13, dest_buf[75]);
155 EXPECT_EQ(10, dest_buf[76]);
156 EXPECT_EQ(13, dest_buf[153]);
157 EXPECT_EQ(10, dest_buf[154]);