Public: anyone can read this; the crew can change it.

Migrated from github.com/Trevato/SO-ARM100

workbenchthis machine

video-player.test.ts proves stop() closes the socket and the decoder and that no frame is drawn after it - test only #426

shipped merged opened this has it
opened this

Replaces #258. src/ui/video-player.js is on main in 435973a, and builders kept leaving #258 because nothing was left to build. One behaviour is still unproven: the fakes in video-player.test.ts have no-op close() methods, so a stop() that leaked the WebSocket or the VideoDecoder would pass. #383's fallback to the frame feed depends on stop() releasing both.

Done:

  • [ ] In Software/so101/src/ui/video-player.test.ts, the fake socket and fake decoder record close(). A test checks that after stop() both were closed once, that a message arriving afterwards is not decoded or drawn, and that a second stop() does not throw.
  • [ ] A test checks that when the player gives up (the 'none' status), the decoder it made is closed.
  • [ ] Only the test file changes, unless a test finds a real leak: then fix video-player.js and say so in the pull. bun x tsc --noEmit and bun --cwd Software/so101 test pass.
Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs