protected void VerifyNullabilityDiagnostic([NotNull] ParsedSourceCode source, [NotNull][ItemNotNull] params string[] messages) { Guard.NotNull(source, nameof(source)); AnalyzerTestContext analyzerContext = CreateTestContext(source); AssertDiagnostics(analyzerContext, messages); }
protected override void VerifyNullabilityFix(ParsedSourceCode source, params string[] messages) { Guard.NotNull(source, nameof(source)); AnalyzerTestContext analyzerContext = CreateTestContext(source); var fixTestContext = new FixProviderTestContext(analyzerContext, new[] { string.Empty }, source.ReIndentExpected); AssertDiagnosticsWithCodeFixes(fixTestContext, messages); }
protected AnalyzerTestContext CreateTestContext([NotNull] ParsedSourceCode source) { externalAnnotationsResolver = new SimpleExternalAnnotationsResolver(source.ExternalAnnotationsMap); AnalyzerOptions options = AnalyzerSettingsBuilder.ToOptions(source.Settings); return(new AnalyzerTestContext(source.GetText(), LanguageNames.CSharp, options) .WithReferences(source.References) .InFileNamed(source.Filename)); }
protected void VerifyNullabilityDiagnostic([NotNull] ParsedSourceCode source) { Guard.NotNull(source, nameof(source)); externalAnnotationsResolver = new SimpleExternalAnnotationsResolver(source.ExternalAnnotationsMap); AnalyzerTestContext analyzerTextContext = new AnalyzerTestContext(source.GetText(), LanguageNames.CSharp) .WithReferences(source.References) .WithFileName(source.Filename); AssertDiagnostics(analyzerTextContext); }
protected virtual void VerifyNullabilityFix([NotNull] ParsedSourceCode source, [NotNull][ItemNotNull] params string[] messages) { Guard.NotNull(source, nameof(source)); AnalyzerTestContext analyzerContext = CreateTestContext(source); string fixNotNull = source.GetExpectedTextForAttribute(NotNullAttributeName); string fixCanBeNull = source.GetExpectedTextForAttribute(CanBeNullAttributeName); var fixContext = new FixProviderTestContext(analyzerContext, new[] { fixNotNull, fixCanBeNull }, source.ReIndentExpected); AssertDiagnosticsWithCodeFixes(fixContext, messages); }
protected void VerifyNullabilityFix([NotNull] ParsedSourceCode source) { Guard.NotNull(source, nameof(source)); string fixNotNull = source.GetExpectedTextForAttribute(NotNullAttributeName); string fixCanBeNull = source.GetExpectedTextForAttribute(CanBeNullAttributeName); AnalyzerTestContext analyzeTextContext = new AnalyzerTestContext(source.GetText(), LanguageNames.CSharp) .WithReferences(source.References) .WithFileName(source.Filename); var fixTestContext = new FixProviderTestContext(analyzeTextContext, new[] { fixNotNull, fixCanBeNull }, source.ReIndentExpected); AssertDiagnosticsWithCodeFixes(fixTestContext); }
protected override void VerifyNullabilityFix(ParsedSourceCode source) { throw new NotSupportedException($"Use {nameof(VerifyDiagnosticWithFix)} from tests."); }