github.com/KEINOS/go-countline@v1.1.0/.github/workflows/platform-test.yaml (about) 1 # This workflow runs the unit test (`go test ./...`) on vaious platforms, 2 # such as: Linux, macOS and Windows. 3 name: Test on macOS/Win/Linux 4 5 on: 6 workflow_dispatch: 7 pull_request: 8 branches: 9 - main 10 11 jobs: 12 coverage: 13 name: Platform test 14 15 strategy: 16 matrix: 17 platform: [ubuntu-latest, macos-latest, windows-latest] 18 19 runs-on: ${{ matrix.platform }} 20 21 steps: 22 - uses: actions/checkout@v3 23 24 - uses: actions/setup-go@v3 25 with: 26 go-version: '^1.16' 27 28 - name: Use Cache 29 uses: actions/cache@v3 30 with: 31 path: ~/go/pkg/mod 32 key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} 33 restore-keys: | 34 ${{ runner.os }}-go- 35 36 - name: Download Modules 37 if: steps.cache.outputs.cache-hit != 'true' 38 run: go mod download 39 40 - name: Run unit tests 41 run: | 42 go mod download 43 go generate ./... 44 go test -race ./...