public void Restore_AfterGeneratingThreeNumbers_RegeneratesSameThreeNumbers() { IRandom random = new KnownSeriesRandom( 1, 2, 3, 4, 5, 6 ); for ( int i = 0; i < 25; i++ ) { random.Next( 6 ); } RandomState state = random.Save(); int first = random.Next( 6 ); int second = random.Next( 6 ); int third = random.Next( 6 ); random.Restore( state ); Assert.AreEqual( first, random.Next( 6 ) ); Assert.AreEqual( second, random.Next( 6 ) ); Assert.AreEqual( third, random.Next( 6 ) ); }