feat(ui): ios ui run + enable WDA/DeviceKit UI command e2e #1499
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
| on: | |
| pull_request: | |
| name: Unit tests | |
| jobs: | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install Go | |
| uses: actions/setup-go@v6 | |
| with: | |
| go-version-file: go.mod | |
| - name: Install libusb | |
| run: sudo apt-get update && sudo apt-get install -y libusb-1.0-0-dev | |
| - name: Run go vet | |
| run: go vet ./... | |
| test_on_windows: | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install Go | |
| uses: actions/setup-go@v6 | |
| with: | |
| go-version-file: go.mod | |
| cache: true | |
| #- name: Install Libusb | |
| # run: choco install | |
| - name: Build executable | |
| run: go build | |
| #- name: Run unit tests | |
| # run: go test -v ./... | |
| test_on_linux: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install Go | |
| uses: actions/setup-go@v6 | |
| with: | |
| go-version-file: go.mod | |
| cache: true | |
| - name: update | |
| run: sudo apt-get update | |
| - name: install libusb | |
| run: sudo apt-get install -y libusb-1.0-0-dev | |
| - name: Build executable | |
| run: make build --trace | |
| - name: Run unit tests | |
| # -race so the data-race detector runs in CI (e.g. the TunnelManager | |
| # mutex test). cgo is already on for libusb, so the detector is supported. | |
| run: go test -race ./... | |
| - name: Verify code formatting | |
| run: test -z "$(gofmt -l .)" | |
| # Run the real-device e2e suite only after all unit jobs pass, and only for | |
| # same-repo PRs. Fork PRs can't access the device repo vars and must not run | |
| # untrusted code on the self-hosted device runners — a maintainer triggers | |
| # those with a "/test-devices" comment (see device-tests-comment.yml). | |
| real-device: | |
| name: Real device tests | |
| needs: [lint, test_on_windows, test_on_linux] | |
| if: github.event.pull_request.head.repo.full_name == github.repository | |
| uses: ./.github/workflows/real-device.yml | |
| # Pass repo secrets (App Store Connect signing keys etc.) into the reusable | |
| # workflow so the opt-in signing e2e actually runs instead of skipping. | |
| secrets: inherit | |
| permissions: | |
| contents: read |