public void FirstOr_ReturnsFirstMatchingItem()
 {
     var items = new[] { 1, 2, 3, 4 };
     items.FirstOr(i => i > 2, -1).Should().Be(3);
 }
 public void FirstOr_ReturnsOtherwiseBecauseNoMatchingItem()
 {
     var items = new[] { 1, 2, 3, 4 };
     items.FirstOr(i => i > 10, -1).Should().Be(-1);
 }
 public void FirstOr_ReturnsFirstItem()
 {
     var items = new[] { 1, 2, 3, 4 };
     items.FirstOr(-1).Should().Be(1);
 }