test: the mock can inject an alternating-sign impulse train on sine
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
be71a1d4bb
commit
d5a9b3c5d5
2 files changed
+41
No files matched your search
@@ -60,6 +60,25 @@ the value is required, and the popover button uses 1000 when the flag was absent
|
||||
The flag is **not** persisted in the session file: persistence of the enable state
|
||||
belongs with `todo.md` item 3, alongside the relative-time toggle.
|
||||
|
||||
`tools/mock_udpstreamer.py` has waveform-injection options used by the probes:
|
||||
|
||||
- `--glitch-at S` / `--glitch-width W` invert the `square` signal for `W` seconds at the
|
||||
start of every square period from stream second `S` onwards — a runt pulse of a known
|
||||
width, which is what a `<` pulse-width trigger and a glitch search are checked against.
|
||||
- `--quiet-at S` freezes `sine` at its held value from stream second `S` onwards, so it
|
||||
stops crossing zero: the dropout trigger's input.
|
||||
- `--spike-every S` / `--spike-amp A` / `--spike-width N` inject an alternating-sign
|
||||
impulse train onto `sine` only — the other four signals (`time`, `square`, `ramp`,
|
||||
`noise`) are untouched, which is what lets a probe compare a spiked channel against a
|
||||
clean one in the same run. Every `S` seconds a spike of `N` samples at amplitude `A` is
|
||||
added to `sine`; the sign alternates per period because a one-signed train is a DC offset
|
||||
a median would partly track rather than reject. `N` is in **samples**, not seconds, so its
|
||||
duration follows `--rate`. `0` (the default for both `S` and `A`) injects nothing, so
|
||||
every existing invocation is unchanged. **`--batch` must stay at or below 1000** with or
|
||||
without these options: 2000 samples × 5 signals × `f64` is 80 kB and exceeds UDP's
|
||||
~65507-byte payload limit, and the mock dies on its first `sendto` with
|
||||
`OSError: [Errno 90] Message too long` while the run still exits 0.
|
||||
|
||||
Run with no `--server` and udpscope asks which source to open: the sessions it has stored, plus a
|
||||
form for a new host. Every probe below passes `--server`, so none of them sees it.
|
||||
|
||||
|
||||
Reference in new issue
Block a user