public void TestDispose()
            {
                TestEnumerator source = new TestEnumerator(0);

                new TransformingEnumerator <int, int>(source, _addTow).Dispose();
                Assert.IsTrue(source.IsDisposed);
            }
            public void TestReset()
            {
                TestEnumerator source = new TestEnumerator(5);
                TransformingEnumerator <int, int> te =
                    new TransformingEnumerator <int, int>(source, _addTow);

                te.MoveNext();
                Assert.AreNotEqual(-1, source.Value);
                te.Reset();
                Assert.AreEqual(-1, source.Value);
            }
            public void TestReset()
            {
                TestEnumerator source = new TestEnumerator(5);
                TransformingEnumerator <string> te =
                    new TransformingEnumerator <string>(source, _sayHello);

                te.MoveNext();
                Assert.AreNotEqual(-1, source.Value);
                te.Reset();
                Assert.AreEqual(-1, source.Value);
            }
            public void TestDispose()
            {
                TestEnumerator source = new TestEnumerator(0);

                new TransformingEnumerator <string>(source, _sayHello).Dispose();
                Assert.IsTrue(source.IsDisposed);

                ArrayList list = new ArrayList();

                new TransformingEnumerator <string>(list.GetEnumerator(), _sayHello).Dispose();
            }
            public void TestEnumeration()
            {
                int            size   = 5;
                TestEnumerator source = new TestEnumerator(size);
                TransformingEnumerator <int, int> te =
                    new TransformingEnumerator <int, int>(source, _addTow);

                for (int i = 0; i < size; i++)
                {
                    Assert.IsTrue(te.MoveNext());
                    Assert.AreEqual(i + 2, te.Current);
                }
                Assert.IsFalse(te.MoveNext());
            }
            public void TestEnumeration()
            {
                int            size   = 5;
                TestEnumerator source = new TestEnumerator(size);
                TransformingEnumerator <string> te =
                    new TransformingEnumerator <string>(source, _sayHello);

                for (int i = 0; i < size; i++)
                {
                    Assert.IsTrue(te.MoveNext());
                    Assert.AreEqual("Hello " + i, te.Current);
                }
                Assert.IsFalse(te.MoveNext());
            }