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);
39 size_t s = unpack.unpack_be12to16((uint8_t*)unpacked, packed,
41 BOOST_CHECK(s =
size_t(
sizeof(unpacked)));
42 for (
size_t i = 0; i < 2; ++i) {
43 BOOST_CHECK(unpacked[10 * i + 0] == 0x0123);
44 BOOST_CHECK(unpacked[10 * i + 1] == 0x0456);
45 BOOST_CHECK(unpacked[10 * i + 2] == 0x0789);
46 BOOST_CHECK(unpacked[10 * i + 3] == 0x00AB);
47 BOOST_CHECK(unpacked[10 * i + 4] == 0x0CDE);
48 BOOST_CHECK(unpacked[10 * i + 5] == 0x0F12);
49 BOOST_CHECK(unpacked[10 * i + 6] == 0x0345);
50 BOOST_CHECK(unpacked[10 * i + 7] == 0x0678);
51 BOOST_CHECK(unpacked[10 * i + 8] == 0x090A);
52 BOOST_CHECK(unpacked[10 * i + 9] == 0x0BCD);
59 const uint8_t packed[3] = {0x12, 0x34, 0x56};
63 OpenRaw::Internals::IFD::COMPRESS_NONE);
65 size_t s = unpack.unpack_be12to16((uint8_t*)unpacked, packed,
67 BOOST_CHECK(s ==
size_t(
sizeof(unpacked)));
68 BOOST_CHECK(unpacked[0] == 0x0123);
69 BOOST_CHECK(unpacked[1] == 0x0456);
73 int test_main(
int ,
char * [] )