mirror of
https://github.com/openglow-org/forgefirm.git
synced 2026-09-29 01:21:16 -07:00
- suite/extsender.py (new module, so no other test's fingerprint moves): exthost.sender-keep-out. A reference package whose service claims the Grbl sender out as it starts, installed with the sender.keep_out grant (and refused without it), on an idle GRBL-mode machine with no sender connected. It checks the holder and the ext: lease of the extension kind, the host's claim file fresh past forgectrl's grace, a sender from the machine's LAN address turned away with the message and one from the loopback admitted, the operator's release (lease gone, network welcomed, the package reading released), a new claim after a restart, and the stale end with the notice after a disable; everything is put back as found. - camera.lid-privacy: the head camera answers the panel's token and the extension host's header with the lid open, and refuses the cloud client's form (no token, no header) and a stream for no local viewer; the lid camera stays refused to everyone. covers gains src/auth.*. - scripts/bench/ctlport_test.py: test_sender_out on the null-sink controller build (Sender(host=) and closed, own_address(), generation()). Proof: forgetest's unit tests pass; the coverage lint passes against the working trees' file lists. Against the current pins it reports src/senderout.* as selecting nothing until forgectrl's pin moves to the revision that adds it, which lands with this. On the bench reference with the suite mounted: exthost.sender-keep-out PASS (first run found the check racing the host's first write; the test now waits for the file and holds past the grace), and camera.lid-privacy passed every check of its body (its hand-back failed only on the controller gated by the privacy advisory's Revision 5 before it was accepted). ctlport_test.py passes in the driver's CI.
36 lines
1.4 KiB
Python
36 lines
1.4 KiB
Python
# Copyright 2026 514 LLC d/b/a OpenGlow
|
|
# Written by Scott Wiederhold
|
|
# https://community.openglow.org
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
"""The acceptance suite: one module per subsystem, imported in display
|
|
order. Each module registers its tests with @catalog.test."""
|
|
|
|
from . import image # noqa: F401,E402
|
|
from . import kernel # noqa: F401,E402
|
|
from . import forgectrl # noqa: F401,E402
|
|
from . import setup # noqa: F401,E402
|
|
from . import setup_dark # noqa: F401,E402
|
|
from . import setup_sheet # noqa: F401,E402
|
|
from . import logs # noqa: F401,E402
|
|
from . import motion # noqa: F401,E402
|
|
from . import cooling # noqa: F401,E402
|
|
from . import laser # noqa: F401,E402
|
|
from . import camera # noqa: F401,E402
|
|
from . import update # noqa: F401,E402
|
|
from . import cloud # noqa: F401,E402
|
|
# Last: it stands on the setup record's consent and on the cloud suite's dark print.
|
|
from . import exthost # noqa: F401,E402
|
|
from . import extcore # noqa: F401,E402
|
|
from . import extcall # noqa: F401,E402
|
|
from . import extdest # noqa: F401,E402
|
|
from . import extlife # noqa: F401,E402
|
|
from . import evmore # noqa: F401,E402
|
|
from . import extcat # noqa: F401,E402
|
|
from . import extmcode # noqa: F401,E402
|
|
from . import extwizard # noqa: F401,E402
|
|
from . import updlock # noqa: F401,E402
|
|
from . import homeoff # noqa: F401,E402
|
|
from . import bedsize # noqa: F401,E402
|
|
from . import extsender # noqa: F401,E402
|