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 VariableTypeNotDeclaredInspection(state); var inspectionResults = inspection.GetInspectionResults(CancellationToken.None); var resultToFix = inspectionResults.First(); var refactoringAction = new ImplicitTypeToExplicitRefactoringAction(state, new ParseTreeValueFactory(), rewritingManager); var quickFix = new DeclareAsExplicitTypeQuickFix(refactoringAction); var rewriteSession = rewritingManager.CheckOutCodePaneSession(); quickFix.Fix(resultToFix, rewriteSession); rewriteSession.TryRewrite(); return(component.CodeModule.Content()); } }
public DeclareAsExplicitTypeQuickFix(ImplicitTypeToExplicitRefactoringAction refactoringAction) : base(typeof(VariableTypeNotDeclaredInspection), typeof(ImplicitlyTypedConstInspection)) { _refactoring = refactoringAction; }