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(); } }
public void RenameTrackingUndoTwiceAndContinueSession() { var code = @" class Cat$$ { }"; using (var state = new RenameTrackingTestState(code, LanguageNames.CSharp)) { state.EditorOperations.InsertText("abc"); state.AssertTag("Cat", "Catabc", invokeAction: true); state.AssertNoTag(); // Resume rename tracking session state.Undo(2); state.AssertTag("Cat", "Catabc"); state.EditorOperations.InsertText("xyz"); state.AssertTag("Cat", "Catabcxyz"); } }
public void RenameTrackingUndoOnceAndStartNewSession() { var code = @" class Cat$$ { }"; using (var state = new RenameTrackingTestState(code, LanguageNames.CSharp)) { state.EditorOperations.InsertText("abc"); state.AssertTag("Cat", "Catabc", invokeAction: true); state.AssertNoTag(); // Back to original state.Undo(); state.AssertNoTag(); state.EditorOperations.InsertText("xyz"); state.AssertTag("Cat", "Catxyz"); } }
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(); } }
public void RenameTrackingUndoTwiceAndContinueSession() { var code = @" class Cat$$ { }"; using (var state = new RenameTrackingTestState(code, LanguageNames.CSharp)) { state.EditorOperations.InsertText("abc"); state.AssertTag("Cat", "Catabc", invokeAction: true); state.AssertNoTag(); // Resume rename tracking session state.Undo(2); state.AssertTag("Cat", "Catabc"); state.EditorOperations.InsertText("xyz"); state.AssertTag("Cat", "Catabcxyz"); } }
public void RenameTrackingUndoOnceAndStartNewSession() { var code = @" class Cat$$ { }"; using (var state = new RenameTrackingTestState(code, LanguageNames.CSharp)) { state.EditorOperations.InsertText("abc"); state.AssertTag("Cat", "Catabc", invokeAction: true); state.AssertNoTag(); // Back to original state.Undo(); state.AssertNoTag(); state.EditorOperations.InsertText("xyz"); state.AssertTag("Cat", "Catxyz"); } }