123456789101112131415161718192021222324252627282930313233343536 |
- #include <stdarg.h>
- #include <stddef.h>
- #include <setjmp.h>
- #include <cmocka.h>
- #include <util/bitstream.h>
- static void bitstream_test(void **state)
- {
- UNUSED_PARAMETER(state);
- struct bitstream_reader reader;
- uint8_t data[6] = {0x34, 0xff, 0xe1, 0x23, 0x91, 0x45};
- // set len to one less than the array to show that we stop reading at that len
- bitstream_reader_init(&reader, data, 5);
- assert_int_equal(bitstream_reader_read_bits(&reader, 8), 0x34);
- assert_int_equal(bitstream_reader_read_bits(&reader, 1), 1);
- assert_int_equal(bitstream_reader_read_bits(&reader, 3), 7);
- assert_int_equal(bitstream_reader_read_bits(&reader, 4), 0xF);
- assert_int_equal(bitstream_reader_r8(&reader), 0xe1);
- assert_int_equal(bitstream_reader_r16(&reader), 0x2391);
- // test reached end
- assert_int_equal(bitstream_reader_r8(&reader), 0);
- }
- int main()
- {
- const struct CMUnitTest tests[] = {
- cmocka_unit_test(bitstream_test),
- };
- return cmocka_run_group_tests(tests, NULL, NULL);
- }
|