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

Method TestArrayPacker

library/cpp/containers/comptrie/comptrie_ut.cpp:1437–1467  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1435
1436
1437void TCompactTrieTest::TestArrayPacker() {
1438 using TDataInt = std::array<int, 2>;
1439 const std::pair<TString, TDataInt> dataXxx{"xxx", {{15, 16}}};
1440 const std::pair<TString, TDataInt> dataYyy{"yyy", {{20, 30}}};
1441
1442 TCompactTrieBuilder<char, TDataInt> trieBuilderOne;
1443 trieBuilderOne.Add(dataXxx.first, dataXxx.second);
1444 trieBuilderOne.Add(dataYyy.first, dataYyy.second);
1445
1446 TBufferOutput bufferOne;
1447 trieBuilderOne.Save(bufferOne);
1448
1449 const TCompactTrie<char, TDataInt> trieOne(bufferOne.Buffer().Data(), bufferOne.Buffer().Size());
1450 UNIT_ASSERT_VALUES_EQUAL(dataXxx.second, trieOne.Get(dataXxx.first));
1451 UNIT_ASSERT_VALUES_EQUAL(dataYyy.second, trieOne.Get(dataYyy.first));
1452
1453 using TDataStroka = std::array<TString, 2>;
1454 const std::pair<TString, TDataStroka> dataZzz{"zzz", {{"hello", "there"}}};
1455 const std::pair<TString, TDataStroka> dataWww{"www", {{"half", "life"}}};
1456
1457 TCompactTrieBuilder<char, TDataStroka> trieBuilderTwo;
1458 trieBuilderTwo.Add(dataZzz.first, dataZzz.second);
1459 trieBuilderTwo.Add(dataWww.first, dataWww.second);
1460
1461 TBufferOutput bufferTwo;
1462 trieBuilderTwo.Save(bufferTwo);
1463
1464 const TCompactTrie<char, TDataStroka> trieTwo(bufferTwo.Buffer().Data(), bufferTwo.Buffer().Size());
1465 UNIT_ASSERT_VALUES_EQUAL(dataZzz.second, trieTwo.Get(dataZzz.first));
1466 UNIT_ASSERT_VALUES_EQUAL(dataWww.second, trieTwo.Get(dataWww.first));
1467}
1468
1469void TCompactTrieTest::TestBuilderFindLongestPrefix() {
1470 const size_t sizes[] = {10, 100};

Callers

nothing calls this directly

Calls 5

AddMethod · 0.45
SaveMethod · 0.45
DataMethod · 0.45
SizeMethod · 0.45
GetMethod · 0.45

Tested by

no test coverage detected