public void TryFirst_WherePredicateMatchesNoItems_ReturnsNoValue() { IEnumerable<string> source = new[] { "Foo", "Baz", "Boo", "Quix" }; var result = source.TryFirst(x => false); Assert.IsFalse(result.HasValue); }
public void TryFirst_WithFirstItemNull_ReturnsNoValue() { IEnumerable<string> source = new[] { null, "Foo", "Baz" }; var result = source.TryFirst(); Assert.IsFalse(result.HasValue); result = source.TryFirst(x => true); Assert.IsFalse(result.HasValue); }
public void TryFirst_WherePredicateMatchesItem_ReturnsFirstMatchingItem() { IEnumerable<string> source = new[] { "Foo", "Baz", "Boo", "Quix" }; var result = source.TryFirst(x => x.StartsWith("B")); Assert.IsTrue(result.HasValue); Assert.AreEqual("Baz", result.Value); }
public void TryFirst_WithManyItems_ReturnsFirstItem() { IEnumerable<int> source = new[] { 42, 84, 168 }; var result = source.TryFirst(); Assert.IsTrue(result.HasValue); Assert.AreEqual(42, result.Value); result = source.TryFirst(x => true); Assert.IsTrue(result.HasValue); Assert.AreEqual(42, result.Value); }