You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.8 KiB
62 lines
1.8 KiB
name: Testing |
|
|
|
on: |
|
workflow_dispatch: |
|
push: |
|
branches: |
|
- "main" |
|
pull_request: |
|
|
|
jobs: |
|
check-test-secrets: |
|
name: Check for test secrets |
|
runs-on: ubuntu-22.04 |
|
outputs: |
|
available: ${{ steps.check-test-secrets.outputs.available }} |
|
permissions: |
|
contents: read |
|
|
|
steps: |
|
- name: Check |
|
id: check-test-secrets |
|
run: | |
|
if [ "${{ secrets.CODECOV_TOKEN }}" != '' ]; then |
|
echo "available=true" >> $GITHUB_OUTPUT; |
|
else |
|
echo "available=false" >> $GITHUB_OUTPUT; |
|
fi |
|
|
|
testing: |
|
name: Run tests |
|
if: ${{ startsWith(github.head_ref, 'version_bump_') == false }} |
|
runs-on: ubuntu-22.04 |
|
needs: check-test-secrets |
|
permissions: |
|
checks: write |
|
contents: read |
|
pull-requests: write |
|
|
|
steps: |
|
- name: Check out repo |
|
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 |
|
|
|
- name: Set up .NET |
|
uses: actions/setup-dotnet@6bd8b7f7774af54e05809fcc5431931b3eb1ddee # v4.0.1 |
|
|
|
- name: Test solution |
|
run: dotnet test --configuration Debug --logger "trx;LogFileName=test-results.trx" /p:CoverletOutputFormatter="cobertura" --collect:"XPlat Code Coverage" |
|
|
|
- name: Report test results |
|
uses: dorny/test-reporter@31a54ee7ebcacc03a09ea97a7e5465a47b84aea5 # v1.9.1 |
|
if: ${{ needs.check-test-secrets.outputs.available == 'true' && !cancelled() }} |
|
with: |
|
name: Test Results |
|
path: "**/test-results.trx" |
|
reporter: dotnet-trx |
|
fail-on-error: true |
|
|
|
- name: Upload to codecov.io |
|
uses: codecov/codecov-action@e28ff129e5465c2c0dcc6f003fc735cb6ae0c673 # v4.5.0 |
|
if: ${{ needs.check-test-secrets.outputs.available == 'true' }} |
|
env: |
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
|
|