MCPcopy Create free account
hub / github.com/catboost/catboost / TestPacker

Function TestPacker

library/cpp/packers/ut/region_packer_ut.cpp:5–24  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3
4template <typename TValue>
5void TestPacker() {
6 TValue values[] = {1, 2, 3, 42};
7 TString buffer;
8
9 TRegionPacker<TValue> p;
10
11 using TValues = TArrayRef<TValue>;
12 TValues valueRegion = TValues(values, Y_ARRAY_SIZE(values));
13 size_t sz = p.MeasureLeaf(valueRegion);
14 UNIT_ASSERT_VALUES_EQUAL(sz, 1 + sizeof(values));
15
16 buffer.resize(sz);
17 p.PackLeaf(buffer.begin(), valueRegion, sz);
18 UNIT_ASSERT_VALUES_EQUAL(buffer[0], 4);
19
20 p.UnpackLeaf(buffer.data(), valueRegion);
21 UNIT_ASSERT_EQUAL(valueRegion.data(), (const TValue*)(buffer.begin() + 1));
22 UNIT_ASSERT_EQUAL(valueRegion.size(), Y_ARRAY_SIZE(values));
23 UNIT_ASSERT_EQUAL(0, memcmp(values, valueRegion.data(), sizeof(values)));
24}
25
26Y_UNIT_TEST_SUITE(RegionPacker) {
27 Y_UNIT_TEST(Test0) {

Callers

nothing calls this directly

Calls 9

TValuesClass · 0.85
memcmpFunction · 0.85
MeasureLeafMethod · 0.45
resizeMethod · 0.45
PackLeafMethod · 0.45
beginMethod · 0.45
UnpackLeafMethod · 0.45
dataMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected