public void SequenceEqualEmptyDefault() { Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.SequenceEqual(oneElement, emptyDefault)); Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.SequenceEqual(emptyDefault, empty)); Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.SequenceEqual(emptyDefault, emptyDefault)); Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.SequenceEqual(emptyDefault, emptyDefault, (Func <int, int, bool>)null)); }
public void SequenceEqualEmptyDefault() { TestExtensionsMethods.ValidateDefaultThisBehavior(() => ImmutableArrayExtensions.SequenceEqual(s_oneElement, s_emptyDefault)); TestExtensionsMethods.ValidateDefaultThisBehavior(() => ImmutableArrayExtensions.SequenceEqual(s_emptyDefault, s_empty)); TestExtensionsMethods.ValidateDefaultThisBehavior(() => ImmutableArrayExtensions.SequenceEqual(s_emptyDefault, s_emptyDefault)); AssertExtensions.Throws <ArgumentNullException>("predicate", () => ImmutableArrayExtensions.SequenceEqual(s_emptyDefault, s_emptyDefault, (Func <int, int, bool>)null)); }
public void SequenceEqual() { Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.SequenceEqual(oneElement, (IEnumerable <int>)null)); foreach (IEqualityComparer <int> comparer in new[] { null, EqualityComparer <int> .Default }) { Assert.True(ImmutableArrayExtensions.SequenceEqual(manyElements, manyElements, comparer)); Assert.True(ImmutableArrayExtensions.SequenceEqual(manyElements, (IEnumerable <int>)manyElements.ToArray(), comparer)); Assert.True(ImmutableArrayExtensions.SequenceEqual(manyElements, ImmutableArray.Create(manyElements.ToArray()), comparer)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements, oneElement, comparer)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements, (IEnumerable <int>)oneElement.ToArray(), comparer)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements, ImmutableArray.Create(oneElement.ToArray()), comparer)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements, (IEnumerable <int>)manyElements.Add(1).ToArray(), comparer)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements.Add(1), manyElements.Add(2).ToArray(), comparer)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements.Add(1), (IEnumerable <int>)manyElements.Add(2).ToArray(), comparer)); } Assert.True(ImmutableArrayExtensions.SequenceEqual(manyElements, manyElements, (a, b) => true)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements, oneElement, (a, b) => a == b)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements.Add(1), manyElements.Add(2), (a, b) => a == b)); Assert.True(ImmutableArrayExtensions.SequenceEqual(manyElements.Add(1), manyElements.Add(1), (a, b) => a == b)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements, ImmutableArray.Create(manyElements.ToArray()), (a, b) => false)); Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.SequenceEqual(oneElement, oneElement, (Func <int, int, bool>)null)); }
public void SequenceEqualEmpty() { Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.SequenceEqual(empty, (IEnumerable <int>)null)); Assert.True(ImmutableArrayExtensions.SequenceEqual(empty, empty)); Assert.True(ImmutableArrayExtensions.SequenceEqual(empty, empty.ToArray())); Assert.True(ImmutableArrayExtensions.SequenceEqual(empty, empty, (a, b) => true)); Assert.True(ImmutableArrayExtensions.SequenceEqual(empty, empty, (a, b) => false)); }
public void SequenceEqual() { Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.SequenceEqual(oneElement, (IEnumerable <int>)null)); Assert.True(ImmutableArrayExtensions.SequenceEqual(manyElements, manyElements)); Assert.True(ImmutableArrayExtensions.SequenceEqual(manyElements, manyElements.ToArray())); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements, oneElement)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements, oneElement.ToArray())); Assert.True(ImmutableArrayExtensions.SequenceEqual(manyElements, manyElements, (a, b) => true)); Assert.False(ImmutableArrayExtensions.SequenceEqual(manyElements, ImmutableArray.Create(manyElements.ToArray()), (a, b) => false)); Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.SequenceEqual(oneElement, oneElement, (Func <int, int, bool>)null)); }