Skip to content

[Feature]: Program Behavior #23

@Malcolmnixon

Description

@Malcolmnixon

Problem Statement

The ReqStream Program "placeholder" should be replaced with a real implementation.

Proposed Solution

Update the Program.cs to:

  • Have the Main entry point create a Context instance from the arguments and then call a new Run(Context) method. Note that expected exceptions (ArgumentException and possibly InvalidOperationException) should be printed to the console and the program should exit with an exit-code of 1. All other exceptions should also be printed to the console and then re-thrown to cause the program to terminate and event-logs to be generate.
  • The Run(Context) method should be public-static so that it can be used by self-validation and unit tests. It should process the commands based on priority. For example:
    • Version query results in printing the application (the assembly containing the Program class) semantic version and then terminating with no error.
    • Help results in printing a usage information and then terminating with no error.
    • Self-Validation should be processed next - for now it can remain unimplemented.
    • Finally requirements processing should be performed - creating a Requirements instance from the Requirements files, exporting if requested, creating a TraceMatrix from the Test files, and exporting if requested.

Alternatives Considered

No response

Additional Context

No response

Priority

High - Blocking current work

Contribution

  • I would be willing to submit a PR for this feature

Code of Conduct

  • I agree to follow this project's Code of Conduct

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