Skip to content

Test server socket runtime control #78

@rmens

Description

@rmens

Description

The refactor in PR #77 introduced server socket runtime control as the primary method for managing silence detection and source forcing. This needs thorough testing before relying on it in production.

Test plan

Socket connectivity

  • Verify socket file appears at /opt/liquidsoap/socket/liquidsoap.sock on the host
  • Verify socat - UNIX-CONNECT:/opt/liquidsoap/socket/liquidsoap.sock connects successfully
  • Verify socket survives container restart

Silence detection commands

  • silence.status returns enabled on fresh start
  • silence.disable disables silence detection
  • silence.status returns disabled after disable
  • silence.enable re-enables silence detection
  • Verify silence detection actually stops triggering fallback when disabled
  • Verify silence detection resumes triggering fallback when re-enabled

Source forcing commands

  • radio_prod.status returns current mode and active source
  • radio_prod.force studio_a forces Studio A
  • radio_prod.force studio_b forces Studio B
  • radio_prod.force fallback forces emergency fallback
  • radio_prod.force invalid returns error message
  • radio_prod.auto returns to automatic fallback mode
  • radio_prod.skip skips to next available source
  • Verify forced source persists until radio_prod.auto is called

Edge cases

  • Verify state resets to defaults on container restart (silence detection enabled, auto mode)
  • Test socket commands while no studio inputs are connected
  • Test forcing a source that is not currently connected

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions