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 04c9d1c42f24ae8a9ab8b75f1bd0c8e983feb7e4 Author: Shad Storhaug <[email protected]> AuthorDate: Fri Jul 17 05:35:20 2020 +0700 PERFORMANCE: Lucene.Net.TestFramework: Refactored Assert class to test for additional conditions locally, since NUnit is extremely slow when calling some methods in a tight loop. Eliminated object overloads and changed to generic to enforce comparing similar types by default unless opting in by specifying object as the generic type. --- .../Support/TestFramework/Assert.cs | 169 +++++++++++++-------- .../Support/JavaCompatibility/LuceneTestCase.cs | 18 ++- .../Taxonomy/TestTaxonomyFacetCounts.cs | 2 +- .../Taxonomy/TestTaxonomyFacetCounts2.cs | 26 ++-- src/Lucene.Net.Tests.Grouping/TestGrouping.cs | 4 +- .../SessionTokenTest.cs | 6 +- .../Support/TestApiConsistency.cs | 2 +- .../TokenAttributes/TestCharTermAttributeImpl.cs | 4 +- .../Index/TestIndexWriterForceMerge.cs | 1 + src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs | 2 +- src/Lucene.Net.Tests/Util/TestBytesRef.cs | 2 +- src/Lucene.Net.Tests/Util/TestNumericUtils.cs | 1 - 12 files changed, 145 insertions(+), 92 deletions(-) diff --git a/src/Lucene.Net.TestFramework.NUnit/Support/TestFramework/Assert.cs b/src/Lucene.Net.TestFramework.NUnit/Support/TestFramework/Assert.cs index 08ed9cb..cbf4e13 100644 --- a/src/Lucene.Net.TestFramework.NUnit/Support/TestFramework/Assert.cs +++ b/src/Lucene.Net.TestFramework.NUnit/Support/TestFramework/Assert.cs @@ -3,6 +3,7 @@ using Lucene.Net.Support; using Lucene.Net.Support.IO; using System; using System.Collections.Generic; +using System.Globalization; using System.Linq; using _NUnit = NUnit.Framework; using JCG = J2N.Collections.Generic; @@ -31,6 +32,8 @@ namespace Lucene.Net.TestFramework /// </summary> internal partial class Assert { + private const string FailureFormat = "Expected: {0}, Actual: {1}"; + // // Summary: // We don't actually want any instances of this object, but some people like to @@ -52,9 +55,10 @@ namespace Lucene.Net.TestFramework // // actual: // The actual value - public static void AreEqual(object expected, object actual) + public static void AreEqual<T>(T expected, T actual) { - _NUnit.Assert.AreEqual(expected, actual); + if (!JCG.EqualityComparer<T>.Default.Equals(expected, actual)) + Fail(FailureFormat, expected, actual); } // // Summary: @@ -75,10 +79,53 @@ namespace Lucene.Net.TestFramework // // args: // Array of objects to be used in formatting the message - public static void AreEqual(object expected, object actual, string message, params object[] args) + public static void AreEqual<T>(T expected, T actual, string message, params object[] args) { - _NUnit.Assert.AreEqual(expected, actual, message, args); + if (!JCG.EqualityComparer<T>.Default.Equals(expected, actual)) + Fail(string.Concat(string.Format(FailureFormat, expected, actual), Environment.NewLine, Environment.NewLine, string.Format(message, args))); } + + // + // Summary: + // Verifies that two objects are equal. Two objects are considered equal if both + // are null, or if both have the same value. NUnit has special semantics for some + // object types. If they are not equal an NUnit.Framework.AssertionException is + // thrown. + // + // Parameters: + // expected: + // The value that is expected + // + // actual: + // The actual value + public static void AreEqual(string expected, string actual) + { + if (!StringComparer.Ordinal.Equals(expected, actual)) + Fail(FailureFormat, expected, actual); + } + + // + // Summary: + // Verifies that two objects are equal. Two objects are considered equal if both + // are null, or if both have the same value. NUnit has special semantics for some + // object types. If they are not equal an NUnit.Framework.AssertionException is + // thrown. + // + // Parameters: + // expected: + // The value that is expected + // + // message: + // The message to display in case of failure + // + // actual: + // The actual value + public static void AreEqual(string expected, string actual, string message, params object[] args) + { + if (!StringComparer.Ordinal.Equals(expected, actual)) + Fail(string.Concat(string.Format(FailureFormat, expected, actual), Environment.NewLine, Environment.NewLine, string.Format(message, args))); + } + // // Summary: // Verifies that two objects are equal. Two objects are considered equal if both @@ -94,7 +141,8 @@ namespace Lucene.Net.TestFramework // The actual value public static void AreEqual(bool expected, bool actual) { - _NUnit.Assert.IsTrue(expected.Equals(actual)); + if (!expected.Equals(actual)) + Fail(FailureFormat, expected, actual); } // // Summary: @@ -117,8 +165,10 @@ namespace Lucene.Net.TestFramework // Array of objects to be used in formatting the message public static void AreEqual(bool expected, bool actual, string message, params object[] args) { - _NUnit.Assert.IsTrue(expected.Equals(actual), message, args); + if (!expected.Equals(actual)) + Fail(string.Concat(string.Format(FailureFormat, expected, actual), Environment.NewLine, Environment.NewLine, string.Format(message, args))); } + // // Summary: // Verifies that two doubles are equal considering a delta. If the expected value @@ -142,7 +192,8 @@ namespace Lucene.Net.TestFramework // Array of objects to be used in formatting the message public static void AreEqual(double expected, double actual, double delta, string message, params object[] args) { - _NUnit.Assert.AreEqual(expected, actual, delta, message, args); + if (Math.Abs(expected - actual) > delta) + _NUnit.Assert.AreEqual(expected, actual, delta, message, args); } // // Summary: @@ -161,7 +212,8 @@ namespace Lucene.Net.TestFramework // The maximum acceptable difference between the the expected and the actual public static void AreEqual(double expected, double actual, double delta) { - _NUnit.Assert.AreEqual(expected, actual, delta); + if (Math.Abs(expected - actual) > delta) + _NUnit.Assert.AreEqual(expected, actual, delta); } // // Summary: @@ -187,9 +239,7 @@ namespace Lucene.Net.TestFramework public static void AreEqual(float expected, float actual, float delta, string message, params object[] args) { if (Math.Abs(expected - actual) > delta) - { _NUnit.Assert.AreEqual(expected, actual, delta, message, args); - } } // // Summary: @@ -209,9 +259,7 @@ namespace Lucene.Net.TestFramework public static void AreEqual(float expected, float actual, float delta) { if (Math.Abs(expected - actual) > delta) - { _NUnit.Assert.AreEqual(expected, actual, delta); - } } // // Summary: @@ -228,7 +276,8 @@ namespace Lucene.Net.TestFramework // The actual value public static void AreEqual(int expected, int actual) { - _NUnit.Assert.True(expected.Equals(actual)); + if (!expected.Equals(actual)) + Fail(FailureFormat, expected, actual); } // @@ -247,9 +296,10 @@ namespace Lucene.Net.TestFramework // // actual: // The actual value - public static void AreEqual(int expected, int actual, string message) + public static void AreEqual(int expected, int actual, string message, params object[] args) { - _NUnit.Assert.True(expected.Equals(actual), message); + if (!expected.Equals(actual)) + Fail(string.Concat(string.Format(FailureFormat, expected, actual), Environment.NewLine, Environment.NewLine, string.Format(message, args))); } // @@ -267,7 +317,8 @@ namespace Lucene.Net.TestFramework // The actual value public static void AreEqual(long expected, long actual) { - _NUnit.Assert.True(expected.Equals(actual)); + if (!expected.Equals(actual)) + Fail(FailureFormat, expected, actual); } // @@ -286,9 +337,10 @@ namespace Lucene.Net.TestFramework // // actual: // The actual value - public static void AreEqual(long expected, long actual, string message) + public static void AreEqual(long expected, long actual, string message, params object[] args) { - _NUnit.Assert.True(expected.Equals(actual), message); + if (!expected.Equals(actual)) + Fail(string.Concat(string.Format(FailureFormat, expected, actual), Environment.NewLine, Environment.NewLine, string.Format(message, args))); } // @@ -306,7 +358,8 @@ namespace Lucene.Net.TestFramework // The actual value public static void AreEqual(byte expected, byte actual) { - _NUnit.Assert.True(expected.Equals(actual)); + if (!expected.Equals(actual)) + Fail(FailureFormat, expected, actual); } // @@ -325,9 +378,10 @@ namespace Lucene.Net.TestFramework // // actual: // The actual value - public static void AreEqual(byte expected, byte actual, string message) + public static void AreEqual(byte expected, byte actual, string message, params object[] args) { - _NUnit.Assert.True(expected.Equals(actual), message); + if (!expected.Equals(actual)) + Fail(string.Concat(string.Format(FailureFormat, expected, actual), Environment.NewLine, Environment.NewLine, string.Format(message, args))); } @@ -360,74 +414,55 @@ namespace Lucene.Net.TestFramework public static void AreEqual<T>(ISet<T> expected, ISet<T> actual, bool aggressive = true) { if (!GetSetComparer<T>(aggressive).Equals(expected, actual)) - { - _NUnit.Assert.Fail("Expected: '{0}', Actual: '{1}'", FormatCollection(expected), FormatCollection(actual)); - } + Fail(FailureFormat, FormatCollection(expected), FormatCollection(actual)); } public static void AreEqual<T>(ISet<T> expected, ISet<T> actual, bool aggressive, string message, params object[] args) { if (!GetSetComparer<T>(aggressive).Equals(expected, actual)) - { - _NUnit.Assert.Fail(message, args); - } + Fail(string.Concat(string.Format(FailureFormat, FormatCollection(expected), FormatCollection(actual)), Environment.NewLine, Environment.NewLine, string.Format(message, args))); } public static void AreEqual<T>(ISet<T> expected, ISet<T> actual, bool aggressive, Func<string> getMessage) { if (!GetSetComparer<T>(aggressive).Equals(expected, actual)) - { - _NUnit.Assert.Fail(getMessage()); - } + Fail(string.Concat(string.Format(FailureFormat, FormatCollection(expected), FormatCollection(actual)), Environment.NewLine, Environment.NewLine, getMessage())); } public static void AreEqual<T>(IList<T> expected, IList<T> actual, bool aggressive = true) { if (!GetListComparer<T>(aggressive).Equals(expected, actual)) - { - _NUnit.Assert.Fail("Expected: '{0}', Actual: '{1}'", FormatCollection(expected), FormatCollection(actual)); - } - + Fail(string.Format(FailureFormat, FormatCollection(expected), FormatCollection(actual))); } public static void AreEqual<T>(IList<T> expected, IList<T> actual, bool aggressive, string message, params object[] args) { if (!GetListComparer<T>(aggressive).Equals(expected, actual)) - { - _NUnit.Assert.Fail(message, args); - } + Fail(string.Concat(string.Format(FailureFormat, FormatCollection(expected), FormatCollection(actual)), Environment.NewLine, Environment.NewLine, string.Format(message, args))); } public static void AreEqual<T>(IList<T> expected, IList<T> actual, bool aggressive, Func<string> getMessage) { if (!GetListComparer<T>(aggressive).Equals(expected, actual)) - { - _NUnit.Assert.Fail(getMessage()); - } + Fail(string.Concat(string.Format(FailureFormat, FormatCollection(expected), FormatCollection(actual)), Environment.NewLine, Environment.NewLine, getMessage())); } public static void AreEqual<TKey, TValue>(IDictionary<TKey, TValue> expected, IDictionary<TKey, TValue> actual, bool aggressive = true) { if (!GetDictionaryComparer<TKey, TValue>(aggressive).Equals(expected, actual)) - { - _NUnit.Assert.Fail("Expected: '{0}', Actual: '{1}'", FormatCollection(expected), FormatCollection(actual)); - } + Fail(FailureFormat, FormatCollection(expected), FormatCollection(actual)); } public static void AreEqual<TKey, TValue>(IDictionary<TKey, TValue> expected, IDictionary<TKey, TValue> actual, bool aggressive, string message, params object[] args) { if (!GetDictionaryComparer<TKey, TValue>(aggressive).Equals(expected, actual)) - { - _NUnit.Assert.Fail(message, args); - } + Fail(string.Concat(string.Format(FailureFormat, FormatCollection(expected), FormatCollection(actual)), Environment.NewLine, Environment.NewLine, string.Format(message, args))); } public static void AreEqual<TKey, TValue>(IDictionary<TKey, TValue> expected, IDictionary<TKey, TValue> actual, bool aggressive, Func<string> getMessage) { if (!GetDictionaryComparer<TKey, TValue>(aggressive).Equals(expected, actual)) - { - _NUnit.Assert.Fail(getMessage()); - } + Fail(string.Concat(string.Format(FailureFormat, FormatCollection(expected), FormatCollection(actual)), Environment.NewLine, Environment.NewLine, getMessage())); } @@ -435,18 +470,14 @@ namespace Lucene.Net.TestFramework public static void AreEqual<T>(T[] expected, T[] actual) { if (!J2N.Collections.ArrayEqualityComparer<T>.OneDimensional.Equals(expected, actual)) - { - _NUnit.Assert.Fail("Expected: '{0}', Actual: '{1}'", FormatCollection(expected), FormatCollection(actual)); - } + Fail(FailureFormat, FormatCollection(expected), FormatCollection(actual)); } // From CollectionAssert public static void AreEqual<T>(T[] expected, T[] actual, string message, params object[] args) { if (!J2N.Collections.ArrayEqualityComparer<T>.OneDimensional.Equals(expected, actual)) - { - _NUnit.Assert.Fail(message, args); - } + Fail(string.Concat(string.Format(FailureFormat, FormatCollection(expected), FormatCollection(actual)), Environment.NewLine, Environment.NewLine, string.Format(message, args))); } // @@ -603,7 +634,8 @@ namespace Lucene.Net.TestFramework // Array of objects to be used in formatting the message public static void False(bool condition, string message, params object[] args) { - _NUnit.Assert.False(condition, message, args); + if (condition) + _NUnit.Assert.Fail(message, args); } // // Summary: @@ -615,7 +647,8 @@ namespace Lucene.Net.TestFramework // The evaluated condition public static void False(bool condition) { - _NUnit.Assert.False(condition); + if (condition) + _NUnit.Assert.Fail("Expected: False Actual: True"); } // @@ -628,7 +661,8 @@ namespace Lucene.Net.TestFramework // The evaluated condition public static void IsFalse(bool condition) { - _NUnit.Assert.IsFalse(condition); + if (condition) + _NUnit.Assert.Fail("Expected: False Actual: True"); } // @@ -647,7 +681,8 @@ namespace Lucene.Net.TestFramework // Array of objects to be used in formatting the message public static void IsFalse(bool condition, string message, params object[] args) { - _NUnit.Assert.IsFalse(condition, message, args); + if (condition) + _NUnit.Assert.Fail(message, args); } // @@ -727,7 +762,8 @@ namespace Lucene.Net.TestFramework // Array of objects to be used in formatting the message public static void IsTrue(bool condition, string message, params object[] args) { - _NUnit.Assert.IsTrue(condition, message, args); + if (!condition) + _NUnit.Assert.Fail(message, args); } // @@ -740,7 +776,8 @@ namespace Lucene.Net.TestFramework // The evaluated condition public static void IsTrue(bool condition) { - _NUnit.Assert.IsTrue(condition); + if (!condition) + _NUnit.Assert.Fail("Expected: True Actual: False"); } // @@ -821,7 +858,8 @@ namespace Lucene.Net.TestFramework // Array of objects to be used in formatting the message public static void True(bool condition, string message, params object[] args) { - _NUnit.Assert.True(condition, message, args); + if (!condition) + _NUnit.Assert.Fail(message, args); } // @@ -834,7 +872,8 @@ namespace Lucene.Net.TestFramework // The evaluated condition public static void True(bool condition) { - _NUnit.Assert.True(condition); + if (!condition) + _NUnit.Assert.Fail("Expected: True Actual: False"); } @@ -848,7 +887,7 @@ namespace Lucene.Net.TestFramework _NUnit.Assert.Greater(arg1, arg2); } - public static Exception Throws<TException>(Action action, string message, params string[] args) + public static Exception Throws<TException>(Action action, string message, params object[] args) { return Throws(typeof(TException), action, message, args); } @@ -863,7 +902,7 @@ namespace Lucene.Net.TestFramework return _NUnit.Assert.Throws(expectedExceptionType, () => action()); } - public static Exception Throws(Type expectedExceptionType, Action action, string message, params string[] args) + public static Exception Throws(Type expectedExceptionType, Action action, string message, params object[] args) { return _NUnit.Assert.Throws(expectedExceptionType, () => action(), message, args); } diff --git a/src/Lucene.Net.TestFramework/Support/JavaCompatibility/LuceneTestCase.cs b/src/Lucene.Net.TestFramework/Support/JavaCompatibility/LuceneTestCase.cs index e267119..0782bb6 100644 --- a/src/Lucene.Net.TestFramework/Support/JavaCompatibility/LuceneTestCase.cs +++ b/src/Lucene.Net.TestFramework/Support/JavaCompatibility/LuceneTestCase.cs @@ -68,12 +68,22 @@ namespace Lucene.Net.Util Assert.IsFalse(condition, message); } - internal static void assertEquals(object expected, object actual) + internal static void assertEquals<T>(T expected, T actual) { Assert.AreEqual(expected, actual); } - internal static void assertEquals(string message, object expected, object actual) + internal static void assertEquals<T>(string message, T expected, T actual) + { + Assert.AreEqual(expected, actual, message); + } + + internal static void assertEquals(string expected, string actual) + { + Assert.AreEqual(expected, actual); + } + + internal static void assertEquals(string message, string expected, string actual) { Assert.AreEqual(expected, actual, message); } @@ -213,12 +223,12 @@ namespace Lucene.Net.Util Assert.AreEqual(a1, a2); } - internal static void assertSame(Object expected, Object actual) + internal static void assertSame(object expected, object actual) { Assert.AreSame(expected, actual); } - internal static void assertSame(string message, Object expected, Object actual) + internal static void assertSame(string message, object expected, object actual) { Assert.AreSame(expected, actual, message); } diff --git a/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts.cs b/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts.cs index be5d70f..a2fe4c1 100644 --- a/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts.cs +++ b/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts.cs @@ -683,7 +683,7 @@ namespace Lucene.Net.Facet.Taxonomy Facets facets = GetTaxonomyFacetCounts(taxoReader, config, sfc); IList<FacetResult> res1 = facets.GetAllDims(10); IList<FacetResult> res2 = facets.GetAllDims(10); - Assert.AreEqual(res1, res2, "calling getFacetResults twice should return the .equals()=true result"); + Assert.AreEqual(res1, res2, aggressive: false, "calling getFacetResults twice should return the .equals()=true result"); IOUtils.Dispose(taxoWriter, iw, taxoReader, taxoDir, r, indexDir); } diff --git a/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts2.cs b/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts2.cs index dba7829..4bf4ca2 100644 --- a/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts2.cs +++ b/src/Lucene.Net.Tests.Facet/Taxonomy/TestTaxonomyFacetCounts2.cs @@ -297,13 +297,13 @@ namespace Lucene.Net.Facet.Taxonomy Assert.AreEqual(-1, (int)result.Value); foreach (LabelAndValue labelValue in result.LabelValues) { - Assert.AreEqual(termExpectedCounts[CP_A + "/" + labelValue.Label], labelValue.Value); + Assert.AreEqual(termExpectedCounts[CP_A + "/" + labelValue.Label].GetValueOrDefault(), labelValue.Value); } result = facets.GetTopChildren(NUM_CHILDREN_CP_B, CP_B); - Assert.AreEqual(termExpectedCounts[CP_B], result.Value); + Assert.AreEqual(termExpectedCounts[CP_B].GetValueOrDefault(), result.Value); foreach (LabelAndValue labelValue in result.LabelValues) { - Assert.AreEqual(termExpectedCounts[CP_B + "/" + labelValue.Label], labelValue.Value); + Assert.AreEqual(termExpectedCounts[CP_B + "/" + labelValue.Label].GetValueOrDefault(), labelValue.Value); } IOUtils.Dispose(indexReader, taxoReader); @@ -326,17 +326,17 @@ namespace Lucene.Net.Facet.Taxonomy int prevValue = int.MaxValue; foreach (LabelAndValue labelValue in result.LabelValues) { - Assert.AreEqual(allExpectedCounts[CP_A + "/" + labelValue.Label], labelValue.Value); + Assert.AreEqual(allExpectedCounts[CP_A + "/" + labelValue.Label].GetValueOrDefault(), labelValue.Value); Assert.True((int)labelValue.Value <= prevValue, "wrong sort order of sub results: labelValue.value=" + labelValue.Value + " prevValue=" + prevValue); prevValue = (int)labelValue.Value; } result = facets.GetTopChildren(NUM_CHILDREN_CP_B, CP_B); - Assert.AreEqual(allExpectedCounts[CP_B], result.Value); + Assert.AreEqual(allExpectedCounts[CP_B].GetValueOrDefault(), result.Value); prevValue = int.MaxValue; foreach (LabelAndValue labelValue in result.LabelValues) { - Assert.AreEqual(allExpectedCounts[CP_B + "/" + labelValue.Label], labelValue.Value); + Assert.AreEqual(allExpectedCounts[CP_B + "/" + labelValue.Label].GetValueOrDefault(), labelValue.Value); Assert.True((int)labelValue.Value <= prevValue, "wrong sort order of sub results: labelValue.value=" + labelValue.Value + " prevValue=" + prevValue); prevValue = (int)labelValue.Value; } @@ -360,13 +360,13 @@ namespace Lucene.Net.Facet.Taxonomy Assert.AreEqual(-1, (int)result.Value); foreach (LabelAndValue labelValue in result.LabelValues) { - Assert.AreEqual(allExpectedCounts[CP_A + "/" + labelValue.Label], labelValue.Value); + Assert.AreEqual(allExpectedCounts[CP_A + "/" + labelValue.Label].GetValueOrDefault(), labelValue.Value); } result = facets.GetTopChildren(int.MaxValue, CP_B); - Assert.AreEqual(allExpectedCounts[CP_B], result.Value); + Assert.AreEqual(allExpectedCounts[CP_B].GetValueOrDefault(), result.Value); foreach (LabelAndValue labelValue in result.LabelValues) { - Assert.AreEqual(allExpectedCounts[CP_B + "/" + labelValue.Label], labelValue.Value); + Assert.AreEqual(allExpectedCounts[CP_B + "/" + labelValue.Label].GetValueOrDefault(), labelValue.Value); } IOUtils.Dispose(indexReader, taxoReader); @@ -385,16 +385,16 @@ namespace Lucene.Net.Facet.Taxonomy Facets facets = GetTaxonomyFacetCounts(taxoReader, Config, sfc); FacetResult result = facets.GetTopChildren(NUM_CHILDREN_CP_C, CP_C); - Assert.AreEqual(allExpectedCounts[CP_C], result.Value); + Assert.AreEqual(allExpectedCounts[CP_C].GetValueOrDefault(), result.Value); foreach (LabelAndValue labelValue in result.LabelValues) { - Assert.AreEqual(allExpectedCounts[CP_C + "/" + labelValue.Label], labelValue.Value); + Assert.AreEqual(allExpectedCounts[CP_C + "/" + labelValue.Label].GetValueOrDefault(), labelValue.Value); } result = facets.GetTopChildren(NUM_CHILDREN_CP_D, CP_D); - Assert.AreEqual(allExpectedCounts[CP_C], result.Value); + Assert.AreEqual(allExpectedCounts[CP_C].GetValueOrDefault(), result.Value); foreach (LabelAndValue labelValue in result.LabelValues) { - Assert.AreEqual(allExpectedCounts[CP_D + "/" + labelValue.Label], labelValue.Value); + Assert.AreEqual(allExpectedCounts[CP_D + "/" + labelValue.Label].GetValueOrDefault(), labelValue.Value); } IOUtils.Dispose(indexReader, taxoReader); diff --git a/src/Lucene.Net.Tests.Grouping/TestGrouping.cs b/src/Lucene.Net.Tests.Grouping/TestGrouping.cs index 3b06e52..8a0ec5e 100644 --- a/src/Lucene.Net.Tests.Grouping/TestGrouping.cs +++ b/src/Lucene.Net.Tests.Grouping/TestGrouping.cs @@ -317,13 +317,13 @@ namespace Lucene.Net.Search.Grouping if (group.GroupValue.GetType().IsAssignableFrom(typeof(BytesRef))) { - assertEquals(new BytesRef(expected), group.GroupValue); + assertEquals<object>(new BytesRef(expected), group.GroupValue); } else if (group.GroupValue.GetType().IsAssignableFrom(typeof(MutableValueStr))) { MutableValueStr v = new MutableValueStr(); v.Value = new BytesRef(expected); - assertEquals(v, group.GroupValue); + assertEquals<object>(v, group.GroupValue); } else { diff --git a/src/Lucene.Net.Tests.Replicator/SessionTokenTest.cs b/src/Lucene.Net.Tests.Replicator/SessionTokenTest.cs index 03d8448..c07b11b 100644 --- a/src/Lucene.Net.Tests.Replicator/SessionTokenTest.cs +++ b/src/Lucene.Net.Tests.Replicator/SessionTokenTest.cs @@ -51,7 +51,11 @@ namespace Lucene.Net.Replicator assertEquals(session1.Version, session2.Version); assertEquals(1, session2.SourceFiles.Count); assertEquals(session1.SourceFiles.Count, session2.SourceFiles.Count); - assertEquals(session1.SourceFiles.Keys, session2.SourceFiles.Keys); + + // LUCENENET: Collections don't compare automatically in .NET and J2N has no structural equality + // checking on Keys, so using CollectionAssert here. This is set + // equality (where order doesn't matter) because in Java the keys and values collections are sets. + CollectionAssert.AreEquivalent(session1.SourceFiles.Keys, session2.SourceFiles.Keys); IList<RevisionFile> files1 = session1.SourceFiles.Values.First(); IList<RevisionFile> files2 = session2.SourceFiles.Values.First(); assertEquals(files1, files2, aggressive: false); diff --git a/src/Lucene.Net.Tests.TestFramework/Support/TestApiConsistency.cs b/src/Lucene.Net.Tests.TestFramework/Support/TestApiConsistency.cs index 503aa6a..0a81377 100644 --- a/src/Lucene.Net.Tests.TestFramework/Support/TestApiConsistency.cs +++ b/src/Lucene.Net.Tests.TestFramework/Support/TestApiConsistency.cs @@ -39,7 +39,7 @@ namespace Lucene.Net.Tests.TestFramework [TestCase(typeof(Lucene.Net.RandomExtensions))] public override void TestPrivateFieldNames(Type typeFromTargetAssembly) { - base.TestPrivateFieldNames(typeFromTargetAssembly, @"ApiScanTestBase|TestUtil.MaxRecursionBound"); + base.TestPrivateFieldNames(typeFromTargetAssembly, @"ApiScanTestBase|TestUtil.MaxRecursionBound|Assert.FailureFormat"); } [Test, LuceneNetSpecific] diff --git a/src/Lucene.Net.Tests/Analysis/TokenAttributes/TestCharTermAttributeImpl.cs b/src/Lucene.Net.Tests/Analysis/TokenAttributes/TestCharTermAttributeImpl.cs index 8fdd621..1612f67 100644 --- a/src/Lucene.Net.Tests/Analysis/TokenAttributes/TestCharTermAttributeImpl.cs +++ b/src/Lucene.Net.Tests/Analysis/TokenAttributes/TestCharTermAttributeImpl.cs @@ -327,9 +327,9 @@ namespace Lucene.Net.Analysis.TokenAttributes // "01234567890123456789012345678901234567890123456789" Assert.AreEqual("0123456789012345678901234567890123456789012345678934567890123456789012345678901234567890123456789", t.ToString()); t.SetEmpty().Append(/*(ICharSequence)*/ new StringBuilder("01234567890123456789"), 5, 17 - 5); // LUCENENET: StringBuilder doesn't implement ICharSequence - Assert.AreEqual(new StringCharSequence("567890123456"), t.ToString()); + Assert.AreEqual((ICharSequence)new StringCharSequence("567890123456"), t /*.ToString()*/); t.Append(new StringBuilder(t.ToString())); - Assert.AreEqual(new StringCharSequence("567890123456567890123456"), t.ToString()); + Assert.AreEqual((ICharSequence)new StringCharSequence("567890123456567890123456"), t /*.ToString()*/); // very wierd, to test if a subSlice is wrapped correct :) //CharBuffer buf = CharBuffer.wrap("012345678901234567890123456789".ToCharArray(), 3, 15); // LUCENENET: No CharBuffer in .NET StringBuilder buf = new StringBuilder("012345678901234567890123456789", 3, 15, 16); diff --git a/src/Lucene.Net.Tests/Index/TestIndexWriterForceMerge.cs b/src/Lucene.Net.Tests/Index/TestIndexWriterForceMerge.cs index e388c66..df28691 100644 --- a/src/Lucene.Net.Tests/Index/TestIndexWriterForceMerge.cs +++ b/src/Lucene.Net.Tests/Index/TestIndexWriterForceMerge.cs @@ -38,6 +38,7 @@ namespace Lucene.Net.Index private static readonly FieldType storedTextType = new FieldType(TextField.TYPE_NOT_STORED); [Test] + [Slow] // Occasionally public virtual void TestPartialMerge() { Directory dir = NewDirectory(); diff --git a/src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs b/src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs index 2d01699..ecab235 100644 --- a/src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs +++ b/src/Lucene.Net.Tests/Util/Fst/TestFSTs.cs @@ -501,7 +501,7 @@ namespace Lucene.Net.Util.Fst dir.Dispose(); } - private void AssertSame<T1>(TermsEnum termsEnum, BytesRefFSTEnum<T1> fstEnum, bool storeOrd) + private void AssertSame(TermsEnum termsEnum, BytesRefFSTEnum<long?> fstEnum, bool storeOrd) // LUCENENET specific - changed to long? so we don't need a cast { if (termsEnum.Term == null) { diff --git a/src/Lucene.Net.Tests/Util/TestBytesRef.cs b/src/Lucene.Net.Tests/Util/TestBytesRef.cs index 93b9ba3..3da8ac5 100644 --- a/src/Lucene.Net.Tests/Util/TestBytesRef.cs +++ b/src/Lucene.Net.Tests/Util/TestBytesRef.cs @@ -69,7 +69,7 @@ namespace Lucene.Net.Util for (int i = 0; i < 100; i++) { ICharSequence s = new StringCharSequence(TestUtil.RandomUnicodeString(Random)); - string s2 = (new BytesRef(s)).Utf8ToString(); + ICharSequence s2 = (new BytesRef(s)).Utf8ToString().AsCharSequence(); Assert.AreEqual(s, s2); } diff --git a/src/Lucene.Net.Tests/Util/TestNumericUtils.cs b/src/Lucene.Net.Tests/Util/TestNumericUtils.cs index 9b1554e..f1d1d73 100644 --- a/src/Lucene.Net.Tests/Util/TestNumericUtils.cs +++ b/src/Lucene.Net.Tests/Util/TestNumericUtils.cs @@ -361,7 +361,6 @@ namespace Lucene.Net.Util } [Test] - [Slow] public virtual void TestRandomSplit() { long num = (long)AtLeast(10);
