Skip to content

Live Test Results

16 tests | 1 passed | 15 failed, 2026-05-11 11:13

Platform: ? (http://192.168.1.234:80), version

Summary

Test Description Level Result Checks
test0 Verify infrastructure modules (network, system status) are present; add any that are missing. format ✅ PASS 5/5
test1 Build a Ripples pipeline from scratch: DriverLayer + GridLayout + EffectsLayer + RipplesEffectModule. integration ❌ FAIL 16/18
test2 Add a second EffectsLayer (LinesEffectModule) and verify both effects run simultaneously. integration ❌ FAIL 5/8
test3 Change GridLayout depth then width and verify the pipeline resizes without crashing. behavioral ❌ FAIL 0/10
test4 Verify DeviceDiscoveryModule is running and has discovered at least one peer. integration ❌ FAIL 0/3
test5 Art-Net loopback: ArtNetOut on sender DriverLayer, ArtNetIn on receiver EffectsLayer; verify packets_rx > 0. integration ❌ FAIL 1/12
test6 GET / returns 200 with gzip-encoded HTML body (frontend bundle embedded in firmware). smoke ❌ FAIL 0/3
test7 Two GridLayouts side by side under one DriverLayer: combined extent 8x2, driver ms_per_tick > 0. behavioral ❌ FAIL 0/23
test8 Change SineEffect type twice via REST and verify schema (control set) updates each time; confirm no crash. behavioral ❌ FAIL 4/13
scenario_base_pipeline_32x32 Scenario replay: base-pipeline-32x32 behavioral ❌ FAIL 0/11
scenario_base_pipeline_64x64 Scenario replay: base-pipeline-64x64 behavioral ❌ FAIL 0/13
scenario_base_pipeline_speed Scenario replay: base-pipeline-speed behavioral ❌ FAIL 0/12
scenario_base_pipeline Scenario replay: base-pipeline behavioral ❌ FAIL 0/10
scenario_four_layers Scenario replay: four-layers behavioral ❌ FAIL 0/15
scenario_two_layers Scenario replay: two-layers behavioral ❌ FAIL 0/11
scenario_xmas_tree_3d Scenario replay: xmas-tree-3d behavioral ❌ FAIL 0/9

Scenarios

Scenarios are replayed via REST against a live server. Steps marked measure wait 1+ s for the scheduler window and collect fps and heap from the API.

On PC, fps and heap show as n/a (sub-µs per tick, below float precision; pal::free_heap_kb() returns 0). Meaningful numbers come from ESP32 runs.

Scenario Step fps heap free (KB)
base-pipeline-32x32 add-ripples n/a n/a
base-pipeline-32x32 resize-32h n/a n/a
base-pipeline-64x64 add-ripples n/a n/a
base-pipeline-64x64 resize-32h n/a n/a
base-pipeline-64x64 resize-64h n/a n/a
base-pipeline-speed add-ripples n/a n/a
base-pipeline-speed speed-slow n/a n/a
base-pipeline-speed speed-default n/a n/a
base-pipeline-speed speed-fast n/a n/a
base-pipeline add-status n/a n/a
base-pipeline add-driver n/a n/a
base-pipeline add-ripples n/a n/a
base-pipeline set-speed n/a n/a
four-layers add-ripples n/a n/a
four-layers add-lines n/a n/a
four-layers add-gameoflife n/a n/a
four-layers add-noise n/a n/a
two-layers add-ripples n/a n/a
two-layers add-lines n/a n/a
xmas-tree-3d add-ripples n/a n/a

Failures

test1

  • ❌ grid1 width=10 — got 64
  • ❌ grid1 height=10 — got 32

test2

  • ❌ effects2 ms_per_tick > 0 — ms_per_tick=0.000
  • ❌ ripples1 still running after lines added — checksum=0
  • ❌ driver1 blending two sources, ms_per_tick > 0 — ms_per_tick=0.000

test3

  • ❌ set grid1 depth=5
  • ❌ grid1 depth=5 applied — got None
  • ❌ ripples1 running after depth resize — checksum=0
  • ❌ ripples1 checksum changed (pixel space grew 5×) — before=0 after=0
  • ❌ driver1 running after depth resize
  • ❌ set grid1 width=20
  • ❌ grid1 width=20 applied — got None
  • ❌ ripples1 running after width resize — checksum=0
  • ❌ ripples1 checksum changed (pixel space grew 2×) — before=0 after=0
  • ❌ driver1 running after width resize

test4

  • ❌ discovery1 present
  • ❌ healthReport format ok ('')
  • ❌ at least 1 peer discovered (devices=0) — devices=0 — expected ≥1 (both PC and ESP32 must be running)

test5

  • ❌ add tx_eff
  • ❌ add tx_sine
  • ❌ add tx_drv
  • ❌ add preview_tx as child of tx_drv
  • ❌ add artout
  • ❌ add rx_eff
  • ❌ add artin
  • ❌ add rx_drv
  • ❌ add preview_rx as child of rx_drv
  • ❌ artout sent packets — packets_tx=0
  • ❌ artin received packets (broadcast loopback) — packets_rx=0

test6

  • ❌ GET / returns HTTP 200 — got 0
  • ❌ response body non-empty (frontend bundle present in firmware) — 0 bytes
  • ❌ Content-Encoding: gzip — got ''

test7

  • ❌ add driver7
  • ❌ add preview7 as child of driver7
  • ❌ add grid7a as child of driver7
  • ❌ set grid7a width=4
  • ❌ set grid7a height=2
  • ❌ set grid7a depth=1
  • ❌ set grid7a offsetX=0
  • ❌ add grid7b as child of driver7
  • ❌ set grid7b width=4
  • ❌ set grid7b height=2
  • ❌ set grid7b depth=1
  • ❌ set grid7b offsetX=4
  • ❌ add eff7
  • ❌ add ripples7
  • ❌ driver7 present
  • ❌ grid7a present
  • ❌ grid7b present
  • ❌ eff7 present
  • ❌ ripples7 present
  • ❌ driver7 health parseable — {}
  • ❌ driver7 ms_per_tick > 0 (pipeline running) — ms_per_tick=0.000
  • ❌ eff7 ms_per_tick > 0 — ms_per_tick=0.000
  • ❌ ripples7 producing pixels (checksum non-zero) — checksum=0

test8

  • ❌ add effects_rc
  • ❌ add sine_rc
  • ❌ type=0 baseline: frequency control present
  • ❌ set type=1 (1st change)
  • ❌ type=1 after 1st change: speed control present
  • ❌ set type=0 (2nd change)
  • ❌ type=0 after 2nd change: frequency control present
  • ❌ set type=1 (3rd change)
  • ❌ type=1 after 3rd change: speed control present

scenario_base_pipeline_32x32

  • ❌ add-network: addModule NetworkModule/network1 —
  • ❌ add-sta: addModule WifiStaModule/sta1 —
  • ❌ add-ap: addModule WifiApModule/ap1 —
  • ❌ add-status: addModule SystemStatusModule/sysinfo1 —
  • ❌ add-driver: addModule DriverLayer/driver1 —
  • ❌ add-grid-16: addModule GridLayout/grid1 —
  • ❌ add-preview: addModule PreviewModule/preview1 —
  • ❌ add-effects: addModule EffectsLayer/effects1 —
  • ❌ add-ripples: addModule RipplesEffectModule/ripples1 —
  • ❌ resize-32: setControl grid1.width=32 —
  • ❌ resize-32h: setControl grid1.height=32 —

scenario_base_pipeline_64x64

  • ❌ add-network: addModule NetworkModule/network1 —
  • ❌ add-sta: addModule WifiStaModule/sta1 —
  • ❌ add-ap: addModule WifiApModule/ap1 —
  • ❌ add-status: addModule SystemStatusModule/sysinfo1 —
  • ❌ add-driver: addModule DriverLayer/driver1 —
  • ❌ add-grid-16: addModule GridLayout/grid1 —
  • ❌ add-preview: addModule PreviewModule/preview1 —
  • ❌ add-effects: addModule EffectsLayer/effects1 —
  • ❌ add-ripples: addModule RipplesEffectModule/ripples1 —
  • ❌ resize-32: setControl grid1.width=32 —
  • ❌ resize-32h: setControl grid1.height=32 —
  • ❌ resize-64: setControl grid1.width=64 —
  • ❌ resize-64h: setControl grid1.height=64 —

scenario_base_pipeline_speed

  • ❌ add-network: addModule NetworkModule/network1 —
  • ❌ add-sta: addModule WifiStaModule/sta1 —
  • ❌ add-ap: addModule WifiApModule/ap1 —
  • ❌ add-status: addModule SystemStatusModule/sysinfo1 —
  • ❌ add-driver: addModule DriverLayer/driver1 —
  • ❌ add-grid: addModule GridLayout/grid1 —
  • ❌ add-preview: addModule PreviewModule/preview1 —
  • ❌ add-effects: addModule EffectsLayer/effects1 —
  • ❌ add-ripples: addModule RipplesEffectModule/ripples1 —
  • ❌ speed-slow: setControl ripples1.speed=10 —
  • ❌ speed-default: setControl ripples1.speed=50 —
  • ❌ speed-fast: setControl ripples1.speed=90 —

scenario_base_pipeline

  • ❌ add-network: addModule NetworkModule/network1 —
  • ❌ add-sta: addModule WifiStaModule/sta1 —
  • ❌ add-ap: addModule WifiApModule/ap1 —
  • ❌ add-status: addModule SystemStatusModule/sysinfo1 —
  • ❌ add-driver: addModule DriverLayer/driver1 —
  • ❌ add-grid: addModule GridLayout/grid1 —
  • ❌ add-preview: addModule PreviewModule/preview1 —
  • ❌ add-effects: addModule EffectsLayer/effects1 —
  • ❌ add-ripples: addModule RipplesEffectModule/ripples1 —
  • ❌ set-speed: setControl ripples1.speed=75 —

scenario_four_layers

  • ❌ add-network: addModule NetworkModule/network1 —
  • ❌ add-sta: addModule WifiStaModule/sta1 —
  • ❌ add-ap: addModule WifiApModule/ap1 —
  • ❌ add-status: addModule SystemStatusModule/sysinfo1 —
  • ❌ add-driver: addModule DriverLayer/driver1 —
  • ❌ add-grid: addModule GridLayout/grid1 —
  • ❌ add-preview: addModule PreviewModule/preview1 —
  • ❌ add-effects1: addModule EffectsLayer/effects1 —
  • ❌ add-ripples: addModule RipplesEffectModule/ripples1 —
  • ❌ add-effects2: addModule EffectsLayer/effects2 —
  • ❌ add-lines: addModule LinesEffectModule/lines1 —
  • ❌ add-effects3: addModule EffectsLayer/effects3 —
  • ❌ add-gameoflife: addModule GameOfLifeEffect/gol1 —
  • ❌ add-effects4: addModule EffectsLayer/effects4 —
  • ❌ add-noise: addModule NoiseEffect2D/noise1 —

scenario_two_layers

  • ❌ add-network: addModule NetworkModule/network1 —
  • ❌ add-sta: addModule WifiStaModule/sta1 —
  • ❌ add-ap: addModule WifiApModule/ap1 —
  • ❌ add-status: addModule SystemStatusModule/sysinfo1 —
  • ❌ add-driver: addModule DriverLayer/driver1 —
  • ❌ add-grid: addModule GridLayout/grid1 —
  • ❌ add-preview: addModule PreviewModule/preview1 —
  • ❌ add-effects1: addModule EffectsLayer/effects1 —
  • ❌ add-ripples: addModule RipplesEffectModule/ripples1 —
  • ❌ add-effects2: addModule EffectsLayer/effects2 —
  • ❌ add-lines: addModule LinesEffectModule/lines1 —

scenario_xmas_tree_3d

  • ❌ add-network: addModule NetworkModule/network1 —
  • ❌ add-sta: addModule WifiStaModule/sta1 —
  • ❌ add-ap: addModule WifiApModule/ap1 —
  • ❌ add-status: addModule SystemStatusModule/sysinfo1 —
  • ❌ add-driver: addModule DriverLayer/driver1 —
  • ❌ add-tree: addModule XmasTreeLayout/tree1 —
  • ❌ add-preview: addModule PreviewModule/preview1 —
  • ❌ add-effects: addModule EffectsLayer/effects1 —
  • ❌ add-ripples: addModule RipplesEffectModule/ripples1 —