Test MediaStreamTrack stop()

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


*** extract track
PASS track.readyState is "live"
*** store track attributes that should be preserved
kind = track.kind
id = track.id
label = track.label
enabled = track.enabled
readonly = track.readonly
remote = track.remote
muted = track.muted
*** stop track
PASS track.readyState is "ended"
*** compare against stored attribute values
PASS track.kind is kind
PASS track.id is id
PASS track.label is label
PASS track.enabled is enabled
PASS track.readonly is readonly
PASS track.remote is remote
PASS track.muted is muted
*** toggle enable (should now throw)
PASS track.enabled = !track.enabled did not throw exception.
PASS track.enabled is not enabled
PASS successfullyParsed is true

TEST COMPLETE

