예제 #1
0
 public void SingleOrDefault()
 {
     Assert.Equal(Enumerable.SingleOrDefault(oneElement), ImmutableArrayExtensions.SingleOrDefault(oneElement));
     Assert.Equal(Enumerable.SingleOrDefault(oneElement), ImmutableArrayExtensions.SingleOrDefault(oneElement, i => true));
     Assert.Equal(Enumerable.SingleOrDefault(oneElement, i => false), ImmutableArrayExtensions.SingleOrDefault(oneElement, i => false));
     Assert.Throws <InvalidOperationException>(() => ImmutableArrayExtensions.SingleOrDefault(manyElements));
     Assert.Throws <InvalidOperationException>(() => ImmutableArrayExtensions.SingleOrDefault(manyElements, i => true));
     Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.SingleOrDefault(oneElement, null));
 }
예제 #2
0
 public void SingleOrDefaultEmptyDefault()
 {
     Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.SingleOrDefault(emptyDefault));
     Assert.Throws <NullReferenceException>(() => ImmutableArrayExtensions.SingleOrDefault(emptyDefault, n => true));
     Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.SingleOrDefault(emptyDefault, null));
 }
예제 #3
0
 public void SingleOrDefaultEmpty()
 {
     Assert.Equal(0, ImmutableArrayExtensions.SingleOrDefault(empty));
     Assert.Equal(0, ImmutableArrayExtensions.SingleOrDefault(empty, n => true));
     Assert.Throws <ArgumentNullException>(() => ImmutableArrayExtensions.SingleOrDefault(empty, null));
 }
 public void SingleOrDefaultEmptyDefault()
 {
     TestExtensionsMethods.ValidateDefaultThisBehavior(() => ImmutableArrayExtensions.SingleOrDefault(s_emptyDefault));
     TestExtensionsMethods.ValidateDefaultThisBehavior(() => ImmutableArrayExtensions.SingleOrDefault(s_emptyDefault, n => true));
     AssertExtensions.Throws <ArgumentNullException>("predicate", () => ImmutableArrayExtensions.SingleOrDefault(s_emptyDefault, null));
 }