MCPcopy Create free account
hub / github.com/comaps/comaps / UNIT_TEST

Function UNIT_TEST

libs/coding/coding_tests/bit_streams_test.cpp:20–54  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

18namespace
19{
20UNIT_TEST(BitStreams_Smoke)
21{
22 uniform_int_distribution<uint32_t> randomBytesDistribution(0, 255);
23 mt19937 rng(0);
24 vector<pair<uint8_t, uint32_t>> nums;
25 for (size_t i = 0; i < 100; ++i)
26 {
27 uint32_t numBits = randomBytesDistribution(rng) % 8;
28 uint8_t num = static_cast<uint8_t>(randomBytesDistribution(rng) >> (CHAR_BIT - numBits));
29 nums.push_back(make_pair(num, numBits));
30 }
31 for (size_t i = 0; i < 100; ++i)
32 {
33 uint32_t numBits = 8;
34 uint8_t num = static_cast<uint8_t>(randomBytesDistribution(rng));
35 nums.push_back(make_pair(num, numBits));
36 }
37
38 vector<uint8_t> encodedBits;
39 {
40 MemWriter<vector<uint8_t>> encodedBitsWriter(encodedBits);
41 BitWriter<MemWriter<vector<uint8_t>>> bitSink(encodedBitsWriter);
42 for (size_t i = 0; i < nums.size(); ++i)
43 bitSink.Write(nums[i].first, nums[i].second);
44 }
45
46 MemReader encodedBitsReader(encodedBits.data(), encodedBits.size());
47 ReaderSource<MemReader> src(encodedBitsReader);
48 BitReader<ReaderSource<MemReader>> bitsSource(src);
49 for (size_t i = 0; i < nums.size(); ++i)
50 {
51 uint8_t num = bitsSource.Read(nums[i].second);
52 TEST_EQUAL(num, nums[i].first, (i));
53 }
54}
55
56UNIT_TEST(BitStreams_T1)
57{

Callers

nothing calls this directly

Calls 10

GetFullMaskFunction · 0.85
WriteAtMost32BitsMethod · 0.80
WriteAtMost64BitsMethod · 0.80
ReadAtMost32BitsMethod · 0.80
ReadAtMost64BitsMethod · 0.80
push_backMethod · 0.45
sizeMethod · 0.45
WriteMethod · 0.45
dataMethod · 0.45
ReadMethod · 0.45

Tested by

no test coverage detected