# step: live compose · wai-rs and live_compose_verify.py # order: 130 # features: live_compose # paths: wai/extensions/live-compose.md # independent: live-compose live python3 -I live-conformance/live_compose_verify.py live-conformance/compose # # wai.live.compose (extensions/live-compose.md): the reference module's unit tests (the # layout over every grid of 1 to 64 tiles stays on its canvas with no tile overlapping # another, the fill modes, the attributes, the mixer) and tests/live_compose.rs (the # committed corpus regenerates byte for byte from its fixed seeds, wai-rs gives every # case its stated outcome, every reason of §10 refuses a case, and §10 lists exactly # the reference's codes); and, in the step of every independent verifier above, the # corpus's second implementation, # live_compose_verify.py, written from the extension's text and sharing no code with # wai-rs, which verifies each room with live_rooms_verify.py, steps through its # lifecycle replay to each instant itself, gives every layout, mix, descriptor, # composition and receipt the same outcome rectangle for rectangle and sample for # sample, and requires every mutated copy of the corpus to fail; standard library # only, run isolated (-I). # # The paths this step brings to the workflow's trigger, and why: # wai/extensions/live-compose.md: tests/live_compose.rs requires this extension's §10 to list the # codes the reference reports, and the registry's wire identifiers test reads its sections. set -euo pipefail (cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --lib live_compose::) (cd wai-rs && cargo test --no-default-features --features "$WAI_FEATURES" --test live_compose)