Skip to content

Add Self Validation section to README.md and User Guide#51

Merged
Malcolmnixon merged 6 commits intomainfrom
copilot/add-self-validation-section
Mar 4, 2026
Merged

Add Self Validation section to README.md and User Guide#51
Malcolmnixon merged 6 commits intomainfrom
copilot/add-self-validation-section

Conversation

Copy link
Contributor

Copilot AI commented Mar 3, 2026

Pull Request

Description

README.md lacked documentation on what --validate actually does. Adds a Self Validation section to README.md and restructures the User Guide with a dedicated Self-Validation section, both formatted to match the SpdxTool documentation style. Also updates Validation.cs to print test names instead of friendly descriptions in the console/log output.

Validation.cs changes:

  • Self-validation output now prints the actual test names (TemplateTool_VersionDisplay, TemplateTool_HelpDisplay) instead of friendly descriptions (Version Display Test, Help Display Test)
  • Pass/fail lines now read e.g. ✓ TemplateTool_VersionDisplay - Passed

README.md changes:

  • A code block showing the actual validation report output (header, system information table, per-test pass/fail lines using test names, and summary counts)
  • The two self-validation tests listed by bold test name with a one-line proof statement:
    • TemplateTool_VersionDisplay--version outputs a valid version string
    • TemplateTool_HelpDisplay--help outputs usage and options information
  • A link to the User Guide for more details
  • A note that validation failure exits with a non-zero exit code

docs/guide/guide.md changes:

  • Merged the previous "Run Self-Validation" and "Self-Validation Tests" sections into a single ## Self-Validation section with subsections matching the SpdxTool guide style:
    • ### Running Validation — commands to run validation and save results
    • ### Validation Report — description of report contents with an example code block showing actual output (using test names)
    • ### Validation Tests — bullet list with bold test names and one-line proof statements

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Code quality improvement

Related Issues

Pre-Submission Checklist

Before submitting this pull request, ensure you have completed the following:

Build and Test

  • Code builds successfully: dotnet build --configuration Release
  • All unit tests pass: dotnet test --configuration Release
  • Self-validation tests pass:
    dotnet run --project src/DemaConsulting.TemplateDotNetTool --configuration Release --framework net10.0
    --no-build -- --validate
  • Code produces zero warnings

Code Quality

  • Code formatting is correct: dotnet format --verify-no-changes
  • New code has appropriate XML documentation comments
  • Static analyzer warnings have been addressed

Quality Checks

Please run the following checks before submitting:

  • Spell checker passes: cspell "**/*.{md,cs}"
  • Markdown linter passes: markdownlint "**/*.md"
  • YAML linter passes: yamllint .

Testing

  • Added unit tests for new functionality
  • Updated existing tests if behavior changed
  • All tests follow the AAA (Arrange, Act, Assert) pattern
  • Test coverage is maintained or improved

Documentation

  • Updated README.md (if applicable)
  • Updated ARCHITECTURE.md (if applicable)
  • Added code examples for new features (if applicable)
  • Updated requirements.yaml (if applicable)

Additional Notes

Both README.md and the User Guide are formatted to mirror the SpdxTool documentation style. The validation output in Validation.cs now uses actual test names (TemplateTool_VersionDisplay, TemplateTool_HelpDisplay) so the console/log output, README example, and user guide example all match the implementation exactly.


🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copilot AI changed the title [WIP] Add self validation section to README.md Add Self Validation section to README.md Mar 3, 2026
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copilot AI changed the title Add Self Validation section to README.md Add Self Validation section to README.md and User Guide Mar 3, 2026
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
…tyle

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
@Malcolmnixon Malcolmnixon marked this pull request as ready for review March 4, 2026 00:24
@Malcolmnixon
Copy link
Contributor

@copilot Ah, I just realized the self-validation Context output (console and/or log) prints descriptions of the tests rather than the test name. It should really print the test names instead. Please update the Validation code to print just the test name (no need for description) and also update the README.md and user-guide documentation to match.

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Mar 4, 2026

@copilot Ah, I just realized the self-validation Context output (console and/or log) prints descriptions of the tests rather than the test name. It should really print the test names...

Done in 065a655Validation.cs now prints ✓ TemplateTool_VersionDisplay - Passed and ✓ TemplateTool_HelpDisplay - Passed (using the actual test names). The code block examples in README.md and docs/guide/guide.md have been updated to match.

@Malcolmnixon Malcolmnixon merged commit d590e86 into main Mar 4, 2026
11 checks passed
@Malcolmnixon Malcolmnixon deleted the copilot/add-self-validation-section branch March 4, 2026 00:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants