con un clic
dotnet-testing
Testing patterns and conventions for the AvnDataGenie .NET solution
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Testing patterns and conventions for the AvnDataGenie .NET solution
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
| name | dotnet-testing |
| description | Testing patterns and conventions for the AvnDataGenie .NET solution |
| domain | testing |
| confidence | high |
| source | huntress |
The AvnDataGenie solution uses xUnit on .NET 10. The test project is src/AvnDataGenie.Tests/. Tests run with dotnet test src/AvnDataGenie.Tests/AvnDataGenie.Tests.csproj.
AvnDataGenie.csproj has <InternalsVisibleTo Include="AvnDataGenie.Tests" />. Use internal visibility (not public) for methods that need testing but shouldn't be part of the public API.
One test class per production class or logical unit:
SqlPromptBuilderTests.cs — tests for SqlPromptBuilder.CreateSystemPromptFromJson()CleanAndFormatSqlTests.cs — tests for Generator.CleanAndFormatSql()FormatSqlTests.cs — tests for Generator.FormatSql() and Generator.FormatSelectColumns()Use private static methods to generate test JSON inputs (e.g., MinimalSchemaJson(), RichConfigJson()). Keep test data as close to real shapes as possible — the JSON must match the deserialization models in SqlPromptBuilder.
Prioritize testing pure/static methods that have no external dependencies. In this codebase:
SqlPromptBuilder.CreateSystemPromptFromJson() — public static, takes JSON stringsGenerator.CleanAndFormatSql() — internal static, sanitizes LLM outputGenerator.FormatSql() — internal static, formats SQLGenerator.FormatSelectColumns() — internal static, formats SELECT columnsSchemaGenerator.Generator.GenerateDatabaseSchemaAsync() requires a live SQL Server connection. Unit tests cannot cover this without a database fixture.
Assert.Contains for structural assertions since the formatting regexes produce complex output.