-
-
Notifications
You must be signed in to change notification settings - Fork 0
Create integration test project for NetEvolve.CodeBuilder library #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
13bc3b8
to
cdd967c
Compare
… end-to-end tests Co-authored-by: samtrion <3283596+samtrion@users.noreply.github.com>
…hot test placeholders Co-authored-by: samtrion <3283596+samtrion@users.noreply.github.com>
46da82c
to
1df8e44
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR creates a comprehensive integration test project for the NetEvolve.CodeBuilder library, providing end-to-end validation of the code generation capabilities. The integration tests validate real-world scenarios including complete C# class generation, interface creation, conditional content generation, and formatting with different indentation styles.
- Establishes new integration test project with TUnit and Verify.TUnit frameworks
- Implements comprehensive test coverage for complex code generation scenarios
- Adds snapshot testing infrastructure for regression testing
Reviewed Changes
Copilot reviewed 21 out of 21 changed files in this pull request and generated 2 comments.
Show a summary per file
File | Description |
---|---|
tests/NetEvolve.CodeBuilder.Tests.Integration/NetEvolve.CodeBuilder.Tests.Integration.csproj | New test project configuration with TUnit and Verify.TUnit dependencies |
tests/NetEvolve.CodeBuilder.Tests.Integration/CSharpCodeBuilderTests.cs | Main test class definition with TestGroup attribute |
tests/NetEvolve.CodeBuilder.Tests.Integration/CSharpCodeBuilderTests.ComplexGeneration.cs | Tests for complete class and interface generation with XML documentation |
tests/NetEvolve.CodeBuilder.Tests.Integration/CSharpCodeBuilderTests.ConditionalGeneration.cs | Tests for conditional content generation and reflection-based code creation |
tests/NetEvolve.CodeBuilder.Tests.Integration/CSharpCodeBuilderTests.Formatting.cs | Tests for indentation formatting with spaces and tabs |
tests/NetEvolve.CodeBuilder.Tests.Integration/CSharpCodeBuilderTests.SnapshotTests.cs | Snapshot testing implementation for regression testing |
tests/NetEvolve.CodeBuilder.Tests.Integration/Startup.cs | Module initializer for Verify.TUnit configuration |
tests/NetEvolve.CodeBuilder.Tests.Integration/_snapshots/* | Generated snapshot files for test verification |
CodeBuilder.slnx | Solution file updated to include the new test project |
Directory.Packages.props | Added Verify.ParametersHashing and Verify.TUnit package references |
Directory.Build.props | Updated test target frameworks to exclude net6.0 and net7.0 |
src/NetEvolve.CodeBuilder/CSharpCodeBuilder.Documentation.cs | Removed unused System using statement |
tests/NetEvolve.CodeBuilder.Tests.Integration/CSharpCodeBuilderTests.ConditionalGeneration.cs
Show resolved
Hide resolved
Welcome to Codecov 🎉Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests. Thanks for integrating Codecov - We've got you covered ☂️ |
This PR creates a comprehensive integration test project for the NetEvolve.CodeBuilder library following the established folder structure and testing conventions.
Project Structure
The new
NetEvolve.CodeBuilder.Tests.Integration
project is created undertests/
following the folder structure decision (2025-07-10-folder-structure-and-naming-conventions.md):Test Framework & Dependencies
The project uses:
IntegrationTestAttribute
Integration Test Coverage
The integration tests validate end-to-end scenarios including:
Complex Code Generation
Conditional Content Generation
AppendIf
patternsFormatting & Indentation
Example Test
Key Features
CSharpCodeBuilder
instancesVerify.TUnit
snapshot testsAll 7 integration tests pass successfully, validating the complete functionality of the CodeBuilder library's code generation capabilities.
Fixes #12.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.