diff --git a/Pipeline/Build.cs b/Pipeline/Build.cs index a07a0cc08..25356ef59 100644 --- a/Pipeline/Build.cs +++ b/Pipeline/Build.cs @@ -19,7 +19,7 @@ partial class Build : NukeBuild /// /// Afterward, you can update the package reference in `Directory.Packages.props` and reset this flag. /// - readonly BuildScope BuildScope = BuildScope.Default; + readonly BuildScope BuildScope = BuildScope.CoreOnly; [Parameter("Github Token")] readonly string GithubToken; diff --git a/Source/aweXpect.Core/Core/Helpers/ExceptionHelpers.cs b/Source/aweXpect.Core/Core/Helpers/ExceptionHelpers.cs index db14690ea..50aac87a5 100644 --- a/Source/aweXpect.Core/Core/Helpers/ExceptionHelpers.cs +++ b/Source/aweXpect.Core/Core/Helpers/ExceptionHelpers.cs @@ -11,4 +11,10 @@ public static TException LogTrace(this TException exception) Customize.aweXpect.TraceWriter.Value?.WriteException(exception); return exception; } + public static bool IsDefault(this T value) where T : struct + { + bool isDefault = value.Equals(default(T)); + + return isDefault; + } } diff --git a/Source/aweXpect.Core/Options/CollectionMatchOptions.AnyOrderCollectionMatcher.cs b/Source/aweXpect.Core/Options/CollectionMatchOptions.AnyOrderCollectionMatcher.cs index e52ed4ba2..54e31ccf6 100644 --- a/Source/aweXpect.Core/Options/CollectionMatchOptions.AnyOrderCollectionMatcher.cs +++ b/Source/aweXpect.Core/Options/CollectionMatchOptions.AnyOrderCollectionMatcher.cs @@ -57,7 +57,7 @@ public bool VerifyComplete(string it, IOptionsEquality options, int maximumN if (!_equivalenceRelations.HasFlag(EquivalenceRelations.IsContainedIn)) { - errors.AddRange(MissingItemsError(_totalExpectedCount, _missingItems, _equivalenceRelations)); + errors.AddRange(MissingItemsError(_totalExpectedCount, _missingItems, _equivalenceRelations, false)); } else if (_equivalenceRelations.HasFlag(EquivalenceRelations.IsContainedInProperly) && !_missingItems.Any()) { diff --git a/Source/aweXpect.Core/Options/CollectionMatchOptions.AnyOrderIgnoreDuplicatesCollectionMatcher.cs b/Source/aweXpect.Core/Options/CollectionMatchOptions.AnyOrderIgnoreDuplicatesCollectionMatcher.cs index 4d6b9ce9b..7d2169700 100644 --- a/Source/aweXpect.Core/Options/CollectionMatchOptions.AnyOrderIgnoreDuplicatesCollectionMatcher.cs +++ b/Source/aweXpect.Core/Options/CollectionMatchOptions.AnyOrderIgnoreDuplicatesCollectionMatcher.cs @@ -64,7 +64,7 @@ public bool VerifyComplete(string it, IOptionsEquality options, int maximumN if (!_equivalenceRelations.HasFlag(EquivalenceRelations.IsContainedIn)) { - errors.AddRange(MissingItemsError(_totalExpectedCount, _missingItems, _equivalenceRelations)); + errors.AddRange(MissingItemsError(_totalExpectedCount, _missingItems, _equivalenceRelations, true)); } else if (_equivalenceRelations.HasFlag(EquivalenceRelations.IsContainedInProperly) && !_missingItems.Any()) { diff --git a/Source/aweXpect.Core/Options/CollectionMatchOptions.SameOrderCollectionMatcher.cs b/Source/aweXpect.Core/Options/CollectionMatchOptions.SameOrderCollectionMatcher.cs index 2f32f296c..1d51f9a79 100644 --- a/Source/aweXpect.Core/Options/CollectionMatchOptions.SameOrderCollectionMatcher.cs +++ b/Source/aweXpect.Core/Options/CollectionMatchOptions.SameOrderCollectionMatcher.cs @@ -1,7 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Text.RegularExpressions; using aweXpect.Core; +using aweXpect.Core.Helpers; namespace aweXpect.Options; @@ -14,6 +16,7 @@ private sealed class SameOrderCollectionMatcher : ICollectionMatcher _foundItems = new(); + private readonly bool _ignoreInterspersedItems; private readonly Dictionary _incorrectItems = new(); private readonly List _matchingItems = new(); private readonly List _missingItems = new(); @@ -21,11 +24,14 @@ private sealed class SameOrderCollectionMatcher : ICollectionMatcher expected) + IEnumerable expected, + bool ignoreInterspersedItems) { _equivalenceRelations = equivalenceRelation; + _ignoreInterspersedItems = ignoreInterspersedItems; _expectedItems = expected.ToArray(); _totalExpectedItems = _expectedItems.Length; } @@ -43,6 +49,10 @@ public bool Verify(string it, T value, IOptionsEquality options, int maximum { VerifyTheCurrentValueIsEqualToTheExpectedValue(value); } + else if (_ignoreInterspersedItems) + { + _additionalItems.Add(_index, value); + } else { VerifyTheCurrentValueIsDifferentFromTheExpectedValue(value, options); @@ -56,14 +66,21 @@ public bool Verify(string it, T value, IOptionsEquality options, int maximum #pragma warning disable S3776 // https://rules.sonarsource.com/csharp/RSPEC-3776 public bool VerifyComplete(string it, IOptionsEquality options, int maximumNumber, out string? error) { - int consideredExpectedItems = Math.Max(_expectationIndex - 1, _matchIndex); + int consideredExpectedItems = Math.Max(_expectationIndex - 1, _maxMatchIndex); if (_expectedItems.Length > consideredExpectedItems) { for (int i = consideredExpectedItems; i < _expectedItems.Length; i++) { T item = _expectedItems[i]; - if (_additionalItems.All(x => !options.AreConsideredEqual(x.Value, item)) && - _incorrectItems.All(x => !options.AreConsideredEqual(x.Value.Item, item))) + KeyValuePair additionalItem = _additionalItems + .FirstOrDefault(a => options.AreConsideredEqual(a.Value, item)); + if (!additionalItem.IsDefault()) + { + _additionalItems.Remove(additionalItem.Key); + _missingItems.Add(additionalItem.Value); + } + else if (_additionalItems.All(x => !options.AreConsideredEqual(x.Value, item)) && + _incorrectItems.All(x => !options.AreConsideredEqual(x.Value.Item, item))) { _missingItems.Add(item); } @@ -96,7 +113,7 @@ public bool VerifyComplete(string it, IOptionsEquality options, int maximumN if (!_equivalenceRelations.HasFlag(EquivalenceRelations.IsContainedIn)) { - errors.AddRange(MissingItemsError(_totalExpectedItems, _missingItems, _equivalenceRelations)); + errors.AddRange(MissingItemsError(_totalExpectedItems, _missingItems, _equivalenceRelations, false)); } else if (_equivalenceRelations.HasFlag(EquivalenceRelations.IsContainedInProperly) && !_missingItems.Any()) { @@ -136,6 +153,7 @@ private void VerifyTheCurrentValueIsDifferentFromTheExpectedValue(T value, IOpti _matchingItems.Clear(); _matchIndex++; + _maxMatchIndex = Math.Max(_matchIndex, _maxMatchIndex); _expectationIndex = 0; _matchingItems.Add(value); } @@ -186,6 +204,7 @@ private bool SearchForMatchInFoundItems(T value, IOptionsEquality options) private void VerifyTheCurrentValueIsEqualToTheExpectedValue(T value) { _matchIndex++; + _maxMatchIndex = Math.Max(_matchIndex, _maxMatchIndex); _expectationIndex++; _matchingItems.Add(value); } diff --git a/Source/aweXpect.Core/Options/CollectionMatchOptions.SameOrderIgnoreDuplicatesCollectionMatcher.cs b/Source/aweXpect.Core/Options/CollectionMatchOptions.SameOrderIgnoreDuplicatesCollectionMatcher.cs index eb4c2e0b3..cec525713 100644 --- a/Source/aweXpect.Core/Options/CollectionMatchOptions.SameOrderIgnoreDuplicatesCollectionMatcher.cs +++ b/Source/aweXpect.Core/Options/CollectionMatchOptions.SameOrderIgnoreDuplicatesCollectionMatcher.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using aweXpect.Core; +using aweXpect.Core.Helpers; namespace aweXpect.Options; @@ -12,6 +13,7 @@ private sealed class SameOrderIgnoreDuplicatesCollectionMatcher : ICollec { private readonly Dictionary _additionalItems = new(); private readonly EquivalenceRelations _equivalenceRelations; + private readonly bool _ignoreInterspersedItems; private readonly T[] _expectedDistinctItems; private readonly List _foundItems = new(); private readonly Dictionary _incorrectItems = new(); @@ -22,11 +24,14 @@ private sealed class SameOrderIgnoreDuplicatesCollectionMatcher : ICollec private int _expectationIndex = -1; private int _index; private int _matchIndex; + private int _maxMatchIndex; public SameOrderIgnoreDuplicatesCollectionMatcher(EquivalenceRelations equivalenceRelation, - IEnumerable expected) + IEnumerable expected, + bool ignoreInterspersedItems) { _equivalenceRelations = equivalenceRelation; + _ignoreInterspersedItems = ignoreInterspersedItems; _expectedDistinctItems = expected.Distinct().ToArray(); _totalExpectedItems = _expectedDistinctItems.Length; } @@ -53,6 +58,15 @@ public bool Verify(string it, T value, IOptionsEquality options, int maximum { VerifyTheCurrentValueIsEqualToTheExpectedValue(value, options); } + else if (_ignoreInterspersedItems) + { + if (!_uniqueItems.Add(value)) + { + return false; + } + + _additionalItems.Add(_index, value); + } else { if (!_uniqueItems.Add(value)) @@ -73,13 +87,21 @@ public bool VerifyComplete(string it, IOptionsEquality options, int maximumN { int maximumNumberOfCollectionItems = maximumNumber; - foreach (T item in _expectedDistinctItems.Skip(Math.Max(_expectationIndex - 1, _matchIndex))) + foreach (T item in _expectedDistinctItems.Skip(Math.Max(_expectationIndex - 1, _maxMatchIndex))) { + KeyValuePair additionalItem = _additionalItems + .FirstOrDefault(a => options.AreConsideredEqual(a.Value, item)); + if (!additionalItem.IsDefault()) + { + _additionalItems.Remove(additionalItem.Key); + _missingItems.Add(additionalItem.Value); + } + if (!_uniqueItems.Add(item)) { continue; } - + if (_additionalItems.All(x => !options.AreConsideredEqual(x.Value, item)) && _incorrectItems.All(x => !options.AreConsideredEqual(x.Value.Item, item))) { @@ -116,7 +138,7 @@ public bool VerifyComplete(string it, IOptionsEquality options, int maximumN if (!_equivalenceRelations.HasFlag(EquivalenceRelations.IsContainedIn)) { - errors.AddRange(MissingItemsError(_totalExpectedItems, _missingItems, _equivalenceRelations)); + errors.AddRange(MissingItemsError(_totalExpectedItems, _missingItems, _equivalenceRelations, true)); } else if (_equivalenceRelations.HasFlag(EquivalenceRelations.IsContainedInProperly) && !_missingItems.Any()) { @@ -169,6 +191,7 @@ private void VerifyTheCurrentValueIsDifferentFromTheExpectedValue(T value, IOpti _matchingItems.Clear(); _matchIndex++; + _maxMatchIndex = Math.Max(_matchIndex, _maxMatchIndex); _expectationIndex = 0; _matchingItems.Add(value); } @@ -185,6 +208,7 @@ private void VerifyTheCurrentValueIsDifferentFromTheExpectedValue(T value, IOpti private void VerifyTheCurrentValueIsEqualToTheExpectedValue(T value, IOptionsEquality options) { _matchIndex++; + _maxMatchIndex = Math.Max(_matchIndex, _maxMatchIndex); _expectationIndex++; _matchingItems.Add(value); _uniqueItems.Add(value); diff --git a/Source/aweXpect.Core/Options/CollectionMatchOptions.cs b/Source/aweXpect.Core/Options/CollectionMatchOptions.cs index 1acddf374..1d12c1c05 100644 --- a/Source/aweXpect.Core/Options/CollectionMatchOptions.cs +++ b/Source/aweXpect.Core/Options/CollectionMatchOptions.cs @@ -50,6 +50,7 @@ public enum EquivalenceRelations private EquivalenceRelations _equivalenceRelations = equivalenceRelations; private bool _ignoringDuplicates; + private bool _ignoringInterspersedItems; private bool _inAnyOrder; /// @@ -68,6 +69,11 @@ public void SetEquivalenceRelation(EquivalenceRelations equivalenceRelation) /// public void IgnoringDuplicates() => _ignoringDuplicates = true; + /// + /// Ignores interspersed items in the actual collection. + /// + public void IgnoringInterspersedItems() => _ignoringInterspersedItems = true; + /// /// Get the collection matcher for the enumerable. /// @@ -77,23 +83,33 @@ public ICollectionMatcher GetCollectionMatcher(IEnumerable expe { (true, true) => new AnyOrderIgnoreDuplicatesCollectionMatcher(_equivalenceRelations, expected), (true, false) => new AnyOrderCollectionMatcher(_equivalenceRelations, expected), - (false, true) => new SameOrderIgnoreDuplicatesCollectionMatcher(_equivalenceRelations, expected), - (false, false) => new SameOrderCollectionMatcher(_equivalenceRelations, expected), + (false, true) => new SameOrderIgnoreDuplicatesCollectionMatcher(_equivalenceRelations, expected, + _ignoringInterspersedItems), + (false, false) => new SameOrderCollectionMatcher(_equivalenceRelations, expected, + _ignoringInterspersedItems), }; /// - /// Specifies the expectation for the using the provided . + /// Specifies the expectation for the using the provided + /// . /// public string GetExpectation(string expectedExpression, ExpectationGrammars grammars) - => (_inAnyOrder, _ignoringDuplicates) switch + => (_inAnyOrder, _ignoringDuplicates, _ignoringInterspersedItems) switch { - (true, true) => ToString(_equivalenceRelations, expectedExpression, grammars) + " in any order ignoring duplicates", - (true, false) => ToString(_equivalenceRelations, expectedExpression, grammars) + " in any order", - (false, true) => ToString(_equivalenceRelations, expectedExpression, grammars) + " in order ignoring duplicates", - (false, false) => ToString(_equivalenceRelations, expectedExpression, grammars) + " in order", + (true, true, _) => ToString(_equivalenceRelations, expectedExpression, grammars) + + " in any order ignoring duplicates", + (true, false, _) => ToString(_equivalenceRelations, expectedExpression, grammars) + " in any order", + (false, true, false) => ToString(_equivalenceRelations, expectedExpression, grammars) + + " in order ignoring duplicates", + (false, false, false) => ToString(_equivalenceRelations, expectedExpression, grammars) + " in order", + (false, true, true) => ToString(_equivalenceRelations, expectedExpression, grammars) + + " in order ignoring duplicates and interspersed items", + (false, false, true) => ToString(_equivalenceRelations, expectedExpression, grammars) + + " in order ignoring interspersed items", }; - private static string ToString(EquivalenceRelations equivalenceRelation, string expectedExpression, ExpectationGrammars grammars) + private static string ToString(EquivalenceRelations equivalenceRelation, string expectedExpression, + ExpectationGrammars grammars) => (equivalenceRelation, grammars.IsNegated()) switch { (EquivalenceRelations.Contains, false) @@ -166,9 +182,19 @@ private static IEnumerable IncorrectItemsError(Dictionary MissingItemsError(int total, List missingItems, - EquivalenceRelations equivalenceRelation) + EquivalenceRelations equivalenceRelation, bool ignoringDuplicates) { bool hasMissingItems = missingItems.Any(); + if (total == missingItems.Count) + { + yield return ignoringDuplicates switch + { + true => $"lacked all {total} unique expected items", + false => $"lacked all {total} expected items", + }; + yield break; + } + if (hasMissingItems && !equivalenceRelation.HasFlag(EquivalenceRelations.IsContainedIn)) { if (missingItems.Count == 1) diff --git a/Source/aweXpect/Results/ObjectCollectionMatchResult.cs b/Source/aweXpect/Results/ObjectCollectionMatchResult.cs index eacc3033e..4b881e107 100644 --- a/Source/aweXpect/Results/ObjectCollectionMatchResult.cs +++ b/Source/aweXpect/Results/ObjectCollectionMatchResult.cs @@ -52,4 +52,16 @@ public TSelf IgnoringDuplicates() collectionMatchOptions.IgnoringDuplicates(); return (TSelf)this; } + + /// + /// Ignores interspersed items in the actual collection. + /// + /// + /// This option has no effect when is used. + /// + public TSelf IgnoringInterspersedItems() + { + collectionMatchOptions.IgnoringInterspersedItems(); + return (TSelf)this; + } } diff --git a/Source/aweXpect/Results/StringCollectionMatchResult.cs b/Source/aweXpect/Results/StringCollectionMatchResult.cs index 1b7ed2d45..87ce63922 100644 --- a/Source/aweXpect/Results/StringCollectionMatchResult.cs +++ b/Source/aweXpect/Results/StringCollectionMatchResult.cs @@ -52,4 +52,16 @@ public TSelf IgnoringDuplicates() collectionMatchOptions.IgnoringDuplicates(); return (TSelf)this; } + + /// + /// Ignores interspersed items in the actual collection. + /// + /// + /// This option has no effect when is used. + /// + public TSelf IgnoringInterspersedItems() + { + collectionMatchOptions.IgnoringInterspersedItems(); + return (TSelf)this; + } } diff --git a/Tests/aweXpect.Api.Tests/Expected/aweXpect_net8.0.txt b/Tests/aweXpect.Api.Tests/Expected/aweXpect_net8.0.txt index 193375b28..d92c552c5 100644 --- a/Tests/aweXpect.Api.Tests/Expected/aweXpect_net8.0.txt +++ b/Tests/aweXpect.Api.Tests/Expected/aweXpect_net8.0.txt @@ -1246,6 +1246,7 @@ namespace aweXpect.Results { public ObjectCollectionMatchResult(aweXpect.Core.ExpectationBuilder expectationBuilder, TThat returnValue, aweXpect.Options.ObjectEqualityOptions options, aweXpect.Options.CollectionMatchOptions collectionMatchOptions) { } public TSelf IgnoringDuplicates() { } + public TSelf IgnoringInterspersedItems() { } public TSelf InAnyOrder() { } } public class ObjectCollectionMatchWithToleranceResult : aweXpect.Results.ObjectCollectionMatchResult @@ -1328,6 +1329,7 @@ namespace aweXpect.Results { public StringCollectionMatchResult(aweXpect.Core.ExpectationBuilder expectationBuilder, TThat returnValue, aweXpect.Options.StringEqualityOptions options, aweXpect.Options.CollectionMatchOptions collectionMatchOptions) { } public TSelf IgnoringDuplicates() { } + public TSelf IgnoringInterspersedItems() { } public TSelf InAnyOrder() { } } } \ No newline at end of file diff --git a/Tests/aweXpect.Api.Tests/Expected/aweXpect_netstandard2.0.txt b/Tests/aweXpect.Api.Tests/Expected/aweXpect_netstandard2.0.txt index 4ff3cf2fd..cde40b326 100644 --- a/Tests/aweXpect.Api.Tests/Expected/aweXpect_netstandard2.0.txt +++ b/Tests/aweXpect.Api.Tests/Expected/aweXpect_netstandard2.0.txt @@ -1229,6 +1229,7 @@ namespace aweXpect.Results { public ObjectCollectionMatchResult(aweXpect.Core.ExpectationBuilder expectationBuilder, TThat returnValue, aweXpect.Options.ObjectEqualityOptions options, aweXpect.Options.CollectionMatchOptions collectionMatchOptions) { } public TSelf IgnoringDuplicates() { } + public TSelf IgnoringInterspersedItems() { } public TSelf InAnyOrder() { } } public class ObjectCollectionMatchWithToleranceResult : aweXpect.Results.ObjectCollectionMatchResult @@ -1311,6 +1312,7 @@ namespace aweXpect.Results { public StringCollectionMatchResult(aweXpect.Core.ExpectationBuilder expectationBuilder, TThat returnValue, aweXpect.Options.StringEqualityOptions options, aweXpect.Options.CollectionMatchOptions collectionMatchOptions) { } public TSelf IgnoringDuplicates() { } + public TSelf IgnoringInterspersedItems() { } public TSelf InAnyOrder() { } } } \ No newline at end of file diff --git a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net8.0.txt b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net8.0.txt index 3c881816a..04751646d 100644 --- a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net8.0.txt +++ b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net8.0.txt @@ -747,6 +747,7 @@ namespace aweXpect.Options where T : T2 { } public string GetExpectation(string expectedExpression, aweXpect.Core.ExpectationGrammars grammars) { } public void IgnoringDuplicates() { } + public void IgnoringInterspersedItems() { } public void InAnyOrder() { } public void SetEquivalenceRelation(aweXpect.Options.CollectionMatchOptions.EquivalenceRelations equivalenceRelation) { } [System.Flags] diff --git a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_netstandard2.0.txt b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_netstandard2.0.txt index 49de41382..0ab2efa3d 100644 --- a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_netstandard2.0.txt +++ b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_netstandard2.0.txt @@ -730,6 +730,7 @@ namespace aweXpect.Options where T : T2 { } public string GetExpectation(string expectedExpression, aweXpect.Core.ExpectationGrammars grammars) { } public void IgnoringDuplicates() { } + public void IgnoringInterspersedItems() { } public void InAnyOrder() { } public void SetEquivalenceRelation(aweXpect.Options.CollectionMatchOptions.EquivalenceRelations equivalenceRelation) { } [System.Flags] diff --git a/Tests/aweXpect.Tests/Collections/ThatAsyncEnumerable.Contains.CollectionTests.cs b/Tests/aweXpect.Tests/Collections/ThatAsyncEnumerable.Contains.CollectionTests.cs index 4b9436901..545e9b755 100644 --- a/Tests/aweXpect.Tests/Collections/ThatAsyncEnumerable.Contains.CollectionTests.cs +++ b/Tests/aweXpect.Tests/Collections/ThatAsyncEnumerable.Contains.CollectionTests.cs @@ -72,11 +72,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -102,18 +99,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -232,10 +219,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 2 of 6 expected items: - "a", - "e" - + but it lacked all 6 expected items + Collection: [ "b", @@ -558,11 +543,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -588,10 +570,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -617,18 +597,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -714,10 +684,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 2 of 5 expected items: - "a", - "e" - + but it lacked all 5 unique expected items + Collection: [ "b", @@ -997,11 +965,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -1027,18 +992,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -1423,11 +1378,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -1455,10 +1407,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -1484,18 +1434,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -1842,11 +1782,8 @@ Expected that subject contains collection expected and at least one additional item in order, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 expected items + Collection: [] @@ -1872,18 +1809,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -1970,10 +1897,10 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order, - but it lacked 2 of 6 expected items: - "a", - "e" - + but it + did not contain any additional items and + lacked all 6 expected items + Collection: [ "b", @@ -2325,11 +2252,8 @@ Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 unique expected items + Collection: [] @@ -2357,10 +2281,8 @@ Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, but it did not contain any additional items and - lacked 2 of 2 expected items: - "a", - "b" - + lacked all 2 unique expected items + Collection: [] @@ -2386,18 +2308,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -2483,10 +2395,10 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, - but it lacked 2 of 5 expected items: - "a", - "e" - + but it + did not contain any additional items and + lacked all 5 unique expected items + Collection: [ "b", @@ -2892,11 +2804,8 @@ Expected that subject contains collection expected and at least one additional item in any order, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 expected items + Collection: [] @@ -2922,18 +2831,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in any order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -3368,11 +3267,8 @@ Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 unique expected items + Collection: [] @@ -3402,10 +3298,8 @@ Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, but it did not contain any additional items and - lacked 2 of 2 expected items: - "a", - "b" - + lacked all 2 unique expected items + Collection: [] @@ -3431,18 +3325,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, diff --git a/Tests/aweXpect.Tests/Collections/ThatAsyncEnumerable.IsEqualTo.Tests.cs b/Tests/aweXpect.Tests/Collections/ThatAsyncEnumerable.IsEqualTo.Tests.cs index 8074a40f1..e739301a7 100644 --- a/Tests/aweXpect.Tests/Collections/ThatAsyncEnumerable.IsEqualTo.Tests.cs +++ b/Tests/aweXpect.Tests/Collections/ThatAsyncEnumerable.IsEqualTo.Tests.cs @@ -106,11 +106,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -147,18 +144,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 expected items + Collection: [ 1, @@ -683,11 +670,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -713,10 +697,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -753,18 +735,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 unique expected items + Collection: [ 1, @@ -1173,11 +1145,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -1214,18 +1183,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 expected items + Collection: [ 1, @@ -1713,11 +1672,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -1745,10 +1701,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -1785,18 +1739,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 unique expected items + Collection: [ 1, diff --git a/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionEnumerableTests.cs b/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionEnumerableTests.cs index 8b824e055..2c758a838 100644 --- a/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionEnumerableTests.cs +++ b/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionEnumerableTests.cs @@ -72,11 +72,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -102,18 +99,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -232,10 +219,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 2 of 6 expected items: - "a", - "e" - + but it lacked all 6 expected items + Collection: [ "b", @@ -559,11 +544,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -589,10 +571,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -618,18 +598,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -715,10 +685,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 2 of 5 expected items: - "a", - "e" - + but it lacked all 5 unique expected items + Collection: [ "b", @@ -998,11 +966,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -1028,18 +993,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -1425,11 +1380,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -1457,10 +1409,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -1486,18 +1436,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -1844,11 +1784,8 @@ Expected that subject contains collection expected and at least one additional item in order, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 expected items + Collection: [] @@ -1874,18 +1811,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -1972,10 +1899,10 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order, - but it lacked 2 of 6 expected items: - "a", - "e" - + but it + did not contain any additional items and + lacked all 6 expected items + Collection: [ "b", @@ -2328,11 +2255,8 @@ Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 unique expected items + Collection: [] @@ -2360,10 +2284,8 @@ Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, but it did not contain any additional items and - lacked 2 of 2 expected items: - "a", - "b" - + lacked all 2 unique expected items + Collection: [] @@ -2389,18 +2311,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -2486,10 +2398,10 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, - but it lacked 2 of 5 expected items: - "a", - "e" - + but it + did not contain any additional items and + lacked all 5 unique expected items + Collection: [ "b", @@ -2895,11 +2807,8 @@ Expected that subject contains collection expected and at least one additional item in any order, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 expected items + Collection: [] @@ -2925,18 +2834,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in any order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -3372,11 +3271,8 @@ Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 unique expected items + Collection: [] @@ -3406,10 +3302,8 @@ Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, but it did not contain any additional items and - lacked 2 of 2 expected items: - "a", - "b" - + lacked all 2 unique expected items + Collection: [] @@ -3435,18 +3329,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, diff --git a/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionImmutableTests.cs b/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionImmutableTests.cs index eecde641c..20efb0b9e 100644 --- a/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionImmutableTests.cs +++ b/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionImmutableTests.cs @@ -73,11 +73,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -103,18 +100,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -233,10 +220,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 2 of 6 expected items: - "a", - "e" - + but it lacked all 6 expected items + Collection: [ "b", @@ -560,11 +545,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -590,10 +572,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -619,18 +599,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -716,10 +686,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 2 of 5 expected items: - "a", - "e" - + but it lacked all 5 unique expected items + Collection: [ "b", @@ -999,11 +967,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -1029,18 +994,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -1426,11 +1381,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -1458,10 +1410,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -1487,18 +1437,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -1845,11 +1785,8 @@ Expected that subject contains collection expected and at least one additional item in order, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 expected items + Collection: [] @@ -1875,18 +1812,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -1973,10 +1900,10 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order, - but it lacked 2 of 6 expected items: - "a", - "e" - + but it + did not contain any additional items and + lacked all 6 expected items + Collection: [ "b", @@ -2329,11 +2256,8 @@ Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 unique expected items + Collection: [] @@ -2361,10 +2285,8 @@ Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, but it did not contain any additional items and - lacked 2 of 2 expected items: - "a", - "b" - + lacked all 2 unique expected items + Collection: [] @@ -2390,18 +2312,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -2487,10 +2399,10 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, - but it lacked 2 of 5 expected items: - "a", - "e" - + but it + did not contain any additional items and + lacked all 5 unique expected items + Collection: [ "b", @@ -2896,11 +2808,8 @@ Expected that subject contains collection expected and at least one additional item in any order, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 expected items + Collection: [] @@ -2926,18 +2835,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in any order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 expected items + Collection: [ 1, @@ -3373,11 +3272,8 @@ Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" - + lacked all 3 unique expected items + Collection: [] @@ -3407,10 +3303,8 @@ Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, but it did not contain any additional items and - lacked 2 of 2 expected items: - "a", - "b" - + lacked all 2 unique expected items + Collection: [] @@ -3436,18 +3330,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + but it lacked all 10 unique expected items + Collection: [ 1, @@ -3890,8 +3774,8 @@ await That(Act).Throws().OnlyIf(!expectSuccess) .WithMessage($$""" Expected that subject contains collection [regex,] in order as regex, - but it lacked 1 of 1 expected items: "{{regex}}" - + but it lacked all 1 expected items + Collection: [ "foo", @@ -3920,8 +3804,8 @@ await That(Act).Throws().OnlyIf(!expectSuccess) .WithMessage($""" Expected that subject contains collection [wildcard,] in order as wildcard, - but it lacked 1 of 1 expected items: "{wildcard}" - + but it lacked all 1 expected items + Collection: [ "foo", @@ -3950,8 +3834,8 @@ await That(Act).Throws().OnlyIf(!expectSuccess) .WithMessage($""" Expected that subject contains collection [match,] in order, - but it lacked 1 of 1 expected items: "{match}" - + but it lacked all 1 expected items + Collection: [ "foo", @@ -3980,8 +3864,8 @@ await That(Act).Throws().OnlyIf(!expectSuccess) .WithMessage($""" Expected that subject contains collection [match,] in order ignoring case, - but it lacked 1 of 1 expected items: "{match}" - + but it lacked all 1 expected items + Collection: [ "foo", diff --git a/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionTests.cs b/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionTests.cs index 0a6a09a94..98274e059 100644 --- a/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionTests.cs +++ b/Tests/aweXpect.Tests/Collections/ThatEnumerable.Contains.CollectionTests.cs @@ -71,10 +71,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" + but it lacked all 3 expected items Collection: [] @@ -101,17 +98,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 + but it lacked all 10 expected items Collection: [ @@ -159,10 +146,10 @@ Expected that collection but it contained item 3 at index 3 instead of 1 and contained item 12 at index 4 instead of 2 - + Collection: [1, 2, 1, 3, 12, 2, 2] - + Expected: [1, 2, 1, 1, 2] """); @@ -221,7 +208,7 @@ contained item "e" at index 4 instead of "y" and "x", "y", "z" - + Collection: [ "a", @@ -256,9 +243,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order, - but it lacked 2 of 6 expected items: - "a", - "e" + but it lacked all 6 expected items Collection: [ @@ -440,6 +425,36 @@ async Task Act() await That(Act).DoesNotThrow(); } + [Fact] + public async Task WithItemsInDifferentOrder_ShouldFail() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["c", "a",]; + + async Task Act() + => await That(subject).Contains(expected); + + await That(Act).Throws() + .WithMessage(""" + Expected that subject + contains collection expected in order, + but it lacked 1 of 2 expected items: "a" + + Collection: + [ + "a", + "b", + "c" + ] + + Expected: + [ + "c", + "a" + ] + """); + } + [Fact] public async Task WithMissingItem_ShouldFail() { @@ -507,7 +522,6 @@ Expected that subject """); } - [Fact] public async Task WithSameCollection_ShouldSucceed() { @@ -583,10 +597,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" + but it lacked all 3 unique expected items Collection: [] @@ -613,9 +624,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" + but it lacked all 2 unique expected items Collection: [] @@ -642,17 +651,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 + but it lacked all 10 unique expected items Collection: [ @@ -704,7 +703,7 @@ contained item "e" at index 4 instead of "y" and "x", "y", "z" - + Collection: [ "a", @@ -739,9 +738,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in order ignoring duplicates, - but it lacked 2 of 5 expected items: - "a", - "e" + but it lacked all 5 unique expected items Collection: [ @@ -880,6 +877,36 @@ async Task Act() await That(Act).DoesNotThrow(); } + [Fact] + public async Task WithItemsInDifferentOrder_ShouldFail() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["c", "a",]; + + async Task Act() + => await That(subject).Contains(expected).IgnoringDuplicates(); + + await That(Act).Throws() + .WithMessage(""" + Expected that subject + contains collection expected in order ignoring duplicates, + but it lacked 1 of 2 expected items: "a" + + Collection: + [ + "a", + "b", + "c" + ] + + Expected: + [ + "c", + "a" + ] + """); + } + [Fact] public async Task WithMissingItem_ShouldFail() { @@ -1022,10 +1049,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" + but it lacked all 3 expected items Collection: [] @@ -1052,17 +1076,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 + but it lacked all 10 expected items Collection: [ @@ -1449,10 +1463,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" + but it lacked all 3 unique expected items Collection: [] @@ -1481,9 +1492,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" + but it lacked all 2 unique expected items Collection: [] @@ -1510,17 +1519,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected in any order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 + but it lacked all 10 unique expected items Collection: [ @@ -1868,10 +1867,7 @@ Expected that subject contains collection expected and at least one additional item in order, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" + lacked all 3 expected items Collection: [] @@ -1898,17 +1894,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 + but it lacked all 10 expected items Collection: [ @@ -1996,9 +1982,9 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order, - but it lacked 2 of 6 expected items: - "a", - "e" + but it + did not contain any additional items and + lacked all 6 expected items Collection: [ @@ -2352,10 +2338,7 @@ Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" + lacked all 3 unique expected items Collection: [] @@ -2384,9 +2367,7 @@ Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, but it did not contain any additional items and - lacked 2 of 2 expected items: - "a", - "b" + lacked all 2 unique expected items Collection: [] @@ -2413,17 +2394,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 + but it lacked all 10 unique expected items Collection: [ @@ -2510,9 +2481,9 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in order ignoring duplicates, - but it lacked 2 of 5 expected items: - "a", - "e" + but it + did not contain any additional items and + lacked all 5 unique expected items Collection: [ @@ -2919,10 +2890,7 @@ Expected that subject contains collection expected and at least one additional item in any order, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" + lacked all 3 expected items Collection: [] @@ -2949,17 +2917,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in any order, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 + but it lacked all 10 expected items Collection: [ @@ -3396,10 +3354,7 @@ Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, but it did not contain any additional items and - lacked 3 of 3 expected items: - "a", - "b", - "c" + lacked all 3 unique expected items Collection: [] @@ -3430,9 +3385,7 @@ Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, but it did not contain any additional items and - lacked 2 of 2 expected items: - "a", - "b" + lacked all 2 unique expected items Collection: [] @@ -3459,17 +3412,7 @@ await That(Act).Throws() .WithMessage(""" Expected that subject contains collection expected and at least one additional item in any order ignoring duplicates, - but it lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 + but it lacked all 10 unique expected items Collection: [ @@ -3910,23 +3853,23 @@ async Task Act() => await That(subject).Contains([regex,]).AsRegex(); await That(Act).Throws().OnlyIf(!expectSuccess) - .WithMessage($$""" - Expected that subject - contains collection [regex,] in order as regex, - but it lacked 1 of 1 expected items: "{{regex}}" + .WithMessage(""" + Expected that subject + contains collection [regex,] in order as regex, + but it lacked all 1 expected items - Collection: - [ - "foo", - "bar", - "baz" - ] + Collection: + [ + "foo", + "bar", + "baz" + ] - Expected: - [ - "[g-h]{1}[o]*" - ] - """); + Expected: + [ + "[g-h]{1}[o]*" + ] + """); } [Theory] @@ -3940,23 +3883,23 @@ async Task Act() => await That(subject).Contains([wildcard,]).AsWildcard(); await That(Act).Throws().OnlyIf(!expectSuccess) - .WithMessage($""" - Expected that subject - contains collection [wildcard,] in order as wildcard, - but it lacked 1 of 1 expected items: "{wildcard}" + .WithMessage(""" + Expected that subject + contains collection [wildcard,] in order as wildcard, + but it lacked all 1 expected items - Collection: - [ - "foo", - "bar", - "baz" - ] + Collection: + [ + "foo", + "bar", + "baz" + ] - Expected: - [ - "f??o" - ] - """); + Expected: + [ + "f??o" + ] + """); } [Theory] @@ -3970,23 +3913,23 @@ async Task Act() => await That(subject).Contains([match,]).AsWildcard().Exactly(); await That(Act).Throws().OnlyIf(!expectSuccess) - .WithMessage($""" - Expected that subject - contains collection [match,] in order, - but it lacked 1 of 1 expected items: "{match}" + .WithMessage(""" + Expected that subject + contains collection [match,] in order, + but it lacked all 1 expected items - Collection: - [ - "foo", - "bar", - "baz" - ] + Collection: + [ + "foo", + "bar", + "baz" + ] - Expected: - [ - "*oo" - ] - """); + Expected: + [ + "*oo" + ] + """); } [Theory] @@ -4000,23 +3943,289 @@ async Task Act() => await That(subject).Contains([match,]).IgnoringCase(); await That(Act).Throws().OnlyIf(!expectSuccess) - .WithMessage($""" - Expected that subject - contains collection [match,] in order ignoring case, - but it lacked 1 of 1 expected items: "{match}" - - Collection: - [ - "foo", - "bar", - "baz" - ] - - Expected: - [ - "goo" - ] - """); + .WithMessage(""" + Expected that subject + contains collection [match,] in order ignoring case, + but it lacked all 1 expected items + + Collection: + [ + "foo", + "bar", + "baz" + ] + + Expected: + [ + "goo" + ] + """); + } + } + + public sealed class InSameOrderIgnoringInterspersedItemsTests + { + [Fact] + public async Task WithInterspersedItems_ShouldSucceed() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["a", "c",]; + + async Task Act() + => await That(subject).Contains(expected).IgnoringInterspersedItems(); + + await That(Act).DoesNotThrow(); + } + + [Fact] + public async Task WithInterspersedItemsInDifferentOrder_ShouldFail() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["b", "a",]; + + async Task Act() + => await That(subject).Contains(expected).IgnoringInterspersedItems(); + + await That(Act).Throws() + .WithMessage(""" + Expected that subject + contains collection expected in order ignoring interspersed items, + but it lacked 1 of 2 expected items: "a" + + Collection: + [ + "a", + "b", + "c" + ] + + Expected: + [ + "b", + "a" + ] + """); + } + + [Fact] + public async Task WithSameCollection_ShouldSucceed() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["a", "b", "c",]; + + async Task Act() + => await That(subject).Contains(expected).IgnoringInterspersedItems(); + + await That(Act).DoesNotThrow(); + } + } + + public sealed class InSameOrderIgnoringDuplicatesAndInterspersedItemsTests + { + [Fact] + public async Task WithInterspersedItems_ShouldSucceed() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["a", "c",]; + + async Task Act() + => await That(subject).Contains(expected).IgnoringDuplicates().IgnoringInterspersedItems(); + + await That(Act).DoesNotThrow(); + } + + [Fact] + public async Task WithInterspersedItemsInDifferentOrder_ShouldFail() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["b", "a",]; + + async Task Act() + => await That(subject).Contains(expected).IgnoringInterspersedItems().IgnoringDuplicates(); + + await That(Act).Throws() + .WithMessage(""" + Expected that subject + contains collection expected in order ignoring duplicates and interspersed items, + but it lacked 1 of 2 expected items: "a" + + Collection: + [ + "a", + "b", + "c" + ] + + Expected: + [ + "b", + "a" + ] + """); + } + + [Fact] + public async Task WithSameCollection_ShouldSucceed() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["a", "b", "c",]; + + async Task Act() + => await That(subject).Contains(expected).IgnoringDuplicates().IgnoringInterspersedItems(); + + await That(Act).DoesNotThrow(); + } + } + + public sealed class ProperlyInSameOrderIgnoringInterspersedItemsTests + { + [Fact] + public async Task WithInterspersedItems_ShouldSucceed() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["a", "c",]; + + async Task Act() + => await That(subject).Contains(expected).Properly().IgnoringInterspersedItems(); + + await That(Act).DoesNotThrow(); + } + + [Fact] + public async Task WithInterspersedItemsInDifferentOrder_ShouldFail() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["b", "a",]; + + async Task Act() + => await That(subject).Contains(expected).Properly().IgnoringInterspersedItems(); + + await That(Act).Throws() + .WithMessage(""" + Expected that subject + contains collection expected and at least one additional item in order ignoring interspersed items, + but it lacked 1 of 2 expected items: "a" + + Collection: + [ + "a", + "b", + "c" + ] + + Expected: + [ + "b", + "a" + ] + """); + } + + [Fact] + public async Task WithSameCollection_ShouldFail() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["a", "b", "c",]; + + async Task Act() + => await That(subject).Contains(expected).Properly().IgnoringInterspersedItems(); + + await That(Act).Throws() + .WithMessage(""" + Expected that subject + contains collection expected and at least one additional item in order ignoring interspersed items, + but it did not contain any additional items + + Collection: + [ + "a", + "b", + "c" + ] + + Expected: + [ + "a", + "b", + "c" + ] + """); + } + } + + public sealed class ProperlyInSameOrderIgnoringDuplicatesAndInterspersedItemsTests + { + [Fact] + public async Task WithInterspersedItems_ShouldSucceed() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["a", "c",]; + + async Task Act() + => await That(subject).Contains(expected).Properly().IgnoringDuplicates().IgnoringInterspersedItems(); + + await That(Act).DoesNotThrow(); + } + + [Fact] + public async Task WithInterspersedItemsInDifferentOrder_ShouldFail() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["b", "a",]; + + async Task Act() + => await That(subject).Contains(expected).Properly().IgnoringInterspersedItems().IgnoringDuplicates(); + + await That(Act).Throws() + .WithMessage(""" + Expected that subject + contains collection expected and at least one additional item in order ignoring duplicates and interspersed items, + but it lacked 1 of 2 expected items: "a" + + Collection: + [ + "a", + "b", + "c" + ] + + Expected: + [ + "b", + "a" + ] + """); + } + + [Fact] + public async Task WithSameCollection_ShouldFail() + { + IEnumerable subject = ToEnumerable(["a", "b", "c",]); + string[] expected = ["a", "b", "c",]; + + async Task Act() + => await That(subject).Contains(expected).Properly().IgnoringDuplicates().IgnoringInterspersedItems(); + + await That(Act).Throws() + .WithMessage(""" + Expected that subject + contains collection expected and at least one additional item in order ignoring duplicates and interspersed items, + but it did not contain any additional items + + Collection: + [ + "a", + "b", + "c" + ] + + Expected: + [ + "a", + "b", + "c" + ] + """); } } } diff --git a/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.EnumerableTests.cs b/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.EnumerableTests.cs index 4d358d74a..0bdbf98f4 100644 --- a/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.EnumerableTests.cs +++ b/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.EnumerableTests.cs @@ -107,11 +107,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -148,18 +145,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 expected items + Collection: [ 1, @@ -685,11 +672,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -715,10 +699,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -755,18 +737,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 unique expected items + Collection: [ 1, @@ -1163,11 +1135,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -1204,18 +1173,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 expected items + Collection: [ 1, @@ -1673,11 +1632,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -1705,10 +1661,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -1745,18 +1699,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 unique expected items + Collection: [ 1, diff --git a/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.ImmutableTests.cs b/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.ImmutableTests.cs index ac4580dcd..21668d7b1 100644 --- a/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.ImmutableTests.cs +++ b/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.ImmutableTests.cs @@ -108,11 +108,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -149,18 +146,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 expected items + Collection: [ 1, @@ -686,11 +673,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -716,10 +700,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -756,18 +738,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 unique expected items + Collection: [ 1, @@ -1164,11 +1136,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -1205,18 +1174,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 expected items + Collection: [ 1, @@ -1674,11 +1633,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -1706,10 +1662,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -1746,18 +1700,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 unique expected items + Collection: [ 1, diff --git a/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.Tests.cs b/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.Tests.cs index 7faa4c702..9fdbb15b0 100644 --- a/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.Tests.cs +++ b/Tests/aweXpect.Tests/Collections/ThatEnumerable.IsEqualTo.Tests.cs @@ -106,11 +106,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -147,18 +144,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 expected items + Collection: [ 1, @@ -684,11 +671,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -714,10 +698,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -754,18 +736,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 unique expected items + Collection: [ 1, @@ -1162,11 +1134,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 expected items + Collection: [] @@ -1203,18 +1172,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 expected items + Collection: [ 1, @@ -1672,11 +1631,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order ignoring duplicates, - but it lacked 3 of 3 expected items: - "a", - "b", - "c" - + but it lacked all 3 unique expected items + Collection: [] @@ -1704,10 +1660,8 @@ await That(Act).Throws() .WithMessage(""" Expected that subject matches collection expected in any order ignoring duplicates, - but it lacked 2 of 2 expected items: - "a", - "b" - + but it lacked all 2 unique expected items + Collection: [] @@ -1744,18 +1698,8 @@ contained item 7 at index 6 that was not expected and contained item 8 at index 7 that was not expected and contained item 9 at index 8 that was not expected and contained item 10 at index 9 that was not expected and - lacked 10 of 10 expected items: - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110 - + lacked all 10 unique expected items + Collection: [ 1,