27 lines
1.2 KiB
Plaintext
27 lines
1.2 KiB
Plaintext
UI smoke tests
|
|
~~~~~~~~~~~~~~
|
|
|
|
These tests launch each GUI (axis, touchy, gmoccapy, qtdragon) under
|
|
xvfb-run against an existing sim config and verify the GUI starts and
|
|
the NML task is reachable. Phase 1 ("does it start"); functional
|
|
checks (load G-code, jog, MDI) belong in tests/ui-functional/.
|
|
|
|
Each test directory contains:
|
|
test.sh launches the GUI under xvfb-run, runs drive.py
|
|
checkresult examines the captured output for crash markers
|
|
skip skips this test only when xvfb-run is not on the host
|
|
|
|
Shared helpers live in _lib/:
|
|
drive.py common NML driver, prints UI_SMOKE_OK on success
|
|
launch.sh xvfb-run wrapper, signal escalation for shutdown
|
|
cleanup-runtime.sh belt-and-suspenders: kill stray daemons, ipcrm
|
|
shared memory, drop /tmp/linuxcnc.lock
|
|
checkresult.sh shared pass/fail predicate
|
|
skip-if-missing.sh shared skip predicate
|
|
|
|
Skip vs fail policy: the only condition we skip on is xvfb-run absence
|
|
(rare local dev env). Python and gi typelib deps the GUIs need are
|
|
declared in debian/control under !nocheck so apt-get build-dep
|
|
installs them on CI; if they are missing the test should fail loudly
|
|
rather than silently skip, so missing deps surface during review.
|