Agent Skills: .NET Verify Snapshot Testing

This skill should be used when working with Verify snapshot tests in .NET projects. Use when updating verified snapshots after intentional code changes, accepting new snapshots, discovering verify tests, or troubleshooting snapshot mismatches. Trigger phrases include "verify tests", "update snapshots", "accept snapshots", "verified files", ".verified.txt".

UncategorizedID: nikiforovall/claude-code-rules/dotnet-verify

Install this agent skill to your local

pnpm dlx add-skill https://github.com/NikiforovAll/claude-code-rules/tree/HEAD/plugins/handbook-dotnet/skills/dotnet-verify

Skill Files

Browse the full folder contents for dotnet-verify.

Download Skill

Loading file tree…

plugins/handbook-dotnet/skills/dotnet-verify/SKILL.md

Skill Metadata

Name
dotnet-verify
Description
This skill should be used when working with Verify snapshot tests in .NET projects. Use when updating verified snapshots after intentional code changes, accepting new snapshots, discovering verify tests, or troubleshooting snapshot mismatches. Trigger phrases include "verify tests", "update snapshots", "accept snapshots", "verified files", ".verified.txt".

.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 |