mirror of
https://github.com/gesellix/Bose-SoundTouch.git
synced 2026-09-07 15:07:17 +00:00
#672 added pkg/service/soundtouchweb/frontend_test/*.test.mjs (Node's built-in test runner) but never hooked them into anything: not the Makefile, not any GitHub Actions workflow. They only ran if someone happened to invoke `node --test` manually, so CI would stay green even if isSoundTouch10StereoPair or the DeviceDetail notice markup broke. Added `make test-frontend` and a step in browser-tests.yml (which already runs the Go-side chromedp player tests) to run them on every push/PR, matching the pinned actions/setup-node version already used by update-static-deps.yml. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
58 lines
1.7 KiB
YAML
58 lines
1.7 KiB
YAML
name: Browser Compatibility Tests
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: [main]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
test-browser:
|
|
name: Player browser tests
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
|
|
- name: Set up Go
|
|
uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0
|
|
with:
|
|
go-version-file: "go.mod"
|
|
|
|
- name: Cache Go modules
|
|
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
|
|
with:
|
|
path: |
|
|
~/.cache/go-build
|
|
~/go/pkg/mod
|
|
key: ${{ runner.os }}-go-${{ hashFiles('**/go.mod') }}-${{ hashFiles('**/go.sum') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-go-
|
|
|
|
- name: Download dependencies
|
|
run: go mod download
|
|
|
|
- name: Verify a Chrome/Chromium binary is available
|
|
# chromedp (used by the browsertest-tagged tests) discovers Chrome on
|
|
# PATH or in a standard install location; GitHub's ubuntu-latest
|
|
# runner image ships Google Chrome preinstalled. Fail fast here with a
|
|
# clear message instead of a cryptic chromedp allocator error if that
|
|
# image ever stops including it.
|
|
run: google-chrome --version
|
|
|
|
- name: Run browser-level player compatibility tests
|
|
run: make test-browser
|
|
|
|
- name: Set up Node
|
|
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
|
|
with:
|
|
node-version: '24'
|
|
|
|
- name: Run frontend unit tests
|
|
run: make test-frontend
|