Update inputs page #251
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Run Tests | |
| on: | |
| push: | |
| branches: | |
| - '**' | |
| pull_request: | |
| branches: | |
| - '**' | |
| permissions: | |
| contents: read | |
| jobs: | |
| test-go: | |
| name: Test Go Backend | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.1' | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: 1.3.3 | |
| - name: Download dependencies | |
| run: go mod download | |
| - name: Build frontend (required for Go embed) | |
| working-directory: ./web | |
| run: | | |
| bun install | |
| bun run build | |
| - name: Run Go tests | |
| run: go test -v -race -coverprofile=coverage.out -covermode=atomic ./... | |
| - name: Verify binary builds | |
| run: go build -o /dev/null . | |
| - name: Display test coverage | |
| run: go tool cover -func=coverage.out | |
| test-web: | |
| name: Test Web Frontend | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: 1.3.3 | |
| - name: Cache Bun dependencies | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.bun/install/cache | |
| web/node_modules | |
| key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-bun- | |
| - name: Install web dependencies | |
| working-directory: ./web | |
| run: bun install | |
| - name: Run type checking | |
| working-directory: ./web | |
| run: bun run type-check | |
| - name: Run linter | |
| working-directory: ./web | |
| run: bun run lint | |
| - name: Run JavaScript tests | |
| working-directory: ./web | |
| run: bun run test | |
| - name: Build web frontend | |
| working-directory: ./web | |
| run: bun run build | |
| test-summary: | |
| name: Test Summary | |
| needs: [test-go, test-web] | |
| runs-on: ubuntu-latest | |
| if: always() | |
| steps: | |
| - name: Check test results | |
| run: | | |
| if [ "${{ needs.test-go.result }}" != "success" ] || [ "${{ needs.test-web.result }}" != "success" ]; then | |
| echo "Tests failed!" | |
| exit 1 | |
| fi | |
| echo "All tests passed!" |