CML
    Preparing search index...

    Class CmcdReportRecorder

    Test helper that records CMCD reports from the XHR and fetch transports for assertions in e2e tests. The recorder normalizes each captured request to HttpRequest, so tests are identical regardless of which transport the player uses.

    const recorder = new CmcdReportRecorder()
    recorder.attach({ eventTargetUrls: ['https://events.example.com'] })

    // ... player runs, emits CMCD requests ...
    await fetch('https://cdn.example.com/seg1.m4s?CMCD=sid%3D%22abc%22')
    await fetch('https://cdn.example.com/seg2.m4s?CMCD=sid%3D%22abc%22')

    const segments = await recorder.waitForSegments({ count: 2 })
    equal(segments.length, 2)

    recorder.detach()
    Index

    Constructors

    Methods

    • Install transport patches and start recording CMCD reports. If the recorder is already attached, this call does nothing. The recorder keeps the previous options and silently ignores the new options argument. To re-attach with different options, call detach() first.

      Parameters

      Returns void

    • Discard all recorded reports. Does not affect the attached state.

      Returns void

    • Remove transport patches and stop recording. Rejects any pending wait promises with Error('Recorder detached while waiting').

      Returns void