You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucenenet.apache.org by ni...@apache.org on 2020/02/12 17:14:28 UTC
[lucenenet] 02/05: SWEEP: Pass Random instance to all Shuffle()
method calls to ensure the same psuedo-random sequence is used based on the
seed.
This is an automated email from the ASF dual-hosted git repository.
nightowl888 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/lucenenet.git
commit a75a3a339c030e68f2db30d4022440cb78499a8b
Author: Shad Storhaug <sh...@shadstorhaug.com>
AuthorDate: Mon Feb 10 20:11:04 2020 +0700
SWEEP: Pass Random instance to all Shuffle() method calls to ensure the same psuedo-random sequence is used based on the seed.
---
.../Index/BaseStoredFieldsFormatTestCase.cs | 2 +-
src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs | 4 ++--
.../Taxonomy/TestTaxonomyFacetCounts2.cs | 4 ++--
src/Lucene.Net.Tests.Join/TestBlockJoin.cs | 6 +++---
src/Lucene.Net.Tests.Misc/Index/Sorter/SorterTestBase.cs | 2 +-
src/Lucene.Net.Tests.Queries/TermsFilterTest.cs | 4 ++--
.../Suggest/Analyzing/AnalyzingSuggesterTest.cs | 2 +-
.../Suggest/Analyzing/FuzzySuggesterTest.cs | 2 +-
src/Lucene.Net.Tests.Suggest/Suggest/LookupBenchmarkTest.cs | 4 ++--
.../Codecs/Lucene3x/TestTermInfosReaderIndex.cs | 2 +-
.../Codecs/Lucene40/TestLucene40PostingsReader.cs | 2 +-
.../Codecs/Lucene41/TestBlockPostingsFormat3.cs | 2 +-
src/Lucene.Net.Tests/Index/Test2BTerms.cs | 2 +-
src/Lucene.Net.Tests/Index/TestBagOfPositions.cs | 2 +-
src/Lucene.Net.Tests/Index/TestBagOfPostings.cs | 2 +-
src/Lucene.Net.Tests/Index/TestIndexWriterDelete.cs | 4 ++--
src/Lucene.Net.Tests/Index/TestMaxTermFrequency.cs | 2 +-
src/Lucene.Net.Tests/Index/TestTermsEnum2.cs | 2 +-
src/Lucene.Net.Tests/Search/TestMinShouldMatch2.cs | 6 +++---
src/Lucene.Net.Tests/Search/TestSameScoresWithThreads.cs | 2 +-
src/Lucene.Net.Tests/Search/TestShardSearching.cs | 2 +-
src/Lucene.Net.Tests/Search/TestSort.cs | 12 ++++++------
src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs | 2 +-
23 files changed, 37 insertions(+), 37 deletions(-)
diff --git a/src/Lucene.Net.TestFramework/Index/BaseStoredFieldsFormatTestCase.cs b/src/Lucene.Net.TestFramework/Index/BaseStoredFieldsFormatTestCase.cs
index 7a7d31c..da7f856 100644
--- a/src/Lucene.Net.TestFramework/Index/BaseStoredFieldsFormatTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/BaseStoredFieldsFormatTestCase.cs
@@ -138,7 +138,7 @@ namespace Lucene.Net.Index
if (rand.Next(50) == 17)
{
// mixup binding of field name -> Number every so often
- fieldIDs.Shuffle();
+ fieldIDs.Shuffle(Random);
}
if (rand.Next(5) == 3 && i > 0)
{
diff --git a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
index ff36d6e..e2af615 100644
--- a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
@@ -1835,7 +1835,7 @@ namespace Lucene.Net.Util
{
allFields.Add(fi.Name);
}
- allFields.Shuffle();
+ allFields.Shuffle(Random);
int end = allFields.Count == 0 ? 0 : random.Next(allFields.Count);
ISet<string> fields = new JCG.HashSet<string>(allFields.SubList(0, end));
// will create no FC insanity as ParallelAtomicReader has own cache key:
@@ -2622,7 +2622,7 @@ namespace Lucene.Net.Util
rightEnum = rightTerms.GetIterator(rightEnum);
IList<BytesRef> shuffledTests = new List<BytesRef>(tests);
- shuffledTests.Shuffle();
+ shuffledTests.Shuffle(Random);
foreach (BytesRef b in shuffledTests)
{
diff --git a/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts2.cs b/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts2.cs
index bdfe28c..aca39cd 100644
--- a/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts2.cs
+++ b/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts2.cs
@@ -99,8 +99,8 @@ namespace Lucene.Net.Facet.Taxonomy
categories_a.AddRange(CATEGORIES_A);
List<FacetField> categories_b = new List<FacetField>();
categories_b.AddRange(CATEGORIES_B);
- categories_a.Shuffle();
- categories_b.Shuffle();
+ categories_a.Shuffle(Random);
+ categories_b.Shuffle(Random);
List<FacetField> categories = new List<FacetField>();
categories.AddRange(categories_a.SubList(0, numFacetsA));
diff --git a/src/Lucene.Net.Tests.Join/TestBlockJoin.cs b/src/Lucene.Net.Tests.Join/TestBlockJoin.cs
index 0a8159d..751f318 100644
--- a/src/Lucene.Net.Tests.Join/TestBlockJoin.cs
+++ b/src/Lucene.Net.Tests.Join/TestBlockJoin.cs
@@ -297,13 +297,13 @@ namespace Lucene.Net.Tests.Join
IList<Document> docs = new List<Document>();
docs.Add(MakeJob("java", 2007));
docs.Add(MakeJob("python", 2010));
- docs.Shuffle();
+ docs.Shuffle(Random);
docs.Add(MakeResume("Lisa", "United Kingdom"));
IList<Document> docs2 = new List<Document>();
docs2.Add(MakeJob("ruby", 2005));
docs2.Add(MakeJob("java", 2006));
- docs2.Shuffle();
+ docs2.Shuffle(Random);
docs2.Add(MakeResume("Frank", "United States"));
AddSkillless(w);
@@ -1320,7 +1320,7 @@ namespace Lucene.Net.Tests.Join
docs.Add(MakeJob("java", 2006));
docs.Add(MakeJob("java", 2010));
docs.Add(MakeJob("java", 2012));
- docs.Shuffle();
+ docs.Shuffle(Random);
docs.Add(MakeResume("Frank", "United States"));
AddSkillless(w);
diff --git a/src/Lucene.Net.Tests.Misc/Index/Sorter/SorterTestBase.cs b/src/Lucene.Net.Tests.Misc/Index/Sorter/SorterTestBase.cs
index d63b643..8152467 100644
--- a/src/Lucene.Net.Tests.Misc/Index/Sorter/SorterTestBase.cs
+++ b/src/Lucene.Net.Tests.Misc/Index/Sorter/SorterTestBase.cs
@@ -182,7 +182,7 @@ namespace Lucene.Net.Index.Sorter
ids.Add(i * 10);
}
// shuffle them for indexing
- ids.Shuffle();
+ ids.Shuffle(Random);
if (VERBOSE)
{
diff --git a/src/Lucene.Net.Tests.Queries/TermsFilterTest.cs b/src/Lucene.Net.Tests.Queries/TermsFilterTest.cs
index 88d512a..3a1dc4c 100644
--- a/src/Lucene.Net.Tests.Queries/TermsFilterTest.cs
+++ b/src/Lucene.Net.Tests.Queries/TermsFilterTest.cs
@@ -259,7 +259,7 @@ namespace Lucene.Net.Tests.Queries
int numQueries = AtLeast(10);
for (int i = 0; i < numQueries; i++)
{
- terms.Shuffle();
+ terms.Shuffle(Random);
int numTerms = 1 + Random.Next(Math.Min(BooleanQuery.MaxClauseCount, terms.Count));
BooleanQuery bq = new BooleanQuery();
for (int j = 0; j < numTerms; j++)
@@ -325,7 +325,7 @@ namespace Lucene.Net.Tests.Queries
terms.Add(new Term(field, @string));
uniqueTerms.Add(new Term(field, @string));
TermsFilter left = TermsFilter(singleField && Random.NextBoolean(), uniqueTerms);
- terms.Shuffle();
+ terms.Shuffle(Random);
TermsFilter right = TermsFilter(singleField && Random.NextBoolean(), terms);
assertEquals(right, left);
assertEquals(right.GetHashCode(), left.GetHashCode());
diff --git a/src/Lucene.Net.Tests.Suggest/Suggest/Analyzing/AnalyzingSuggesterTest.cs b/src/Lucene.Net.Tests.Suggest/Suggest/Analyzing/AnalyzingSuggesterTest.cs
index 248f489..83b5324 100644
--- a/src/Lucene.Net.Tests.Suggest/Suggest/Analyzing/AnalyzingSuggesterTest.cs
+++ b/src/Lucene.Net.Tests.Suggest/Suggest/Analyzing/AnalyzingSuggesterTest.cs
@@ -1502,7 +1502,7 @@ namespace Lucene.Net.Search.Suggest.Analyzing
{
asList.Add(value);
}
- asList.Shuffle();
+ asList.Shuffle(Random);
return asList;
}
}
diff --git a/src/Lucene.Net.Tests.Suggest/Suggest/Analyzing/FuzzySuggesterTest.cs b/src/Lucene.Net.Tests.Suggest/Suggest/Analyzing/FuzzySuggesterTest.cs
index c960f6d..06a972d 100644
--- a/src/Lucene.Net.Tests.Suggest/Suggest/Analyzing/FuzzySuggesterTest.cs
+++ b/src/Lucene.Net.Tests.Suggest/Suggest/Analyzing/FuzzySuggesterTest.cs
@@ -1154,7 +1154,7 @@ namespace Lucene.Net.Search.Suggest.Analyzing
Console.WriteLine("TEST: maxEdits=" + maxEdits + " prefixLen=" + prefixLen + " transpositions=" + transpositions + " num=" + NUM);
}
- answers.Shuffle();
+ answers.Shuffle(Random);
suggest.Build(new InputArrayIterator(answers.ToArray()));
int ITERS = AtLeast(100);
diff --git a/src/Lucene.Net.Tests.Suggest/Suggest/LookupBenchmarkTest.cs b/src/Lucene.Net.Tests.Suggest/Suggest/LookupBenchmarkTest.cs
index 175d5fa..15094cc 100644
--- a/src/Lucene.Net.Tests.Suggest/Suggest/LookupBenchmarkTest.cs
+++ b/src/Lucene.Net.Tests.Suggest/Suggest/LookupBenchmarkTest.cs
@@ -77,9 +77,9 @@ namespace Lucene.Net.Search.Suggest
{
Debug.Assert(false, "disable assertions before running benchmarks!");
IList<Input> input = ReadTop50KWiki();
- input.Shuffle();
+ input.Shuffle(Random);
dictionaryInput = input.ToArray();
- input.Shuffle();
+ input.Shuffle(Random);
benchmarkInput = input;
}
diff --git a/src/Lucene.Net.Tests/Codecs/Lucene3x/TestTermInfosReaderIndex.cs b/src/Lucene.Net.Tests/Codecs/Lucene3x/TestTermInfosReaderIndex.cs
index 46134aa..a708dde 100644
--- a/src/Lucene.Net.Tests/Codecs/Lucene3x/TestTermInfosReaderIndex.cs
+++ b/src/Lucene.Net.Tests/Codecs/Lucene3x/TestTermInfosReaderIndex.cs
@@ -187,7 +187,7 @@ namespace Lucene.Net.Codecs.Lucene3x
}
}
}
- sample.Shuffle();
+ sample.Shuffle(Random);
return sample;
}
diff --git a/src/Lucene.Net.Tests/Codecs/Lucene40/TestLucene40PostingsReader.cs b/src/Lucene.Net.Tests/Codecs/Lucene40/TestLucene40PostingsReader.cs
index 2ab8c24..744895a 100644
--- a/src/Lucene.Net.Tests/Codecs/Lucene40/TestLucene40PostingsReader.cs
+++ b/src/Lucene.Net.Tests/Codecs/Lucene40/TestLucene40PostingsReader.cs
@@ -153,7 +153,7 @@ namespace Lucene.Net.Codecs.Lucene40
}
i++;
}
- shuffled.Shuffle();
+ shuffled.Shuffle(Random);
foreach (string term in shuffled)
{
sb.Append(term);
diff --git a/src/Lucene.Net.Tests/Codecs/Lucene41/TestBlockPostingsFormat3.cs b/src/Lucene.Net.Tests/Codecs/Lucene41/TestBlockPostingsFormat3.cs
index 20f4593..1b85750 100644
--- a/src/Lucene.Net.Tests/Codecs/Lucene41/TestBlockPostingsFormat3.cs
+++ b/src/Lucene.Net.Tests/Codecs/Lucene41/TestBlockPostingsFormat3.cs
@@ -274,7 +274,7 @@ namespace Lucene.Net.Codecs.Lucene41
}
List<BytesRef> shuffledTests = new List<BytesRef>(tests);
- shuffledTests.Shuffle();
+ shuffledTests.Shuffle(Random);
foreach (BytesRef b in shuffledTests)
{
diff --git a/src/Lucene.Net.Tests/Index/Test2BTerms.cs b/src/Lucene.Net.Tests/Index/Test2BTerms.cs
index e1f09a2..58903f7 100644
--- a/src/Lucene.Net.Tests/Index/Test2BTerms.cs
+++ b/src/Lucene.Net.Tests/Index/Test2BTerms.cs
@@ -282,7 +282,7 @@ namespace Lucene.Net.Index
{
Console.WriteLine("TEST: run " + terms.Count + " terms on reader=" + r);
IndexSearcher s = NewSearcher(r);
- terms.Shuffle();
+ terms.Shuffle(Random);
TermsEnum termsEnum = MultiFields.GetTerms(r, "field").GetIterator(null);
bool failed = false;
for (int iter = 0; iter < 10 * terms.Count; iter++)
diff --git a/src/Lucene.Net.Tests/Index/TestBagOfPositions.cs b/src/Lucene.Net.Tests/Index/TestBagOfPositions.cs
index 901229b..6a93bfb 100644
--- a/src/Lucene.Net.Tests/Index/TestBagOfPositions.cs
+++ b/src/Lucene.Net.Tests/Index/TestBagOfPositions.cs
@@ -79,7 +79,7 @@ namespace Lucene.Net.Index
}
}
- postingsList.Shuffle();
+ postingsList.Shuffle(Random);
ConcurrentQueue<string> postings = new ConcurrentQueue<string>(postingsList);
diff --git a/src/Lucene.Net.Tests/Index/TestBagOfPostings.cs b/src/Lucene.Net.Tests/Index/TestBagOfPostings.cs
index 3dd9274..68806a3 100644
--- a/src/Lucene.Net.Tests/Index/TestBagOfPostings.cs
+++ b/src/Lucene.Net.Tests/Index/TestBagOfPostings.cs
@@ -79,7 +79,7 @@ namespace Lucene.Net.Index
postingsList.Add(term);
}
}
- postingsList.Shuffle();
+ postingsList.Shuffle(Random);
ConcurrentQueue<string> postings = new ConcurrentQueue<string>(postingsList);
diff --git a/src/Lucene.Net.Tests/Index/TestIndexWriterDelete.cs b/src/Lucene.Net.Tests/Index/TestIndexWriterDelete.cs
index e9586cc..8477174 100644
--- a/src/Lucene.Net.Tests/Index/TestIndexWriterDelete.cs
+++ b/src/Lucene.Net.Tests/Index/TestIndexWriterDelete.cs
@@ -1123,14 +1123,14 @@ namespace Lucene.Net.Index
{
ids.Add(id);
}
- ids.Shuffle();
+ ids.Shuffle(Random);
foreach (int id in ids)
{
Document doc = new Document();
doc.Add(NewStringField("id", "" + id, Field.Store.NO));
w.AddDocument(doc);
}
- ids.Shuffle();
+ ids.Shuffle(Random);
int upto = 0;
while (upto < ids.Count)
{
diff --git a/src/Lucene.Net.Tests/Index/TestMaxTermFrequency.cs b/src/Lucene.Net.Tests/Index/TestMaxTermFrequency.cs
index 25fc445..69a6072 100644
--- a/src/Lucene.Net.Tests/Index/TestMaxTermFrequency.cs
+++ b/src/Lucene.Net.Tests/Index/TestMaxTermFrequency.cs
@@ -108,7 +108,7 @@ namespace Lucene.Net.Index
}
Expected.Add(max);
- terms.Shuffle();
+ terms.Shuffle(Random);
return Arrays.ToString(terms.ToArray());
}
diff --git a/src/Lucene.Net.Tests/Index/TestTermsEnum2.cs b/src/Lucene.Net.Tests/Index/TestTermsEnum2.cs
index eda537e..7609376 100644
--- a/src/Lucene.Net.Tests/Index/TestTermsEnum2.cs
+++ b/src/Lucene.Net.Tests/Index/TestTermsEnum2.cs
@@ -129,7 +129,7 @@ namespace Lucene.Net.Index
Automaton automaton = (new RegExp(reg, RegExpSyntax.NONE)).ToAutomaton();
TermsEnum te = MultiFields.GetTerms(Reader, "field").GetIterator(null);
IList<BytesRef> unsortedTerms = new List<BytesRef>(Terms);
- unsortedTerms.Shuffle();
+ unsortedTerms.Shuffle(Random);
foreach (BytesRef term in unsortedTerms)
{
diff --git a/src/Lucene.Net.Tests/Search/TestMinShouldMatch2.cs b/src/Lucene.Net.Tests/Search/TestMinShouldMatch2.cs
index 222073c..84e92cd 100644
--- a/src/Lucene.Net.Tests/Search/TestMinShouldMatch2.cs
+++ b/src/Lucene.Net.Tests/Search/TestMinShouldMatch2.cs
@@ -135,7 +135,7 @@ namespace Lucene.Net.Search
private static void AddSome(Document doc, string[] values)
{
IList<string> list = values.ToArray();
- list.Shuffle();
+ list.Shuffle(Random);
int howMany = TestUtil.NextInt32(Random, 1, list.Count);
for (int i = 0; i < howMany; i++)
{
@@ -296,7 +296,7 @@ namespace Lucene.Net.Search
termsList.AddRange(CommonTerms);
termsList.AddRange(MediumTerms);
termsList.AddRange(RareTerms);
- termsList.Shuffle();
+ termsList.Shuffle(Random);
for (int numTerms = 2; numTerms <= termsList.Count; numTerms++)
{
@@ -319,7 +319,7 @@ namespace Lucene.Net.Search
termsList.AddRange(CommonTerms);
termsList.AddRange(MediumTerms);
termsList.AddRange(RareTerms);
- termsList.Shuffle();
+ termsList.Shuffle(Random);
for (int amount = 25; amount < 200; amount += 25)
{
diff --git a/src/Lucene.Net.Tests/Search/TestSameScoresWithThreads.cs b/src/Lucene.Net.Tests/Search/TestSameScoresWithThreads.cs
index 2420619..7b2d295 100644
--- a/src/Lucene.Net.Tests/Search/TestSameScoresWithThreads.cs
+++ b/src/Lucene.Net.Tests/Search/TestSameScoresWithThreads.cs
@@ -138,7 +138,7 @@ namespace Lucene.Net.Search
for (int i = 0; i < 20; i++)
{
IList<KeyValuePair<BytesRef, TopDocs>> shuffled = new List<KeyValuePair<BytesRef, TopDocs>>(Answers);
- shuffled.Shuffle();
+ shuffled.Shuffle(Random);
foreach (KeyValuePair<BytesRef, TopDocs> ent in shuffled)
{
TopDocs actual = s.Search(new TermQuery(new Term("body", ent.Key)), 100);
diff --git a/src/Lucene.Net.Tests/Search/TestShardSearching.cs b/src/Lucene.Net.Tests/Search/TestShardSearching.cs
index 50385b9..df881d2 100644
--- a/src/Lucene.Net.Tests/Search/TestShardSearching.cs
+++ b/src/Lucene.Net.Tests/Search/TestShardSearching.cs
@@ -325,7 +325,7 @@ namespace Lucene.Net.Search
priorSearches.Add(searchState);
if (priorSearches.Count > 200)
{
- priorSearches.Shuffle();
+ priorSearches.Shuffle(Random);
priorSearches.SubList(100, priorSearches.Count).Clear();
}
}
diff --git a/src/Lucene.Net.Tests/Search/TestSort.cs b/src/Lucene.Net.Tests/Search/TestSort.cs
index bc7cc65..a47b7bd 100644
--- a/src/Lucene.Net.Tests/Search/TestSort.cs
+++ b/src/Lucene.Net.Tests/Search/TestSort.cs
@@ -1707,7 +1707,7 @@ namespace Lucene.Net.Search
public virtual void TestCustomIntParser()
{
IList<string> letters = new List<string> { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J" };
- letters.Shuffle();
+ letters.Shuffle(Random);
Directory dir = NewDirectory();
RandomIndexWriter iw = new RandomIndexWriter(
@@ -1772,7 +1772,7 @@ namespace Lucene.Net.Search
public virtual void TestCustomByteParser()
{
IList<string> letters = new List<string> { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J" };
- letters.Shuffle();
+ letters.Shuffle(Random);
Directory dir = NewDirectory();
RandomIndexWriter iw = new RandomIndexWriter(
@@ -1836,7 +1836,7 @@ namespace Lucene.Net.Search
public virtual void TestCustomShortParser()
{
IList<string> letters = new List<string> { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J" };
- letters.Shuffle();
+ letters.Shuffle(Random);
Directory dir = NewDirectory();
RandomIndexWriter iw = new RandomIndexWriter(
@@ -1903,7 +1903,7 @@ namespace Lucene.Net.Search
public virtual void TestCustomLongParser()
{
IList<string> letters = new List<string> { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J" };
- letters.Shuffle();
+ letters.Shuffle(Random);
Directory dir = NewDirectory();
RandomIndexWriter iw = new RandomIndexWriter(
@@ -1968,7 +1968,7 @@ namespace Lucene.Net.Search
public virtual void TestCustomFloatParser()
{
IList<string> letters = new List<string> { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J" };
- letters.Shuffle();
+ letters.Shuffle(Random);
Directory dir = NewDirectory();
RandomIndexWriter iw = new RandomIndexWriter(
@@ -2033,7 +2033,7 @@ namespace Lucene.Net.Search
public virtual void TestCustomDoubleParser()
{
IList<string> letters = new List<string> { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J" };
- letters.Shuffle();
+ letters.Shuffle(Random);
Directory dir = NewDirectory();
RandomIndexWriter iw = new RandomIndexWriter(
diff --git a/src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs b/src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs
index d5efc6f..d61cb59 100644
--- a/src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs
+++ b/src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs
@@ -1234,7 +1234,7 @@ namespace Lucene.Net.Util.Fst
w.Dispose();
IList<string> allTermsList = new List<string>(allTerms);
- allTermsList.Shuffle();
+ allTermsList.Shuffle(Random);
// verify exact lookup
foreach (string term in allTermsList)