public void ContainsSome() { Assert.IsTrue(FEnumerable.Range(0, 10).Contains(0)); Assert.IsTrue(FEnumerable.Range(0, 10).Contains(5)); Assert.IsTrue(FEnumerable.Range(0, 10).Contains(9)); Assert.IsFalse(FEnumerable.Range(0, 10).Contains(10)); }
public void Run() { int sum = 0; FEnumerable.Range(0, 10).Run(x => sum += x); Assert.AreEqual(45, sum); }
public void Range() { var e = FEnumerable.Range(1, 3)(); Assert.IsTrue(e().Value == 1); Assert.IsTrue(e().Value == 2); Assert.IsTrue(e().Value == 3); Assert.IsTrue(e() is Maybe <int> .None); }
public void SkipWhile() { var res = FEnumerable.Range(0, 10).SkipWhile(n => n < 8); for (int i = 0; i < 2; i++) { var e = res(); Assert.IsTrue(e().Value == 8); Assert.IsTrue(e().Value == 9); Assert.IsTrue(e() is Maybe <int> .None); } }
public void TakeWhile() { var res = FEnumerable.Range(0, 10).TakeWhile(n => n < 2); for (int i = 0; i < 2; i++) { var e = res(); Assert.IsTrue(e().Value == 0); Assert.IsTrue(e().Value == 1); Assert.IsTrue(e() is Maybe <int> .None); } }
public void Reverse() { var res = FEnumerable.Range(0, 3).Reverse(); for (int i = 0; i < 2; i++) { var e = res(); Assert.IsTrue(e().Value == 2); Assert.IsTrue(e().Value == 1); Assert.IsTrue(e().Value == 0); Assert.IsTrue(e() is Maybe <int> .None); } }
public void ElementAtSome() { int f = 0; Assert.AreEqual(f, FEnumerable.Range(0, 10).ElementAt(f)); int n = 5; Assert.AreEqual(n, FEnumerable.Range(0, 10).ElementAt(n)); int l = 9; Assert.AreEqual(l, FEnumerable.Range(0, 10).ElementAt(l)); }
public void Where() { var res = FEnumerable.Range(0, 10).Where(n => n % 2 == 0); for (int i = 0; i < 2; i++) { var e = res(); Assert.IsTrue(e().Value == 0); Assert.IsTrue(e().Value == 2); Assert.IsTrue(e().Value == 4); Assert.IsTrue(e().Value == 6); Assert.IsTrue(e().Value == 8); Assert.IsTrue(e() is Maybe <int> .None); } }
public void Select() { var res = FEnumerable.Range(0, 5).Select(n => n + 1); for (int i = 0; i < 2; i++) { var e = res(); Assert.IsTrue(e().Value == 1); Assert.IsTrue(e().Value == 2); Assert.IsTrue(e().Value == 3); Assert.IsTrue(e().Value == 4); Assert.IsTrue(e().Value == 5); Assert.IsTrue(e() is Maybe <int> .None); } }
public void Concat() { var src = FEnumerable.Ana(1, i => i <= 3, i => i + 1, i => FEnumerable.Range(0, i)); var res = src.Concat(); for (int i = 0; i < 2; i++) { var e = res(); Assert.IsTrue(e().Value == 0); Assert.IsTrue(e().Value == 0); Assert.IsTrue(e().Value == 1); Assert.IsTrue(e().Value == 0); Assert.IsTrue(e().Value == 1); Assert.IsTrue(e().Value == 2); Assert.IsTrue(e() is Maybe <int> .None); } }
public void ElementAtOrDefaultSome() { int f = 0; Assert.AreEqual(f, FEnumerable.Range(0, 10).ElementAtOrDefault(f)); int n = 5; Assert.AreEqual(n, FEnumerable.Range(0, 10).ElementAtOrDefault(n)); int l = 9; Assert.AreEqual(l, FEnumerable.Range(0, 10).ElementAtOrDefault(l)); int o = 10; Assert.AreEqual(default(int), FEnumerable.Range(0, 10).ElementAtOrDefault(o)); }
public void Aggregate2() { Assert.AreEqual(90, FEnumerable.Range(0, 10).Aggregate(0, (sum, i) => sum + i, sum => sum * 2)); }
public void SingleSomePredicateTrueMultiple() { FEnumerable.Range(0, 5).Single(n => n < 5); }
public void SingleSomePredicateNeverTrue() { FEnumerable.Range(0, 5).Single(n => n > 5); }
public void SingleSomePredicate() { Assert.AreEqual(3, FEnumerable.Range(0, 5).Single(n => n == 3)); }
public void LastSomePredicateNeverTrue() { FEnumerable.Range(0, 5).Last(n => n > 5); }
public void LastSomePredicate() { int lst = 5; Assert.AreEqual(3, FEnumerable.Range(0, lst + 1).Last(n => n <= 3)); }
public void LastSome() { int lst = 5; Assert.AreEqual(lst, FEnumerable.Range(0, lst + 1).Last()); }
public void FirstSomePredicate() { int fst = 0; Assert.AreEqual(3, FEnumerable.Range(fst, 5).First(n => n > 2)); }
public void ToArray() { var res = FEnumerable.Range(0, 10).ToArray(); Assert.IsTrue(System.Linq.Enumerable.SequenceEqual(res, System.Linq.Enumerable.Range(0, 10))); }
public void SumSomeProjected() { Assert.AreEqual(55, FEnumerable.Range(0, 10).Sum(x => x + 1)); }
public void SumSome() { Assert.AreEqual(45, FEnumerable.Range(0, 10).Sum()); }
public void AnySome() { Assert.IsTrue(FEnumerable.Range(0, 10).Any(x => x < 10)); Assert.IsFalse(FEnumerable.Range(0, 10).Any(x => x > 10)); Assert.IsTrue(FEnumerable.Range(0, 10).Any(x => x == 5)); }
public void AverageSome() { Assert.AreEqual(4.5, FEnumerable.Range(0, 10).Average()); }
public void RangeOutOfRange() { FEnumerable.Range(0, -1); }
public void Aggregate1() { Assert.AreEqual(45, FEnumerable.Range(0, 10).Aggregate(0, (sum, i) => sum + i)); }
public void AverageSomeProjected() { Assert.AreEqual(5.5, FEnumerable.Range(0, 10).Average(x => x + 1)); }
public void LongCountFew() { int n = 10; Assert.AreEqual(n, FEnumerable.Range(0, n).LongCount()); }
public void FirstSome() { int fst = 0; Assert.AreEqual(fst, FEnumerable.Range(fst, 5).First()); }