• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

StaflSystems / openhtf / 38000336077
64%
master: 64%

Build:
Build:
LAST BUILD BRANCH: feature/stop-test-button
DEFAULT BRANCH: master
Ran 09 Oct 2026 10:40PM UTC
Jobs 5
Files 64
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

09 Oct 2026 10:34PM UTC coverage: 64.052% (+2.6%) from 61.479%
38000336077

Pull #1

github

fcheein
Add a Stop test button to the station web UI

Operators can stop a running test from the station page instead of
pressing Ctrl+C in the terminal. The test ends ABORTED and its teardown
phases and output callbacks still run.

- Test.abort(): aborts the running test the way SIGINT does (same
  executor.abort(), same "Abort test executor." log line), but a second
  call does nothing instead of forcibly stopping the process, so a
  double click can't skip teardown. Returns whether it started the abort.
  Backed by TestExecutor.abort_requested and a read-only
  TestState.status.
- Station server: POST /tests/<test_uid>/abort -> 204; 404 for an
  unknown or finished test, 409 if it hasn't started or is already
  stopping. Unlike the other endpoints it sends no CORS headers and only
  takes a JSON request whose Origin, if any, is this server, so another
  web page open on a machine on the network can't stop a test. The
  dashboard (a different port) can't either.
- Web UI: a red "Stop test" button in the Current test header while the
  test is running. It asks for confirmation, then shows "Stopping..."
  disabled; on an error other than 409 it re-enables and flashes the
  error.
- web_gui/dist rebuilt with Node 16 (unchanged sources reproduce the old
  dist byte for byte); README fork notes say how.

Tests: test_descriptor_test.AbortTest (ABORTED with teardown run, second
abort is a no-op during teardown, no running test), and
test/output/servers/station_server_abort_test.py (status codes, origin
and content-type checks, no CORS preflight). Full suite: 521 passed.
Also checked end to end: a StationServer serving this dist, a real test,
and headless Chromium clicking the button -> confirmation, "Stopping...",
later phase skipped, teardown ran, outcome ABORTED.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Pull Request #1: Add a Stop test button to the station web UI

42 of 43 new or added lines in 4 files covered. (97.67%)

4825 of 7533 relevant lines covered (64.05%)

3.2 hits per line

Jobs
ID Job ID Ran Files Coverage
1 python-3.10 - 38000336077.1 09 Oct 2026 10:40PM UTC 64
63.94
GitHub Action Run
2 python-3.13 - 38000336077.2 09 Oct 2026 10:40PM UTC 64
63.94
GitHub Action Run
3 python-3.9 - 38000336077.3 09 Oct 2026 10:40PM UTC 64
64.02
GitHub Action Run
4 python-3.11 - 38000336077.4 09 Oct 2026 10:40PM UTC 64
63.94
GitHub Action Run
5 python-3.12 - 38000336077.5 09 Oct 2026 10:40PM UTC 64
63.94
GitHub Action Run
Source Files on build 38000336077
  • Tree
  • List 64
  • Changed 25
  • Source Changed 0
  • Coverage Changed 25
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #38000336077
  • Pull Request #1
  • PR Base - staging (#12449040583)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc