Для целей этой проблемы в моем решении есть три проекта:
- myValidator.Analyzer
- myValidator.Shared
- myValidator.Test
Код: Выделить всё
[TestMethod]
public async Task TestAnalyzer()
{
var expected = VerifyCS.Diagnostic(myValidator.Analyzer.DD_UNUSED_ARGUMENT);
var cs = @"using System;
using myValidator.Shared.Attributes;
using myValidator.Shared.Enums;
using myValidator.Shared.Models;
public partial class Program
{
[ValidateAs(""Alias"", StringOptions.AllowNull)]
public int? ValidateAsProperty { get; set; }
public static void Main()
{
Console.WriteLine(""Hello, World!"");
Console.ReadKey();
}
}";
var referencedAssemblies = ReferenceAssemblies.Default.WithAssemblies(ImmutableArray.Create(typeof(Shared.Attributes.ValidateAsAttribute).Assembly.Location)); //
Подробнее здесь: [url]https://stackoverflow.com/questions/79753548/unit-testing-roslyn-diagnostic-with-external-project-reference[/url]