public void TestReset() { IntGenerator generator = IntGenerator.Of(0, 31); Assert.AreEqual(0, generator.Get()); generator.MoveNext(); Assert.AreEqual(0, (int)generator.Current); Assert.AreEqual(1, generator.Get()); Assert.AreEqual(1, generator.Get()); generator.MoveNext(); Assert.AreEqual(1, (int)generator.Current); generator.MoveNext(); Assert.AreEqual(2, (int)generator.Current); Assert.AreEqual(3, generator.Get()); generator.Reset(); Assert.AreEqual(0, generator.Get()); generator.MoveNext(); Assert.AreEqual(0, (int)generator.Current); Assert.AreEqual(1, generator.Get()); Assert.AreEqual(1, generator.Get()); generator.MoveNext(); Assert.AreEqual(1, (int)generator.Current); generator.MoveNext(); Assert.AreEqual(2, (int)generator.Current); Assert.AreEqual(3, generator.Get()); }