Skip to content

Player text and CLAIMS for seven effects; KIT_PLANTS across the effects - #233

Merged
bdbarnett merged 11 commits into
mainfrom
tests/claims-seven
Oct 28, 2026
Merged

bdbarnett merged 11 commits into
mainfrom
tests/claims-seven

Conversation

@bdbarnett

@bdbarnett bdbarnett commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

BandPass, Notch, ParametricEQ, Compressor, Overdrive, Exciter and Distortion now carry their player's text in the class docstring. Each claim sentence there is tied to a test by a CLAIMS table. The design notes move to comments. New tests cover what the text claims and nothing tested before: Notch's shallower low centre, Compressor's silence on the same sample, Distortion's full-scale reading, and latency and missing modules for several classes. Exciter's input-ceiling alias test now plays at the levels it names; before, it read -6 dBFS twice.

Twenty-five more effects declare KIT_PLANTS, so the plant check proves their planted faults differ from the clean class and are out of reach of every knob and patch. Beside each table, a comment names the plants left out and why: some show only when a knob moves or on a reset, some change only a reported tail or latency, and some a knob or patch reproduces, so the kit can't tell them from a setting. Compressor, HighPass and ParametricEQ have no plant the kit can judge.

The plant check now reads KIT_PLANTS from the same test module as CLAIMS, so NoiseGate and MultibandCompressor, whose test files aren't named after them, are found. Several test files defined tests or tables after unittest.main(); the guard now ends each file.

Closes #143. Part of #151: DigitalDelay, PingPongDelay and LadderFilter get their tables with #146.

The harmonic notch is as wide in hertz as the first, as the test has
always said; the old text called it half as wide. A new test shows the
notch is a true null at 1 kHz and a hum reducer at 60 Hz.
The characters are described in words; their measured traits and the
three disconfirmed rows move, unchanged, to design-note comments. New
tests: silence in is silence out on the same sample on every patch,
latency is zero, and construction refuses without its two modules.
Every claim sentence is tied to a test. The input-ceiling alias test now
plays at the levels it names; it had read -6 dBFS twice.
…xciter

The full-scale reading is now a test of its own. Each declared plant is
checked to differ from the clean class and to be out of reach of every
knob and patch.
Plants that only change a reported tail, or show only after a reset, are
left out with a note. Six test files defined tests or their CLAIMS table
after unittest.main(), so running them directly missed those; the guard
now ends each file.
NoiseGate's tests are in test_noisegate and MultibandCompressor's in
test_cpython_effects_multiband, so the plant check could never find a
table for either.
Each table declares the plants that differ from the clean class on a
fresh build. A comment beside it names the ones left out: plants that
show only when a knob moves or on a reset, plants that change only a
reported tail or latency, and plants a knob or patch reproduces.
@bdbarnett bdbarnett changed the title Player text and CLAIMS for seven effects; KIT_PLANTS for six Player text and CLAIMS for seven effects; KIT_PLANTS across the effects Oct 28, 2026
@bdbarnett
bdbarnett merged commit c5148b3 into main Oct 28, 2026
7 checks passed
@bdbarnett
bdbarnett deleted the tests/claims-seven branch October 28, 2026 01:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

29 effect classes have no CLAIMS table, and eight more have sentences with no row

1 participant