Skip to content

Include unit tests in additional functionalities #113

Include unit tests in additional functionalities

Include unit tests in additional functionalities #113

Workflow file for this run

name: Static Analysis
on: [pull_request]
permissions:
contents: read
jobs:
static_analysis:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v2
with:
persist-credentials: false
- uses: WillAbides/[email protected]
with:
go-version: '1.21.x'
- name: Install dependencies
run: |
sudo apt-get update && sudo apt-get install gcc libgl1-mesa-dev libegl1-mesa-dev libgles2-mesa-dev libx11-dev xorg-dev
- name: Install analysis tools
run: |
go install golang.org/x/tools/cmd/goimports@latest
go install github.com/fzipp/gocyclo/cmd/gocyclo@latest
go install honnef.co/go/tools/cmd/[email protected]
- name: Vet
run: go vet -tags ci ./...
- name: Goimports
run: test -z "$(goimports -e -d . | tee /dev/stderr)"
- name: Gocyclo
run: gocyclo -over 30 .
- name: Staticcheck
run: staticcheck ./...
- name: Coverage
run: |
set -e
go test -covermode=atomic -coverprofile=coverage.out -vet=off ./...
coverage=`go tool cover -func coverage.out | grep total | tr -s '\t' | cut -f 3 | grep -o '[^%]*'`
if (( $(echo "$coverage < 63" | bc) )); then echo "Test coverage lowered"; exit 1; fi
- name: PR coverage
uses: shogo82148/actions-goveralls@v1
with:
path-to-profile: coverage.out