Files

1.9 KiB

Open Fixture Library

Søgeflow

  1. Web UI sender POST /api/v1/fixtures/search-ofl?query=<tekst>.
  2. Backend bruger OFL API, eller falder tilbage til lokale testfixtures i test-data/fixtures.
  3. Resultater vises som manufacturer/fixture.

Preview

Preview kaldes via:

POST /api/v1/fixtures/preview-ofl?manufacturer_key=<manufacturer>&fixture_key=<fixture>

Preview returnerer normaliseret fixturedata uden at skrive til lokal fixtureliste.

I UI kan brugeren:

  • åbne preview,
  • se schema-version,
  • se kategorier,
  • vælge og inspicere modes,
  • se kanalindeks, displaynavn, precedence og opløsning.

Import

Import kaldes via:

POST /api/v1/fixtures/import-ofl?manufacturer_key=<manufacturer>&fixture_key=<fixture>

Import:

  • henter rå OFL-data,
  • normaliserer til TuxDMX-format,
  • gemmer resultatet i lokal runtime/cache.

Modevalg

Modevalg bruges i preview til inspektion af kanalstruktur. Importen bevarer alle normaliserede modes i fixturemodellen, så patch/UI senere kan vælge korrekt mode.

Fixture-normalisering

Normalisering sker i backend/app/fixtures/normalize.py:

  • OFL JSON læses ikke direkte af runtime.
  • Hver mode bliver til en stabil intern struktur med:
    • key
    • channel_count
    • channels[]
  • Hver kanal får:
    • index
    • key
    • display_name
    • precedence
    • resolution

Fallback-regel i denne leverance:

  • kanaler med dim i navnet bliver markeret som HTP
  • øvrige kanaler bliver markeret som LTP, medmindre OFL-data allerede angiver noget andet

Offline fallback

Hvis OFL ikke kan nås, søger klienten i lokale fixtures under test-data/fixtures.

Begrænsninger i denne leverance

  • OFL update-diff, warnings og backup før fixturemigration er endnu ikke fuldt implementeret.
  • Runtime persistence til database for importerede fixtures er kun delvist implementeret; preview/import virker i simulator-runtime og kan verificeres via API/UI.