An open API service indexing awesome lists of open source software.

https://github.com/spectresystems/spectre.verify.extensions

Extensions for Verify
https://github.com/spectresystems/spectre.verify.extensions

Last synced: 6 months ago
JSON representation

Extensions for Verify

Awesome Lists containing this project

README

          

# Spectre.Verify.Extensions

![Continuous Integration](https://github.com/spectresystems/spectre.verify.extensions/workflows/Continuous%20Integration/badge.svg)
[![NuGet Status](https://img.shields.io/nuget/v/Spectre.Verify.Extensions.svg)](https://www.nuget.org/packages/Spectre.Verify.Extensions/)

Add an attribute driven file naming convention to [Verify](https://github.com/VerifyTests/Verify).

## NuGet package

https://nuget.org/packages/Spectre.Verify.Extensions/

## Usage

At startup pass `Expectations.Initialize` to [VerifierSettings.DerivePathInfo](https://github.com/VerifyTests/Verify/blob/master/docs/naming.md#derivepathinfo):


```cs
public static class VerifyConfig
{
[ModuleInitializer]
public static void Init()
{
Verifier.DerivePathInfo(Expectations.Initialize);
}
}
```
snippet source | anchor

Then the following test


```cs
[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");
}
}
}
```
snippet source | anchor

Will produce the following directory structure:

```
ProjectDir
- Expectations
- Foo
- Bar
- Qux
- Waldo.Output.verified.txt
- Baz
- Corgi.Lol.verified.txt
```