Add an attribute driven file naming convention to Verify.
https://nuget.org/packages/Spectre.Verify.Extensions/
At startup pass Expectations.Initialize
to VerifierSettings.DerivePathInfo:
public static class VerifyConfig
{
[ModuleInitializer]
public static void Init()
{
Verifier.DerivePathInfo(Expectations.Initialize);
}
}
Then the following test
[ExpectationPath("Foo")]
public static class ExpectationTests
{
public static class MyOtherTestClass
{
[ExpectationPath("Bar/Qux")]
public class MyOtherOtherTestClass
{
[Fact]
[Expectation("Waldo")]
public async Task Test1()
{
await Verifier.Verify("w00t");
}
}
}
[ExpectationPath("Baz")]
public class YetAnotherTestClass
{
[Fact]
[Expectation("Corgi", "Lol")]
public async Task Test1()
{
await Verifier.Verify("lol");
}
}
}
Will produce the following directory structure:
ProjectDir
- Expectations
- Foo
- Bar
- Qux
- Waldo.Output.verified.txt
- Baz
- Corgi.Lol.verified.txt