Skip to content

Instantly share code, notes, and snippets.

@tsvayer
Created August 29, 2020 14:41
Show Gist options
  • Select an option

  • Save tsvayer/e3ed7aef667e3d736ea161f85714c825 to your computer and use it in GitHub Desktop.

Select an option

Save tsvayer/e3ed7aef667e3d736ea161f85714c825 to your computer and use it in GitHub Desktop.
Veli Extensions
public static class VeliExtensions
{
public static IEnumerable<T> ToListTakeWhile<T>(this IEnumerable<T> source, Predicate<T> predicate)
{
return source.TakeWhile(item => !predicate(item));
}
}
public class VeliExtensionTests
{
[Test]
public void RedundantExtension()
{
var data = new[] {"Ali", "Mehmet", "Veli", "Vitaliy"};
var defaultExtension = data.TakeWhile(i => i != "Veli");
var veliExtension = data.ToListTakeWhile(i => i == "Veli");
Assert.That(defaultExtension, Is.EqualTo(veliExtension));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment