public void RenameTrackingRedoAlwaysClearsState() { var code = @" class Cat$$ { }"; using (var state = new RenameTrackingTestState(code, LanguageNames.CSharp)) { state.EditorOperations.InsertText("s"); state.AssertTag("Cat", "Cats", invokeAction: true); state.AssertNoTag(); // Resume rename tracking session state.Undo(2); state.AssertTag("Cat", "Cats"); state.Redo(); state.AssertNoTag(); state.Redo(); state.AssertNoTag(); } }
public void RenameTrackingUndoTwiceRedoTwiceUndoStillWorks() { var code = @" class Cat$$ { }"; using (var state = new RenameTrackingTestState(code, LanguageNames.CSharp)) { state.EditorOperations.InsertText("s"); state.AssertTag("Cat", "Cats", invokeAction: true); state.AssertNoTag(); // Resume rename tracking session state.Undo(2); state.AssertTag("Cat", "Cats"); state.Redo(2); state.AssertNoTag(); // Back to original state.Undo(); state.AssertNoTag(); // Resume rename tracking session state.Undo(); state.AssertTag("Cat", "Cats"); } }
public void RenameTrackingUndoTwiceRedoTwiceUndoStillWorks() { var code = @" class Cat$$ { }"; using (var state = new RenameTrackingTestState(code, LanguageNames.CSharp)) { state.EditorOperations.InsertText("s"); state.AssertTag("Cat", "Cats", invokeAction: true); state.AssertNoTag(); // Resume rename tracking session state.Undo(2); state.AssertTag("Cat", "Cats"); state.Redo(2); state.AssertNoTag(); // Back to original state.Undo(); state.AssertNoTag(); // Resume rename tracking session state.Undo(); state.AssertTag("Cat", "Cats"); } }
public void RenameTrackingRedoAlwaysClearsState() { var code = @" class Cat$$ { }"; using (var state = new RenameTrackingTestState(code, LanguageNames.CSharp)) { state.EditorOperations.InsertText("s"); state.AssertTag("Cat", "Cats", invokeAction: true); state.AssertNoTag(); // Resume rename tracking session state.Undo(2); state.AssertTag("Cat", "Cats"); state.Redo(); state.AssertNoTag(); state.Redo(); state.AssertNoTag(); } }