public void AggregateEmptyDefault() { Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.Aggregate(s_emptyDefault, (a, b) => a + b)); Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.Aggregate(s_emptyDefault, 1, (a, b) => a + b)); Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.Aggregate <int, int, int>(s_emptyDefault, 1, (a, b) => a + b, a => a)); }
public void AggregateEmpty() { Assert.Equal(0, ImmutableArrayExtensions.Aggregate(s_empty, (a, b) => a + b)); Assert.Equal(1, ImmutableArrayExtensions.Aggregate(s_empty, 1, (a, b) => a + b)); Assert.Equal(1, ImmutableArrayExtensions.Aggregate <int, int, int>(s_empty, 1, (a, b) => a + b, a => a)); }
public void AllEmpty() { Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.All(s_empty, null)); Assert.True(ImmutableArrayExtensions.All(s_empty, n => { throw new ShouldNotBeInvokedException(); })); // predicate should never be invoked. }
public void Aggregate() { Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.Aggregate(s_oneElement, null)); Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.Aggregate(s_oneElement, 1, null)); Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.Aggregate <int, int, int>(s_oneElement, 1, null, null)); Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.Aggregate <int, int, int>(s_oneElement, 1, (a, b) => a + b, null)); Assert.Equal(Enumerable.Aggregate(s_manyElements, (a, b) => a * b), ImmutableArrayExtensions.Aggregate(s_manyElements, (a, b) => a * b)); Assert.Equal(Enumerable.Aggregate(s_manyElements, 5, (a, b) => a * b), ImmutableArrayExtensions.Aggregate(s_manyElements, 5, (a, b) => a * b)); Assert.Equal(Enumerable.Aggregate(s_manyElements, 5, (a, b) => a * b, a => - a), ImmutableArrayExtensions.Aggregate(s_manyElements, 5, (a, b) => a * b, a => - a)); }
public void All() { Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.All(s_oneElement, null)); Assert.False(ImmutableArrayExtensions.All(s_manyElements, n => n == 2)); Assert.True(ImmutableArrayExtensions.All(s_manyElements, n => n > 0)); }
public void AllEmptyDefault() { Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.All(s_emptyDefault, n => true)); Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.All(s_emptyDefault, null)); }
public void WhereEmpty() { Assert.Throws <ArgumentNullException>("predicate", () => ImmutableArrayExtensions.Where(s_empty, null)); Assert.False(ImmutableArrayExtensions.Where(s_empty, n => true).Any()); }
public void SelectEmpty() { Assert.Throws <ArgumentNullException>("selector", () => ImmutableArrayExtensions.Select <int, bool>(s_empty, null)); Assert.False(ImmutableArrayExtensions.Select(s_empty, n => true).Any()); }
public void ToArray() { Assert.Equal(0, ImmutableArrayExtensions.ToArray(s_empty).Length); Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.ToArray(s_emptyDefault)); Assert.Equal(s_manyElements.ToArray(), ImmutableArrayExtensions.ToArray(s_manyElements)); }
public void Where() { Assert.Equal(new[] { 2, 3 }, ImmutableArrayExtensions.Where(s_manyElements, n => n > 1)); Assert.Throws <ArgumentNullException>("predicate", () => ImmutableArrayExtensions.Where(s_manyElements, null)); }
public void SingleOrDefaultEmptyDefault() { Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.SingleOrDefault(s_emptyDefault)); Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.SingleOrDefault(s_emptyDefault, n => true)); Assert.Throws <ArgumentNullException>("predicate", () => ImmutableArrayExtensions.SingleOrDefault(s_emptyDefault, null)); }
public void SingleOrDefaultEmpty() { Assert.Equal(0, ImmutableArrayExtensions.SingleOrDefault(s_empty)); Assert.Equal(0, ImmutableArrayExtensions.SingleOrDefault(s_empty, n => true)); Assert.Throws <ArgumentNullException>("predicate", () => ImmutableArrayExtensions.SingleOrDefault(s_empty, null)); }
public void SingleEmpty() { Assert.Throws <InvalidOperationException>(() => ImmutableArrayExtensions.Single(s_empty)); Assert.Throws <InvalidOperationException>(() => ImmutableArrayExtensions.Single(s_empty, n => true)); Assert.Throws <ArgumentNullException>("predicate", () => ImmutableArrayExtensions.Single(s_empty, null)); }
public void Select() { Assert.Equal(new[] { 4, 5, 6 }, ImmutableArrayExtensions.Select(s_manyElements, n => n + 3)); Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.Select <int, bool>(s_manyElements, null)); }
public void AnyEmpty() { Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.Any(s_empty, null)); Assert.False(ImmutableArrayExtensions.Any(s_empty)); Assert.False(ImmutableArrayExtensions.Any(s_empty, n => true)); }
public void FirstEmptyDefault() { Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.First(s_emptyDefault)); Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.First(s_emptyDefault, n => true)); Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.First(s_emptyDefault, null)); }
public void SelectEmptyDefault() { Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.Select <int, bool>(s_emptyDefault, null)); Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.Select(s_emptyDefault, n => true)); }