#include #include #include #include #include TEST(crc, crc16_ccitt) { uint8_t buf[257]; uint16_t crc; memset(buf, 0, sizeof(buf)); crc = di_crc16_ccitt(&buf, 0); EXPECT_EQ(0xFFFFU, crc); printf("crc: 0x%04x\n", crc); buf[0] = 'A'; crc = di_crc16_ccitt(&buf, 1); EXPECT_EQ(0xB915, crc); printf("crc: 0x%04x\n", crc); snprintf(reinterpret_cast(buf), sizeof(buf), "123456789"); crc = di_crc16_ccitt(&buf, strlen(reinterpret_cast(buf))); EXPECT_EQ(0x29B1U, crc); printf("crc: 0x%04x\n", crc); memset(buf, 'A', 256); crc = di_crc16_ccitt(&buf, strlen(reinterpret_cast(buf))); EXPECT_EQ(0xEA0B, crc); printf("crc: 0x%04x\n", crc); }