diff options
author | Tor Egge <Tor.Egge@oath.com> | 2018-04-13 10:08:39 +0000 |
---|---|---|
committer | Tor Egge <Tor.Egge@oath.com> | 2018-04-13 10:26:28 +0000 |
commit | 22f3b1f8d2cda119f31522cc3b237d22c07d59bb (patch) | |
tree | 3a1257ce4656d0b784b57e343083ab5595afd37e /searchlib/src/tests/diskindex/pagedict4 | |
parent | 35e36bf4319a16834ebfc45707cf0e1daee62dec (diff) |
Simplify pagedict4 unit tests by moving ownership of encode and decode
contexts to shared test classes.
Diffstat (limited to 'searchlib/src/tests/diskindex/pagedict4')
-rw-r--r-- | searchlib/src/tests/diskindex/pagedict4/pagedict4_hugeword_cornercase_test.cpp | 25 | ||||
-rw-r--r-- | searchlib/src/tests/diskindex/pagedict4/pagedict4test.cpp | 43 |
2 files changed, 9 insertions, 59 deletions
diff --git a/searchlib/src/tests/diskindex/pagedict4/pagedict4_hugeword_cornercase_test.cpp b/searchlib/src/tests/diskindex/pagedict4/pagedict4_hugeword_cornercase_test.cpp index 72bd2981eef..b27efa2bb89 100644 --- a/searchlib/src/tests/diskindex/pagedict4/pagedict4_hugeword_cornercase_test.cpp +++ b/searchlib/src/tests/diskindex/pagedict4/pagedict4_hugeword_cornercase_test.cpp @@ -7,7 +7,6 @@ #include <vespa/searchlib/test/diskindex/threelevelcountbuffers.h> #include <vespa/searchlib/test/diskindex/pagedict4_mem_writer.h> #include <vespa/searchlib/test/diskindex/pagedict4_mem_seq_reader.h> -#include <vespa/searchlib/test/diskindex/pagedict4_mem_rand_reader.h> #include <vespa/searchlib/index/postinglistcounts.h> #include <vespa/log/log.h> @@ -133,29 +132,16 @@ PostingListCounts makeCounts(uint32_t wantLen) using StartOffset = search::bitcompression::PageDict4StartOffset; using Writer = search::diskindex::test::PageDict4MemWriter; using SeqReader = search::diskindex::test::PageDict4MemSeqReader; -using RandReader = search::diskindex::test::PageDict4MemRandReader; void testWords() { - using EC = search::bitcompression::PostingListCountFileEncodeContext; - using DC = search::bitcompression::PostingListCountFileDecodeContext; - - EC pe; - EC spe; - EC sse; uint32_t pageBitSize = 32768; uint32_t startBits = 15 * 3 + 12; - sse._minChunkDocs = minChunkDocs; - sse._numWordIds = numWordIds; - spe.copyParams(sse); - pe.copyParams(sse); - Writer w(sse, spe, pe); uint32_t ssPad = 64; uint32_t spPad = 64; uint32_t pPad = 64; - w.startPad(ssPad, spPad, pPad); - w.allocWriters(); + Writer w(minChunkDocs, numWordIds, ssPad, spPad, pPad); PostingListCounts baseCounts = makeBaseCounts(); PostingListCounts largeCounts = makeCounts(pageBitSize - startBits); w.addCounts("a", baseCounts); @@ -165,14 +151,7 @@ void testWords() w.addCounts("e", baseCounts); w.flush(); - DC ssd; - ssd._minChunkDocs = minChunkDocs; - ssd._numWordIds = numWordIds; - DC spd; - spd.copyParams(ssd); - DC pd; - pd.copyParams(ssd); - SeqReader r(ssd, spd, pd, w); + SeqReader r(minChunkDocs, numWordIds, w._buffers); uint64_t checkWordNum = 0; PostingListCounts counts; diff --git a/searchlib/src/tests/diskindex/pagedict4/pagedict4test.cpp b/searchlib/src/tests/diskindex/pagedict4/pagedict4test.cpp index f75c04dee59..e914fe7c559 100644 --- a/searchlib/src/tests/diskindex/pagedict4/pagedict4test.cpp +++ b/searchlib/src/tests/diskindex/pagedict4/pagedict4test.cpp @@ -366,9 +366,6 @@ testWords(const std::string &logname, bool firstWordForcedCommon, bool lastWordForcedCommon) { - typedef search::bitcompression::PostingListCountFileEncodeContext EC; - typedef search::bitcompression::PostingListCountFileDecodeContext DC; - LOG(info, "%s: word test start", logname.c_str()); std::vector<WordCounts> myrand; makeWords(myrand, rnd, numWordIds, tupleCount, @@ -384,17 +381,7 @@ testWords(const std::string &logname, } LOG(info, "%s: word counts generated", logname.c_str()); - EC pe; - EC spe; - EC sse; - - sse._minChunkDocs = chunkSize; - sse._numWordIds = numWordIds; - spe.copyParams(sse); - pe.copyParams(sse); - Writer w(sse, spe, pe); - w.startPad(ssPad, spPad, pPad); - w.allocWriters(); + Writer w(chunkSize, numWordIds, ssPad, spPad, pPad); PostingListCounts counts; for (std::vector<WordCounts>::const_iterator @@ -411,23 +398,15 @@ testWords(const std::string &logname, "%s: Used %" PRIu64 "+%" PRIu64 "+%" PRIu64 " bits for %d words", logname.c_str(), - w._pFileBitSize, - w._spFileBitSize, - w._ssFileBitSize, + w._buffers._pFileBitSize, + w._buffers._spFileBitSize, + w._buffers._ssFileBitSize, (int) myrand.size()); StartOffset checkOffset; { - DC ssd; - ssd._minChunkDocs = chunkSize; - ssd._numWordIds = numWordIds; - DC spd; - spd.copyParams(ssd); - DC pd; - pd.copyParams(ssd); - - SeqReader r(ssd, spd, pd, w); + SeqReader r(chunkSize, numWordIds, w._buffers); uint64_t wordNum = 1; uint64_t checkWordNum = 0; @@ -444,20 +423,12 @@ testWords(const std::string &logname, checkOffset._fileOffset += counts._bitLength; checkOffset._accNumDocs += counts._numDocs; } - assert(pd.getReadOffset() == w._pFileBitSize); + assert(r._decoders.pd.getReadOffset() == w._buffers._pFileBitSize); LOG(info, "%s: words seqRead test OK", logname.c_str()); } { - DC ssd; - ssd._minChunkDocs = chunkSize; - ssd._numWordIds = numWordIds; - DC spd; - spd.copyParams(ssd); - DC pd; - pd.copyParams(ssd); - - RandReader rr(ssd, spd, pd, w); + RandReader rr(chunkSize, numWordIds, w._buffers); uint64_t wordNum = 1; uint64_t checkWordNum = 0; |