private static (Declaration specifiedDeclaration, Declaration selectedDeclaration) DeclarationsFromParse( IVBE vbe, DeclarationType declarationType, string declarationName, string parentScope = null) { using (var state = MockParser.CreateAndParse(vbe)) { var selectionProvider = new SelectionService(vbe, state.ProjectsProvider); var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionProvider, state); var specifiedDeclaration = parentScope == null ? state.DeclarationFinder .DeclarationsWithType(declarationType) .Single(declaration => declaration.IdentifierName.Equals(declarationName)) : state.DeclarationFinder .DeclarationsWithType(declarationType) .Single(declaration => declaration.IdentifierName.Equals(declarationName) && declaration.ParentScope.Equals(parentScope)); var selectedDeclaration = selectedDeclarationProvider.SelectedDeclaration(); return(specifiedDeclaration, selectedDeclaration); } }
public SyncCodeExplorerCommand GetSyncCommand(CodeExplorerViewModel explorer) { var selectionService = new SelectionService(_vbe, _state.ProjectsProvider); var selectedDeclarationService = new SelectedDeclarationProvider(selectionService, _state); return(new SyncCodeExplorerCommand(_vbe, _state, _state, selectedDeclarationService, explorer, _vbeEvents)); }
protected override CommandBase TestCommand( IVBE vbe, RubberduckParserState state, IRewritingManager rewritingManager, ISelectionService selectionService) { var factory = new Mock <IRefactoringPresenterFactory>().Object; var msgBox = new Mock <IMessageBox>().Object; var uiDispatcherMock = new Mock <IUiDispatcher>(); uiDispatcherMock .Setup(m => m.Invoke(It.IsAny <Action>())) .Callback((Action action) => action.Invoke()); var userInteraction = new RefactoringUserInteraction <IAnnotateDeclarationPresenter, AnnotateDeclarationModel>(factory, uiDispatcherMock.Object); var annotationUpdater = new AnnotationUpdater(state); var attributesUpdater = new AttributesUpdater(state); var annotateDeclarationAction = new AnnotateDeclarationRefactoringAction(rewritingManager, annotationUpdater, attributesUpdater); var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var refactoring = new AnnotateDeclarationRefactoring(annotateDeclarationAction, selectedDeclarationProvider, selectionService, userInteraction); var notifier = new AnnotateDeclarationFailedNotifier(msgBox); return(new AnnotateSelectedMemberCommand(refactoring, notifier, selectionService, state, state, selectedDeclarationProvider)); }
//The only relevant test is in the base class. protected override CommandBase TestCommand( IVBE vbe, RubberduckParserState state, IRewritingManager rewritingManager, ISelectionService selectionService) { var factory = new Mock <IRefactoringPresenterFactory>().Object; var msgBox = new Mock <IMessageBox>().Object; var uiDispatcherMock = new Mock <IUiDispatcher>(); uiDispatcherMock .Setup(m => m.Invoke(It.IsAny <Action>())) .Callback((Action action) => action.Invoke()); var userInteraction = new RefactoringUserInteraction <IMoveMultipleFoldersPresenter, MoveMultipleFoldersModel>(factory, uiDispatcherMock.Object); var annotationUpdater = new AnnotationUpdater(state); var moveToFolderAction = new MoveToFolderRefactoringAction(rewritingManager, annotationUpdater); var changeFolderAction = new ChangeFolderRefactoringAction(rewritingManager, moveToFolderAction); var moveFolderAction = new MoveFolderRefactoringAction(rewritingManager, changeFolderAction); var moveMultipleFoldersAction = new MoveMultipleFoldersRefactoringAction(rewritingManager, moveFolderAction); var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var refactoring = new MoveContainingFolderRefactoring(moveMultipleFoldersAction, selectedDeclarationProvider, selectionService, userInteraction, state, state); var notifier = new MoveContainingFolderRefactoringFailedNotifier(msgBox); return(new CodePaneRefactorMoveContainingFolderCommand(refactoring, notifier, selectionService, state, selectedDeclarationProvider)); }
public void GivenPrivateSub_DefaultQuickFixRemovesParameter() { const string inputCode = @" Private Sub Foo(ByVal arg1 as Integer) End Sub"; const string expectedCode = @" Private Sub Foo() End Sub"; var vbe = MockVbeBuilder.BuildFromSingleStandardModule(inputCode, out var component); var(state, rewritingManager) = MockParser.CreateAndParseWithRewritingManager(vbe.Object); using (state) { var inspection = new ParameterNotUsedInspection(state); var inspectionResults = inspection.GetInspectionResults(CancellationToken.None); var rewriteSession = rewritingManager.CheckOutCodePaneSession(); var selectionService = MockedSelectionService(); var factory = new Mock <IRefactoringPresenterFactory>().Object; var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var uiDispatcherMock = new Mock <IUiDispatcher>(); uiDispatcherMock .Setup(m => m.Invoke(It.IsAny <Action>())) .Callback((Action action) => action.Invoke()); var refactoring = new RemoveParametersRefactoring(state, factory, rewritingManager, selectionService, selectedDeclarationProvider, uiDispatcherMock.Object); new RemoveUnusedParameterQuickFix(refactoring) .Fix(inspectionResults.First(), rewriteSession); Assert.AreEqual(expectedCode, component.CodeModule.Content()); } }
protected override IRefactoring TestRefactoring(IRewritingManager rewritingManager, RubberduckParserState state, ISelectionService selectionService) { var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var baseRefactoring = new IntroduceFieldRefactoringAction(state, rewritingManager); return(new IntroduceFieldRefactoring(baseRefactoring, selectionService, selectedDeclarationProvider)); }
internal static NoIndentAnnotationCommand ArrangeNoIndentAnnotationCommand(Mock <IVBE> vbe, RubberduckParserState state, IRewritingManager rewritingManager, Mock <IVbeEvents> vbeEvents) { var selectionService = new SelectionService(vbe.Object, state.ProjectsProvider); var selectedDeclarationService = new SelectedDeclarationProvider(selectionService, state); return(new NoIndentAnnotationCommand(selectedDeclarationService, rewritingManager, new AnnotationUpdater(), vbeEvents.Object)); }
protected override CommandBase TestCommand(IVBE vbe, RubberduckParserState state, IRewritingManager rewritingManager, ISelectionService selectionService) { var msgBox = new Mock <IMessageBox>().Object; var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var refactoring = new IntroduceFieldRefactoring(state, rewritingManager, selectionService, selectedDeclarationProvider); var notifier = new IntroduceFieldFailedNotifier(msgBox); return(new RefactorIntroduceFieldCommand(refactoring, notifier, state, selectionService, selectedDeclarationProvider)); }
private static FindAllImplementationsCommand ArrangeFindAllImplementationsCommand(RubberduckParserState state, Mock <IVBE> vbe, ISearchResultsWindowViewModel viewModel, FindAllImplementationsService finder, Mock <IVbeEvents> vbeEvents) { var selectionService = new SelectionService(vbe.Object, state.ProjectsProvider); var selectedDeclarationService = new SelectedDeclarationProvider(selectionService, state); return(new FindAllImplementationsCommand(state, selectedDeclarationService, viewModel, finder, vbeEvents.Object)); }
private static IRefactoring TestRefactoring(IRewritingManager rewritingManager, RubberduckParserState state, ISelectionService selectionService, IMessageBox msgBox) { if (msgBox == null) { msgBox = new Mock <IMessageBox>().Object; } var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); return(new IntroduceParameterRefactoring(state, msgBox, rewritingManager, selectionService, selectedDeclarationProvider)); }
protected override CommandBase TestCommand(IVBE vbe, RubberduckParserState state, IRewritingManager rewritingManager, ISelectionService selectionService) { var msgBox = new Mock <IMessageBox>().Object; var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var baseRefactoring = new MoveCloserToUsageRefactoringAction(rewritingManager); var refactoring = new MoveCloserToUsageRefactoring(baseRefactoring, state, selectionService, selectedDeclarationProvider); var notifier = new MoveCloserToUsageFailedNotifier(msgBox); var selectedDeclarationService = new SelectedDeclarationProvider(selectionService, state); return(new RefactorMoveCloserToUsageCommand(refactoring, notifier, state, selectionService, selectedDeclarationService)); }
protected override IRefactoring TestRefactoring(IRewritingManager rewritingManager, RubberduckParserState state, IRefactoringPresenterFactory factory, ISelectionService selectionService) { var indenter = CreateIndenter(); //The refactoring only uses method independent of the VBE instance. var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var uiDispatcherMock = new Mock <IUiDispatcher>(); uiDispatcherMock .Setup(m => m.Invoke(It.IsAny <Action>())) .Callback((Action action) => action.Invoke()); return(new EncapsulateFieldRefactoring(state, indenter, factory, rewritingManager, selectionService, selectedDeclarationProvider, uiDispatcherMock.Object)); }
public IRefactoring SupportTestRefactoring( IRewritingManager rewritingManager, RubberduckParserState state, RefactoringUserInteraction <IEncapsulateFieldPresenter, EncapsulateFieldModel> userInteraction, ISelectionService selectionService) { var indenter = CreateIndenter(); var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); return(new EncapsulateFieldRefactoring(state, indenter, userInteraction, rewritingManager, selectionService, selectedDeclarationProvider, new CodeBuilder())); }
protected override IRefactoring TestRefactoring( IRewritingManager rewritingManager, RubberduckParserState state, RefactoringUserInteraction <IReorderParametersPresenter, ReorderParametersModel> userInteraction, ISelectionService selectionService) { var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var baseRefactoring = new ReorderParameterRefactoringAction(state, rewritingManager); return(new ReorderParametersRefactoring(baseRefactoring, state, userInteraction, selectionService, selectedDeclarationProvider)); }
protected override IRefactoring TestRefactoring( IRewritingManager rewritingManager, RubberduckParserState state, RefactoringUserInteraction <IMoveMultipleToFolderPresenter, MoveMultipleToFolderModel> userInteraction, ISelectionService selectionService) { var annotationUpdater = new AnnotationUpdater(state); var moveToFolderAction = new MoveToFolderRefactoringAction(rewritingManager, annotationUpdater); var moveMultipleToFolderAction = new MoveMultipleToFolderRefactoringAction(rewritingManager, moveToFolderAction); var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); return(new MoveToFolderRefactoring(moveMultipleToFolderAction, selectedDeclarationProvider, selectionService, userInteraction, state)); }
protected override IRefactoring TestRefactoring( IRewritingManager rewritingManager, RubberduckParserState state, RefactoringUserInteraction <IAnnotateDeclarationPresenter, AnnotateDeclarationModel> userInteraction, ISelectionService selectionService) { var annotationUpdater = new AnnotationUpdater(state); var attributesUpdater = new AttributesUpdater(state); var annotateDeclarationAction = new AnnotateDeclarationRefactoringAction(rewritingManager, annotationUpdater, attributesUpdater); var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); return(new AnnotateDeclarationRefactoring(annotateDeclarationAction, selectedDeclarationProvider, selectionService, userInteraction)); }
protected override IRefactoring TestRefactoring( IRewritingManager rewritingManager, RubberduckParserState state, IRefactoringPresenterFactory factory, ISelectionService selectionService) { var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var uiDispatcherMock = new Mock <IUiDispatcher>(); uiDispatcherMock .Setup(m => m.Invoke(It.IsAny <Action>())) .Callback((Action action) => action.Invoke()); return(new ReorderParametersRefactoring(state, factory, rewritingManager, selectionService, selectedDeclarationProvider, uiDispatcherMock.Object)); }
protected override CommandBase TestCommand(IVBE vbe, RubberduckParserState state, IRewritingManager rewritingManager, ISelectionService selectionService) { var factory = new Mock <IRefactoringPresenterFactory>().Object; var msgBox = new Mock <IMessageBox>().Object; var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var uiDispatcherMock = new Mock <IUiDispatcher>(); uiDispatcherMock .Setup(m => m.Invoke(It.IsAny <Action>())) .Callback((Action action) => action.Invoke()); var refactoring = new ReorderParametersRefactoring(state, factory, rewritingManager, selectionService, selectedDeclarationProvider, uiDispatcherMock.Object); var notifier = new ReorderParametersFailedNotifier(msgBox); return(new RefactorReorderParametersCommand(refactoring, notifier, state, selectionService, selectedDeclarationProvider)); }
protected override CommandBase TestCommand(IVBE vbe, RubberduckParserState state, IRewritingManager rewritingManager, ISelectionService selectionService) { var msgBox = new Mock <IMessageBox>().Object; var factory = new Mock <IRefactoringPresenterFactory>().Object; var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var uiDispatcherMock = new Mock <IUiDispatcher>(); uiDispatcherMock .Setup(m => m.Invoke(It.IsAny <Action>())) .Callback((Action action) => action.Invoke()); var userInteraction = new RefactoringUserInteraction <IEncapsulateFieldPresenter, EncapsulateFieldModel>(factory, uiDispatcherMock.Object); var refactoring = new EncapsulateFieldRefactoring(state, null, userInteraction, rewritingManager, selectionService, selectedDeclarationProvider, new CodeBuilder()); var notifier = new EncapsulateFieldFailedNotifier(msgBox); var selectedDeclarationService = new SelectedDeclarationProvider(selectionService, state); return(new RefactorEncapsulateFieldCommand(refactoring, notifier, state, selectionService, selectedDeclarationService)); }
private string ApplyQuickFixToFirstInspectionResult(string inputCode) { var vbe = MockVbeBuilder.BuildFromSingleStandardModule(inputCode, out var component); var(state, rewritingManager) = MockParser.CreateAndParseWithRewritingManager(vbe.Object); using (state) { var inspection = new MoveFieldCloserToUsageInspection(state); var inspectionResults = inspection.GetInspectionResults(CancellationToken.None); var resultToFix = inspectionResults.First(); var rewriteSession = rewritingManager.CheckOutCodePaneSession(); var selectionService = MockedSelectionService(); var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); var refactoring = new MoveCloserToUsageRefactoring(state, rewritingManager, selectionService, selectedDeclarationProvider); var quickFix = new MoveFieldCloserToUsageQuickFix(refactoring); quickFix.Fix(resultToFix, rewriteSession); return(component.CodeModule.Content()); } }
protected override IRefactoring TestRefactoring(IRewritingManager rewritingManager, RubberduckParserState state, ISelectionService selectionService) { var selectedDeclarationProvider = new SelectedDeclarationProvider(selectionService, state); return(new MoveCloserToUsageRefactoring(state, rewritingManager, selectionService, selectedDeclarationProvider)); }