public void IteratorPattern_TestIfMethodResultIsIterable() { var result = IteratorPattern.EnumerateMe(); foreach (var item in result) { Console.WriteLine(item); } }
public static void Main() { Console.WriteLine("1. Singleton - Creational Pattern \n" + "2. Factory Method - Creational Pattern \n" + "3. Prototype - Creational Pattern \n" + "4. Decorator - Structural Pattern \n" + "5. Chain of Responsibility - Behavioural Pattern \n" + "6. Strategy - Behavioural Pattern\n" + "7. Observer - Behavioural Pattern \n" + "8. Iterator - Behavioural Pattern" ); Console.Write("Please enter your choice : "); int choice = Int16.Parse(Console.ReadLine()); Console.WriteLine(" "); switch (choice) { case 1: Singleton.MainCaller(); break; case 2: FactoryDesignPattern.MainCaller(); break; case 3: PrototypePattern.MainCaller(); break; case 4: DecoratorPattern.MainCaller(); break; case 5: ChainofResponsibility.MainCaller(); break; case 6: StrategyPattern.MainCaller(); break; case 7: ObserverPattern.MainCaller(); break; case 8: IteratorPattern.MainCaller(); break; default: Console.WriteLine("Sorry, we don't serve this yet."); break; } Console.ReadKey(); }
public void WhereTest() { int[] enumerable = new int[] { 0, 1, 2 }; EnumerableAssert.AreSequentialEqual( Enumerable.Where(enumerable, x => x > 0), IteratorPattern.Where(enumerable, x => x > 0)); enumerable = new int[] { }; EnumerableAssert.AreSequentialEqual( Enumerable.Where(enumerable, x => x > 0), IteratorPattern.Where(enumerable, x => x > 0)); }
public void SelectTest() { int[] enumerable = new int[] { 0, 1, 2 }; EnumerableAssert.AreSequentialEqual( Enumerable.Select(enumerable, x => x.ToString()), IteratorPattern.Select(enumerable, x => x.ToString())); enumerable = new int[] { }; EnumerableAssert.AreSequentialEqual( Enumerable.Select(enumerable, x => x.ToString()), IteratorPattern.Select(enumerable, x => x.ToString())); }
public void EnumerableTest() { EnumerableAssert.AreSequentialEqual( EnumerableEx.Return(1), IteratorPattern.FromValue(1)); object value = new object(); EnumerableAssert.AreSequentialEqual( EnumerableEx.Return(value), IteratorPattern.FromValue(value)); }
public void RepeatTest() { EnumerableAssert.AreSequentialEqual( Enumerable.Repeat(1, 5), IteratorPattern.Repeat(1, 5)); EnumerableAssert.AreSequentialEqual( Enumerable.Repeat(1, 0), IteratorPattern.Repeat(1, 0)); EnumerableAssert.AreSequentialEqual( Enumerable.Repeat(1, 1), IteratorPattern.Repeat(1, 1)); object value = new object(); EnumerableAssert.AreSequentialEqual( Enumerable.Repeat(value, 10), IteratorPattern.Repeat(value, 10)); }
public void SequenceTest() { IteratorPattern.NonGenericSequences(); }