public RemoveParametersPresenter Create() { var selection = _vbe.GetActiveSelection(); if (!selection.HasValue) { return(null); } var model = new RemoveParametersModel(_state, selection.Value, _messageBox); return(new RemoveParametersPresenter(_view, model, _messageBox)); }
public void RemoveParamatersRefactoring_ClientReferencesAreUpdated() { //Input const string inputCode = @"Private Sub Foo(ByVal arg1 As Integer, ByVal arg2 As String) End Sub Private Sub Bar() Foo 10, ""Hello"" End Sub "; var selection = new Selection(1, 23, 1, 27); //startLine, startCol, endLine, endCol //Expectation const string expectedCode = @"Private Sub Foo(ByVal arg1 As Integer ) End Sub Private Sub Bar() Foo 10 End Sub "; //note: The IDE strips out the extra whitespace, you can't see it but there's a space after "Foo 10 " //Arrange SetupProject(inputCode); var parseResult = new RubberduckParser().Parse(_project.Object); var qualifiedSelection = GetQualifiedSelection(selection); //Specify Param(s) to remove var model = new RemoveParametersModel(parseResult, qualifiedSelection); model.Parameters[1].IsRemoved = true; //SetupFactory var factory = SetupFactory(model); //Act var refactoring = new RemoveParametersRefactoring(factory.Object); refactoring.Refactor(qualifiedSelection); //Assert Assert.AreEqual(expectedCode, _module.Object.Lines()); }
public RemoveParametersPresenter(IRefactoringDialog <RemoveParametersViewModel> view, RemoveParametersModel model, IMessageBox messageBox) { _view = view; _model = model; _messageBox = messageBox; }
private static Mock <IRefactoringPresenterFactory <IRemoveParametersPresenter> > SetupFactory(RemoveParametersModel model) { var presenter = new Mock <IRemoveParametersPresenter>(); presenter.Setup(p => p.Show()).Returns(model); var factory = new Mock <IRefactoringPresenterFactory <IRemoveParametersPresenter> >(); factory.Setup(f => f.Create()).Returns(presenter.Object); return(factory); }