public void TestSaveRestoreState() { var handler = new EditorChangeHandler(new EditorBeatmap(new Beatmap())); Assert.That(handler.HasUndoState, Is.False); handler.SaveState(); Assert.That(handler.HasUndoState, Is.True); handler.RestoreState(-1); Assert.That(handler.HasUndoState, Is.False); }
public void TestMaxStatesExceeded() { var handler = new EditorChangeHandler(new EditorBeatmap(new Beatmap())); Assert.That(handler.CanUndo.Value, Is.False); for (int i = 0; i < EditorChangeHandler.MAX_SAVED_STATES * 2; i++) { handler.SaveState(); } Assert.That(handler.CanUndo.Value, Is.True); for (int i = 0; i < EditorChangeHandler.MAX_SAVED_STATES; i++) { Assert.That(handler.CanUndo.Value, Is.True); handler.RestoreState(-1); } Assert.That(handler.CanUndo.Value, Is.False); }