forgejo/.forgejo
Earl Warren 7d3fcde71c chore: collect coverage using GOCOVERDIR (#9004)
- run all unit tests and integration tests in sequence in the same job
- upload the coverage data as an artifact to the run
- only run via dispatch because it is very long
- arguments are used to select which unit or integration tests to focus on

Refs https://go.dev/blog/integration-test-coverage

### Testing

- Run this workflow via workflow_dispatch (see https://codeberg.org/forgejo-integration/forgejo/actions/runs/11889)
- Download the coverage information (see https://codeberg.org/forgejo-integration/forgejo/actions/runs/11889/artifacts/coverage)
- Download the coverage information from an end-to-end cascade test (see https://code.forgejo.org/forgejo/end-to-end/actions/runs/3961)
- Unzip them in a the `coverage/data` sub-directory at the root of the Forgejo source tree
    ```sh
    $ ls coverage/data
    actions  coverage-actions.zip  coverage-federation.zip  coverage-tests.zip  coverage-upgrade.zip  federation  tests  upgrade
    ```
- Display the coverage percentage
```
$ make coverage-show-percentage
...
forgejo.org/services/wiki/wiki_path.go:96:					WebPathToGitPath						81.8%
forgejo.org/services/wiki/wiki_path.go:113:					GitPathToWebPath						90.0%
forgejo.org/services/wiki/wiki_path.go:129:					WebPathToUserTitle						71.4%
forgejo.org/services/wiki/wiki_path.go:140:					WebPathToURLPath						100.0%
forgejo.org/services/wiki/wiki_path.go:144:					WebPathFromRequest						100.0%
forgejo.org/services/wiki/wiki_path.go:151:					UserTitleToWebPath						80.0%
forgejo.org/services/wiki/wiki_path.go:163:					ToWikiPageMetaData						100.0%
forgejo.org/tests/integration/api_repo_file_helpers.go:18:			createFileInBranch						100.0%
...
total:										(statements)							63.9%
```

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/9004
Reviewed-by: jerger <jerger@noreply.codeberg.org>
Co-authored-by: Earl Warren <contact@earl-warren.org>
Co-committed-by: Earl Warren <contact@earl-warren.org>
2025-08-26 10:10:46 +02:00
..
issue_template chore: update security option in issue templates (#8268) 2025-06-24 19:02:12 +02:00
testdata/build-release Update data.forgejo.org/oci/alpine Docker tag to v3.22 (forgejo) (#8218) 2025-06-18 12:47:18 +02:00
workflows chore: collect coverage using GOCOVERDIR (#9004) 2025-08-26 10:10:46 +02:00
workflows-composite fix(ci): add install-minimum-git-version helper for workflows (#8345) 2025-06-29 13:04:28 +02:00
cascading-pr-end-to-end
cascading-release-end-to-end
pull_request_template.md Replace Developer Guide links with the new Contributor Guide one for PR template and release workflows comments. 2024-08-26 14:29:10 +03:00