SuperAPI AI Directory

dotnet-verify

Testing & quality

View repository

Updated 10-16 09:34

About this skill

.NET Verify Snapshot Testing

Manage Verify snapshot tests using the verify.tool dotnet local tool.

Discovery

To list all test files using Verify snapshots:

rg -l "Verifier\.Verify|UsesVerify|\.verified\." --type cs

To scope to a specific directory:

rg -l "Verifier\.Verify|UsesVerify|\.verified\." --type cs <path/to/test/directory>

Update Snapshots

To update snapshots after intentional code changes:

  1. Build the solution:

    dotnet build -p:WarningLevel=0 /clp:ErrorsOnly --verbosity minimal
    
  2. Run affected verify tests (they fail, generating .received. files):

    dotnet test <test-project> --no-build --filter "FullyQualifiedName~<TestClass>" -v m
    
  3. Accept all new snapshots:

    dotnet verify accept -y
    

    To scope to a specific directory:

    dotnet verify accept -y -w <path/to/test/directory>
    
  4. Re-run tests to confirm they pass:

    dotnet test <test-project> --no-build --filter "FullyQualifiedName~<TestClass>" -v m
    

File Conventions

  • ClassName.MethodName.verified.txt — accepted snapshot (committed to git)
  • ClassName.MethodName.received.txt — latest test output (not committed, gitignored)
  • Parameterized tests: ClassName.MethodName_param=value.verified.txt

Quick Reference

Command Purpose
dotnet verify accept -y Accept all pending snapshots
dotnet verify accept -y -w <dir> Accept snapshots in specific directory
rg -l "Verifier\.Verify|UsesVerify|\.verified\." --type cs List all test files using Verify