22 #include <boost/test/minimal.hpp> 30 const uint8_t packed[32] = {0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF,
31 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0x00,
32 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF,
33 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0x00};
34 uint16_t unpacked[20];
37 unpack(32, OpenRaw::Internals::IFD::COMPRESS_NIKON_PACK);
40 or_error err = unpack.unpack_be12to16((uint8_t*)unpacked, 40, packed,
42 BOOST_CHECK(s =
size_t(
sizeof(unpacked)));
43 BOOST_CHECK(err == OR_ERROR_NONE);
44 for (
size_t i = 0; i < 2; ++i) {
45 BOOST_CHECK(unpacked[10 * i + 0] == 0x0123);
46 BOOST_CHECK(unpacked[10 * i + 1] == 0x0456);
47 BOOST_CHECK(unpacked[10 * i + 2] == 0x0789);
48 BOOST_CHECK(unpacked[10 * i + 3] == 0x00AB);
49 BOOST_CHECK(unpacked[10 * i + 4] == 0x0CDE);
50 BOOST_CHECK(unpacked[10 * i + 5] == 0x0F12);
51 BOOST_CHECK(unpacked[10 * i + 6] == 0x0345);
52 BOOST_CHECK(unpacked[10 * i + 7] == 0x0678);
53 BOOST_CHECK(unpacked[10 * i + 8] == 0x090A);
54 BOOST_CHECK(unpacked[10 * i + 9] == 0x0BCD);
61 const uint8_t packed[3] = {0x12, 0x34, 0x56};
65 OpenRaw::Internals::IFD::COMPRESS_NONE);
68 or_error err = unpack.unpack_be12to16((uint8_t*)unpacked, 4, packed,
70 BOOST_CHECK(s ==
size_t(
sizeof(unpacked)));
71 BOOST_CHECK(err == OR_ERROR_NONE);
72 BOOST_CHECK(unpacked[0] == 0x0123);
73 BOOST_CHECK(unpacked[1] == 0x0456);
77 int test_main(
int ,
char * [] )