
Tests that the scrubber is dropped when a video is too narrow and restored when made wider.

EXPECTED (video.controls != 'null') OK
EVENT(canplaythrough)
EXPECTED (shadowRoot = internals.shadowRoot(video) != 'null') OK
EXPECTED (timelineContainer = mediaControlsElement(shadowRoot.firstChild, "-webkit-media-controls-timeline-container") != 'null') OK
Initital test at width = 200px
EXPECTED (video.offsetWidth == '200') OK
EXPECTED (timelineChildrenAreDropped() == 'true') OK
EXPECTED (timelineChildrenAreNotDisplayed() == 'true') OK
Second test at width = 500px
EXPECTED (video.offsetWidth == '500') OK
EXPECTED (timelineChildrenAreDropped() == 'false') OK
EXPECTED (timelineChildrenAreNotDisplayed() == 'false') OK
END OF TEST

