示例#1
0
 private static TBuilder UpdateTestContext <TBuilder>([NotNull] this TBuilder source,
                                                      [NotNull] AnalyzerTestContext testContext)
     where TBuilder : SourceCodeBuilder
 {
     source.TestContext = testContext;
     return(source);
 }
示例#2
0
        public ParsedSourceCode Build()
        {
            string sourceText = GetCompleteSourceText();

            TestContext = TestContext.WithMarkupCode(sourceText);

            return(new ParsedSourceCode(TestContext));
        }
示例#3
0
        public ParsedSourceCode([NotNull] string sourceText, [NotNull] AnalyzerTestContext testContext)
        {
            Guard.NotNull(sourceText, nameof(sourceText));
            Guard.NotNull(testContext, nameof(testContext));

            var document = new FixableDocument(sourceText);

            TestContext = testContext.WithCode(document.SourceText, document.SourceSpans);
        }
示例#4
0
        protected void VerifyNullabilityDiagnostic([NotNull] ParsedSourceCode source,
                                                   [NotNull][ItemNotNull] params string[] messages)
        {
            Guard.NotNull(source, nameof(source));

            AnalyzerTestContext analyzerContext = CreateTestContext(source);

            AssertDiagnostics(analyzerContext, messages);
        }
示例#5
0
        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);
        }
示例#6
0
        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);
        }
示例#7
0
        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);
        }
示例#8
0
        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);
        }
        public ParsedSourceCode([NotNull] AnalyzerTestContext testContext)
        {
            Guard.NotNull(testContext, nameof(testContext));

            TestContext = testContext;
        }