summaryrefslogtreecommitdiffstats
path: root/library/cpp/containers/comptrie/comptrie_ut.cpp
diff options
context:
space:
mode:
authordenplusplus <[email protected]>2022-02-10 16:47:34 +0300
committerDaniil Cherednik <[email protected]>2022-02-10 16:47:34 +0300
commit57c20d143e8a438cd76b9fdc3ca2e8ee3ac1f32a (patch)
treecc63639f8e502db19a82c20e2861c6d1edbf9fea /library/cpp/containers/comptrie/comptrie_ut.cpp
parent464ba3814a83db4f2d5327393b0b6eaf0c86bfd7 (diff)
Restoring authorship annotation for <[email protected]>. Commit 1 of 2.
Diffstat (limited to 'library/cpp/containers/comptrie/comptrie_ut.cpp')
-rw-r--r--library/cpp/containers/comptrie/comptrie_ut.cpp112
1 files changed, 56 insertions, 56 deletions
diff --git a/library/cpp/containers/comptrie/comptrie_ut.cpp b/library/cpp/containers/comptrie/comptrie_ut.cpp
index 74bee09b5d6..39a0ccb068c 100644
--- a/library/cpp/containers/comptrie/comptrie_ut.cpp
+++ b/library/cpp/containers/comptrie/comptrie_ut.cpp
@@ -11,7 +11,7 @@
#include <util/generic/vector.h>
#include <util/generic/ptr.h>
#include <util/generic/ylimits.h>
-
+
#include <util/folder/dirut.h>
#include <util/random/random.h>
@@ -31,8 +31,8 @@
class TCompactTrieTest: public TTestBase {
-private:
- UNIT_TEST_SUITE(TCompactTrieTest);
+private:
+ UNIT_TEST_SUITE(TCompactTrieTest);
UNIT_TEST(TestTrie8);
UNIT_TEST(TestTrie16);
UNIT_TEST(TestTrie32);
@@ -113,16 +113,16 @@ private:
UNIT_TEST(TestPatternSearcherSimple);
UNIT_TEST(TestPatternSearcherRandom);
- UNIT_TEST_SUITE_END();
-
- static const char* SampleData[];
+ UNIT_TEST_SUITE_END();
+
+ static const char* SampleData[];
template <class T>
void CreateTrie(IOutputStream& out, bool minimize, bool useFastLayout);
template <class T>
- void CheckData(const char* src, size_t len);
-
+ void CheckData(const char* src, size_t len);
+
template <class T>
void CheckUpperBound(const char* src, size_t len);
@@ -195,10 +195,10 @@ public:
void TestMinimizedTrieIterator32();
void TestPhraseSearch();
- void TestAddGet();
- void TestEmpty();
+ void TestAddGet();
+ void TestEmpty();
void TestUninitializedNonEmpty();
- void TestRandom();
+ void TestRandom();
void TestFindTails();
void TestPrefixGrouped();
void CrashTestPrefixGrouped();
@@ -261,10 +261,10 @@ public:
TFastRng<ui64>& rng
);
void TestPatternSearcherRandom();
-};
-
-UNIT_TEST_SUITE_REGISTRATION(TCompactTrieTest);
-
+};
+
+UNIT_TEST_SUITE_REGISTRATION(TCompactTrieTest);
+
const char* TCompactTrieTest::SampleData[] = {
"",
"a", "b", "c", "d",
@@ -275,7 +275,7 @@ const char* TCompactTrieTest::SampleData[] = {
"fbbaa",
"c\x85\xA4\xBF" // Just something outside ASCII.
};
-
+
template <class T>
typename TCompactTrie<T>::TKey MakeWideKey(const char* str, size_t len) {
typename TCompactTrie<T>::TKey buffer;
@@ -299,12 +299,12 @@ typename TCompactTrie<T>::TKey MakeWideKey(const TStringBuf& buf) {
template <class T>
void TCompactTrieTest::CreateTrie(IOutputStream& out, bool minimize, bool useFastLayout) {
TCompactTrieBuilder<T> builder;
-
+
for (auto& i : SampleData) {
size_t len = strlen(i);
builder.Add(MakeWideKey<T>(i, len), len * 2);
- }
+ }
TBufferOutput tmp2;
IOutputStream& currentOutput = useFastLayout ? tmp2 : out;
@@ -318,8 +318,8 @@ void TCompactTrieTest::CreateTrie(IOutputStream& out, bool minimize, bool useFas
if (useFastLayout) {
CompactTrieMakeFastLayout<TCompactTriePacker<T>>(out, tmp2.Buffer().Data(), tmp2.Buffer().Size(), false);
}
-}
-
+}
+
// Iterates over all strings of length <= 4 made of letters a-g.
static bool LexicographicStep(TString& s) {
if (s.length() < 4) {
@@ -360,14 +360,14 @@ void TCompactTrieTest::CheckUpperBound(const char* data, size_t datalen) {
template <class T>
void TCompactTrieTest::CheckData(const char* data, size_t datalen) {
TCompactTrie<T> trie(data, datalen);
-
+
UNIT_ASSERT_VALUES_EQUAL(Y_ARRAY_SIZE(SampleData), trie.Size());
for (auto& i : SampleData) {
size_t len = strlen(i);
ui64 value = 0;
size_t prefixLen = 0;
-
+
typename TCompactTrie<T>::TKey key = MakeWideKey<T>(i, len);
UNIT_ASSERT(trie.Find(key, &value));
UNIT_ASSERT_EQUAL(len * 2, value);
@@ -385,9 +385,9 @@ void TCompactTrieTest::CheckData(const char* data, size_t datalen) {
UNIT_ASSERT(trie.FindLongestPrefix(key, &prefixLen, &value));
UNIT_ASSERT_EQUAL(1, prefixLen);
UNIT_ASSERT_EQUAL(2, value);
-
+
badkey = i;
- badkey += "x";
+ badkey += "x";
key = MakeWideKey<T>(badkey);
UNIT_ASSERT(!trie.Find(key));
value = 1234;
@@ -398,7 +398,7 @@ void TCompactTrieTest::CheckData(const char* data, size_t datalen) {
UNIT_ASSERT_EQUAL(len * 2, value);
UNIT_ASSERT(trie.FindLongestPrefix(key, &prefixLen, nullptr));
UNIT_ASSERT_EQUAL(len, prefixLen);
- }
+ }
TString testkey("fbbaa");
typename TCompactTrie<T>::TKey key = MakeWideKey<T>(testkey);
@@ -417,8 +417,8 @@ void TCompactTrieTest::CheckData(const char* data, size_t datalen) {
value = 12345678;
UNIT_ASSERT(!trie.Find(key, &value));
UNIT_ASSERT_EQUAL(12345678, value); //Failed Find() should not change value
-}
-
+}
+
template <class T>
void TCompactTrieTest::CheckIterator(const char* data, size_t datalen) {
typedef typename TCompactTrie<T>::TKey TKey;
@@ -487,19 +487,19 @@ void TCompactTrieTest::CheckIterator(const char* data, size_t datalen) {
template <class T>
void TCompactTrieTest::TestTrie(bool minimize, bool useFastLayout) {
- TBufferOutput bufout;
+ TBufferOutput bufout;
CreateTrie<T>(bufout, minimize, useFastLayout);
CheckData<T>(bufout.Buffer().Data(), bufout.Buffer().Size());
CheckUpperBound<T>(bufout.Buffer().Data(), bufout.Buffer().Size());
-}
-
+}
+
template <class T>
void TCompactTrieTest::TestTrieIterator(bool minimize) {
- TBufferOutput bufout;
+ TBufferOutput bufout;
CreateTrie<T>(bufout, minimize, false);
CheckIterator<T>(bufout.Buffer().Data(), bufout.Buffer().Size());
-}
-
+}
+
void TCompactTrieTest::TestTrie8() {
TestTrie<char>(false, false);
}
@@ -586,30 +586,30 @@ void TCompactTrieTest::TestPhraseSearch() {
UNIT_ASSERT(matches.size() == 0);
}
-void TCompactTrieTest::TestAddGet() {
+void TCompactTrieTest::TestAddGet() {
TCompactTrieBuilder<char> builder;
builder.Add("abcd", 4, 1);
builder.Add("acde", 4, 2);
- ui64 dummy;
+ ui64 dummy;
UNIT_ASSERT(builder.Find("abcd", 4, &dummy));
- UNIT_ASSERT(1 == dummy);
+ UNIT_ASSERT(1 == dummy);
UNIT_ASSERT(builder.Find("acde", 4, &dummy));
- UNIT_ASSERT(2 == dummy);
+ UNIT_ASSERT(2 == dummy);
UNIT_ASSERT(!builder.Find("fgdgfacde", 9, &dummy));
UNIT_ASSERT(!builder.Find("ab", 2, &dummy));
-}
-
-void TCompactTrieTest::TestEmpty() {
+}
+
+void TCompactTrieTest::TestEmpty() {
TCompactTrieBuilder<char> builder;
ui64 dummy = 12345;
size_t prefixLen;
UNIT_ASSERT(!builder.Find("abc", 3, &dummy));
- TBufferOutput bufout;
- builder.Save(bufout);
-
+ TBufferOutput bufout;
+ builder.Save(bufout);
+
TCompactTrie<char> trie(bufout.Buffer().Data(), bufout.Buffer().Size());
UNIT_ASSERT(!trie.Find("abc", 3, &dummy));
- UNIT_ASSERT(!trie.Find("", 0, &dummy));
+ UNIT_ASSERT(!trie.Find("", 0, &dummy));
UNIT_ASSERT(!trie.FindLongestPrefix("abc", 3, &prefixLen, &dummy));
UNIT_ASSERT(!trie.FindLongestPrefix("", 0, &prefixLen, &dummy));
UNIT_ASSERT_EQUAL(12345, dummy);
@@ -624,8 +624,8 @@ void TCompactTrieTest::TestEmpty() {
trieNull.FindPhrases(" ", 1, matches); // just to be sure it doesn't crash
UNIT_ASSERT(trieNull.Begin() == trieNull.End());
-}
-
+}
+
void TCompactTrieTest::TestUninitializedNonEmpty() {
TBufferOutput bufout;
CreateTrie<char>(bufout, false, false);
@@ -653,11 +653,11 @@ static char RandChar() {
static TString RandStr(const size_t max) {
size_t len = RandomNumber<size_t>() % max;
TString key;
- for (size_t j = 0; j < len; ++j)
+ for (size_t j = 0; j < len; ++j)
key += RandChar();
- return key;
-}
-
+ return key;
+}
+
template <class T, bool minimize>
void TCompactTrieTest::TestRandom(const size_t n, const size_t maxKeySize) {
const TStringBuf EMPTY_KEY = TStringBuf("", 1);
@@ -676,16 +676,16 @@ void TCompactTrieTest::TestRandom(const size_t n, const size_t maxKeySize) {
UNIT_ASSERT_C(builder.Find(key.data(), key.size(), &dummy), "key = " << HexEncode(TString(key)));
UNIT_ASSERT(dummy == val);
}
- }
+ }
- TBufferStream stream;
- size_t len = builder.Save(stream);
+ TBufferStream stream;
+ size_t len = builder.Save(stream);
TCompactTrie<char, typename T::TData, T> trie(stream.Buffer().Data(), len);
-
+
TBufferStream buftmp;
if (minimize) {
CompactTrieMinimize<T>(buftmp, stream.Buffer().Data(), len, false);
- }
+ }
TCompactTrie<char, typename T::TData, T> trieMin(buftmp.Buffer().Data(), buftmp.Buffer().Size());
TCompactTrieBuilder<char, typename T::TData, T> prefixGroupedBuilder(CTBF_PREFIX_GROUPED);
@@ -718,7 +718,7 @@ void TCompactTrieTest::TestRandom(const size_t n, const size_t maxKeySize) {
UNIT_ASSERT_VALUES_EQUAL(stream.Buffer().Size(), prefixGroupedBuffer.Buffer().Size());
UNIT_ASSERT(0 == memcmp(stream.Buffer().Data(), prefixGroupedBuffer.Buffer().Data(), stream.Buffer().Size()));
-}
+}
void TCompactTrieTest::TestRandom() {
TestRandom<TIntPacker<ui64>, true>(1000, 1000);