
FAIL Test seek starts on duration truncation below currentTime The object is in an invalid state.
FAIL Test appendBuffer completes previous seek to truncated duration The object is in an invalid state.
FAIL Test endOfStream completes previous seek to truncated duration The object is in an invalid state.
PASS Test setting same duration multiple times does not fire duplicate durationchange
PASS Test setting the duration to less than the highest starting presentation timestamp will throw
PASS Truncating the duration throws an InvalidStateError exception when new duration is less than the highest buffered range start time of one of the track buffers
PASS Truncating the duration throws an InvalidStateError exception when new duration is less than a buffered coded frame presentation time
PASS Increasing the duration does not trigger any SourceBuffer update
PASS Increasing the duration during media playback does not trigger any SourceBuffer update

