on: pull_request: name: Self-test jobs: self-test: strategy: fail-fast: false matrix: os: ['ubuntu', 'macos', 'windows'] go-version: ['1.16', '1.24'] name: on ${{ matrix.os }} (go ${{ matrix.go-version }}) runs-on: ${{ matrix.os }}-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Set up Go uses: actions/setup-go@v5 with: go-version: ${{ matrix.go-version }} - name: Install gotestfmt uses: ./ with: token: ${{ secrets.GITHUB_TOKEN }} - name: Run gotestfmt working-directory: testdata shell: bash run: | go test -json -v ./... 2>&1 | tee gotest.${{ matrix.os }}.log | gotestfmt - name: Upload test log uses: actions/upload-artifact@v4 if: always() with: name: test-log-${{ matrix.os }}-go${{ matrix.go-version }} path: testdata/gotest.${{ matrix.os }}.log if-no-files-found: error