Skip to content
This repository was archived by the owner on Oct 22, 2026. It is now read-only.

GUI: panels by fixture, so a test's name can be its procedure - #8

Closed
jp-pino wants to merge 1 commit into
masterfrom
blueye/fixture-panels
Closed

jp-pino wants to merge 1 commit into
masterfrom
blueye/fixture-panels

Conversation

@jp-pino

@jp-pino jp-pino commented Oct 16, 2026

Copy link
Copy Markdown

For the battery station (BluEye-Robotics/P2-functional-tests): each slot is a fixture, and its test's name should be the procedure it runs ("Full cycle" or "Short cycle"), since Testlog takes a run's procedure from the record's test_name. Until now the GUI used the test name to tell panels apart, so the battery station had to name its tests "Slot 1"…"Slot 4", and Testlog showed the slot as the procedure.

Change

A test started with htf.Test(..., fixture="Slot 3"), which puts the value in the record's metadata:

  • is titled "Slot 3 · Short cycle";
  • is ordered by its fixture, then start time;
  • replaces the finished panel of the same fixture, whatever procedure either one ran, so slot 2 keeps its result until slot 2 starts again.

A test without a fixture is titled, ordered and replaced by its name, exactly as before. TestState.fixture comes from test_record.metadata.fixture, and is null when absent.

Tests

station.service.spec.ts gains two cases:

  • with fixtures, tests are ordered by fixture rather than name, and a finished "Slot 2 · Full cycle" stays while slot 1 runs, then goes when "Slot 2 · Short cycle" starts;
  • without a fixture, a test is replaced by name as before, and fixture is null.

ng test: 43 of 43 pass. dist/ is rebuilt with Node 24.

🤖 Generated with Claude Code

A test started with `htf.Test(..., fixture="Slot 3")` is titled
"Slot 3 · <test name>", and ordered and replaced by its fixture instead of
its name: a finished panel stays until the next test on the same fixture
starts, whatever procedure that one runs. This lets a station with
several fixtures name its tests after their procedure ("Full cycle",
"Short cycle"), which is what Testlog records, while each slot keeps its
column. Tests without a fixture behave as before.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coveralls

Copy link
Copy Markdown

Coverage Report for CI Build 38943015469

Coverage remained the same at 66.335%

Details

  • Coverage remained the same as the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • No coverage regressions found.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 7738
Covered Lines: 5133
Line Coverage: 66.33%
Coverage Strength: 3.32 hits per line

💛 - Coveralls

@jp-pino

jp-pino commented Oct 16, 2026

Copy link
Copy Markdown
Author

Not needed: the battery station keeps the slot as the test name (BluEye-Robotics/P2-functional-tests#255).

@jp-pino jp-pino closed this Oct 16, 2026
@jp-pino
jp-pino deleted the blueye/fixture-panels branch October 16, 2026 18:23
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants