Test adding tracks to inactive MediaStream.

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


PASS stream1.getAudioTracks().length is 1
PASS stream1.getVideoTracks().length is 1
*** extract audioTrack
*** stop audioTrack
PASS audioTrack.readyState is "ended"
*** construct new 'empty' stream2
PASS stream2.getTracks().length is 0
PASS stream2.active is false
*** add ended audioTrack to stream2
*** schedule continuation of test
*** extract videoTrack (and verify liveness)
PASS videoTrack.readyState is "live"
*** add live videoTrack to stream2
*** stream2 is active again
PASS stream2.active is true
PASS successfullyParsed is true

TEST COMPLETE

