public async Task Test_00_DiagnosticAnalysis()
        {
            var compilation = CodeAnalysisTestingUtils.CreateFakeCompilation().LoadDocuments("TestData_DiagnosticAnalysis.cs");
            var analyzers   = new DiagnosticAnalyzer[] { new ExampleAnalyzer0000(), new ExampleAnalyzer0001(), new ExampleAnalyzer0002() };

            var diagnostics = await CodeAnalysisTestingUtils.AnalyzeAsync(compilation, analyzers, null, default).ConfigureAwait(false);

            var message = CodeAnalysisTestingMessages.GetMessage(compilation, analyzers, diagnostics);

            TestContext.WriteLine(message);
        }
        public async Task Test_01_SourceGeneration()
        {
            var compilation = CodeAnalysisTestingUtils.CreateFakeCompilation().LoadDocuments("TestData_SourceGeneration.cs");
            var generator   = new ExampleSourceGenerator();

            var generation = await CodeAnalysisTestingUtils.GenerateAsync(generator, compilation, default).ConfigureAwait(false);

            var message = CodeAnalysisTestingMessages.GetMessage(generation.Generator, compilation, generation.GeneratedSources.ToArray(), generation.Diagnostics.ToArray(), generation.Exception);

            TestContext.WriteLine(message);
            foreach (var diagnostic in generation.Diagnostics)
            {
                Assert.Fail(diagnostic.ToString());
            }
            if (generation.Exception != null)
            {
                Assert.Fail(generation.Exception.ToString());
            }
        }