Skip to content

Update inputs page #251

Update inputs page

Update inputs page #251

Workflow file for this run

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!"