joaomatossilva / DateTimeExtensions

This project is a merge of several common DateTime operations on the form of extensions to System.DateTime, including natural date difference text (precise and human rounded), holidays and working days calculations on several culture locales.
http://datetimeextensions.azurewebsites.net/
Other
725 stars 306 forks source link

code coverage analysis and automated documentation generation. #186

Open tomolaoke opened 1 month ago

tomolaoke commented 1 month ago

Regards, This might be totally unnecessary but it is just more of like a suggestion.

To extend the workflow with additional steps like code coverage analysis and automated documentation generation, you can add new steps to the existing workflow file. Here's how you can approach it:

Code Coverage Analysis :

Install the code coverage tool of your choice. For example, you can use coverlet.msbuild for .NET projects. [1]

Add a new step to run the code coverage tool after the Test step.

Configure the code coverage tool to generate a report in a specific format (e.g., Cobertura, OpenCover). [2]

Optionally, you can upload the code coverage report as an artifact or publish it to a code coverage service like Codecov or Coveralls.

Example step for running coverlet.msbuild :

Automated Documentation Generation :

Install the documentation generation tool of your choice. For example, you can use docfx.console for .NET projects.

Add a new step to run the documentation generation tool after the Build step.

Configure the documentation tool to generate the documentation in the desired format (e.g., HTML, PDF, Markdown).

Optionally, you can upload the generated documentation as an artifact or publish it to a documentation hosting service like GitHub Pages or Read the Docs.

Example step for running docfx.console :

Here's how the updated workflow might look like with the additional steps:

...

jobs: build:

...

steps:
  # ... (existing steps)

  - name: Test
    run: dotnet test --no-build --configuration Release --verbosity normal

  - name: Code Coverage
    run: |
      dotnet add package coverlet.msbuild
      dotnet test /p:CollectCoverage=true /p:CoverletOutputFormat=opencover

  - uses: actions/upload-artifact@v3
    with:
      name: code-coverage
      path: ./tests/**/coverage.opencover.xml

  - name: Generate Documentation
    run: |
      dotnet add package docfx.console
      docfx docfx.json

  - uses: actions/upload-artifact@v3
    with:
      name: documentation
      path: _site

  # ... (existing steps)

NB: you may need to adjust the configuration and paths based on your project structure and the specific tools you choose to use. Additionally, you might want to consider creating separate workflows for code coverage and documentation generation if they become too complex or have different triggers.

Best Wishes. Tomola Oke Amateur Engineer :)

joaomatossilva commented 1 month ago

if you think that's helpfull, feel free to submit a PR

tomolaoke commented 1 month ago

Regards, oh ok..It's more of like a suggestion still, I am a total newbie to programming languages but improving very fast daily. Thanks for reaching out and I'd send a PR if I feel it's necessary and would improve the repo. in the meantime I'd run over it again and see.

Tomola Oke

On Sun, 4 Aug 2024 at 09:43, Joao Matos Silva @.***> wrote:

if you think that's helpfull, feel free to submit a PR

— Reply to this email directly, view it on GitHub https://github.com/joaomatossilva/DateTimeExtensions/issues/186#issuecomment-2267435385, or unsubscribe https://github.com/notifications/unsubscribe-auth/BJW5ACXQA6HHWHFQT55EYRTZPXSRJAVCNFSM6AAAAABL5E2D22VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENRXGQZTKMZYGU . You are receiving this because you authored the thread.Message ID: @.***>