[videoDecoder-codec-specific.https.any.worker.html?vp8]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.worker.html?h264_avc]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.worker.html?vp9]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.worker.html?h264_annexb]
  expected:
    if (os == "linux") and debug: [OK, CRASH]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.html?vp8]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.html?av1]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.worker.html?av1]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.html?vp9]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.html?h264_avc]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.html?h264_annexb]
  [Test isConfigSupported()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test configure()]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if os == "android": PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if os == "android": PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if os == "android": PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.html?h265_hevc]
  prefs: [dom.media.webcodecs.h265.enabled:true]

  [Test isConfigSupported()]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test configure()]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.worker.html?h265_hevc]
  prefs: [dom.media.webcodecs.h265.enabled:true]

  [Test isConfigSupported()]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test configure()]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.html?h265_annexb]
  prefs: [dom.media.webcodecs.h265.enabled:true]

  [Test isConfigSupported()]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test configure()]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED


[videoDecoder-codec-specific.https.any.worker.html?h265_annexb]
  prefs: [dom.media.webcodecs.h265.enabled:true]

  [Test isConfigSupported()]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test isConfigSupported() with 1080p crop]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test that isConfigSupported() returns a parsed configuration]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test invalid configs]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test configure()]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode a key frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode a non key frame first fails]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Verify reset() suppresses outputs]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test unconfigured VideoDecoder operations]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test closed VideoDecoder operations]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode empty frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Decode corrupt frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Close while decoding corrupt frame]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding after flush]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding a with negative timestamp]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test reset during flush]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test new flush after reset in a flush callback]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test decoding a corrupt frame after reset in a flush callback]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [Test low-latency decoding]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED

  [VideoDecoder decodeQueueSize test]
    expected:
      if (os != "mac") and (os != "linux"): PRECONDITION_FAILED
