Skip to content

[Feature]: Simplify Self-Validation #16

@Malcolmnixon

Description

@Malcolmnixon

Problem Statement

The self-validation tests are only supposed to provide evidence that core product-use functionality is operational.

Proposed Solution

The following self-validation tests are unnecessary:

  • VersionMark_VersionDisplay - while it was a useful placeholder, printing version numbers is sufficiently tested during unit testing.
  • VersionMark_HelpDisplay - while it was a useful placeholder, printing help isn't production-functionality - just a user aid during development.
  • VersionMark_PublishCommandWithoutReport_ReturnsError - this is an error test, and self-validation is supposed to test product-use functionality - this is sufficiently tested in error handling cases
  • VersionMark_PublishCommand_GeneratesMarkdownReport - this looks good, but the naming convention doesn't match the official specification - it should be something like "VersionMark_GeneratesMarkdownReport".
  • VersionMark_PublishCommandWithNoMatchingFiles_ReturnsError - this is another error test which is already sufficiently handled by unit testing
  • VersionMark_PublishCommand_WithUniformVersions_ShowsAllJobs - again this seems superfluous given that we're going to have a "VersionMark_GeneratesMarkdownReport"
  • VersionMark_PublishCommand_WithDifferingVersions_ShowsJobIds - again this is superfluous given "VersionMark_GeneratesMarkdownReport"
  • VersionMark_PublishCommand_WithReportDepth_AdjustsHeadingLevels - again this is superfluous - depth testing is tested by unit testing
  • VersionMark_PublishCommandWithInvalidJson_ReturnsError - this is another error test that should be handled by unit testing.

Additionally I'm not seeing a validation test that demonstrates the capture capability is working - add a test for "VersionMark_CapturesVersions"

The Software Developer agent has instructions around self-validation.

Alternatives Considered

No response

Usage Examples

Benefits

Users are supposed to trust the tools functionality based on the release - the self-validation is just to make sure their environment didn't break the product-use behavior. Having too many tests makes down-stream test linking more complicated than necessary.

Priority

High - Blocking my use case

Willingness to Contribute

Yes, I can submit a pull request

Additional Context

No response

Checklist

  • I have searched existing issues to ensure this is not a duplicate
  • I have provided a clear description of the feature
  • I have explained why this feature would be useful

Metadata

Metadata

Labels

enhancementNew feature or request

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions