Test adding and removing tracks. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". PASS streamCopy.active is false PASS streamCopy.active is true PASS stream1.active is true PASS stream1.getAudioTracks().length is 1 PASS stream1.getVideoTracks().length is 1 PASS stream2.active is true PASS stream2.getAudioTracks().length is 1 PASS stream2.getVideoTracks().length is 1 *** remove an audio track PASS stream1.getAudioTracks().length is 0 PASS stream1.getTrackById(audioTrack.id) is null *** remove a non-existent (already removed) track (should not throw) *** add the track back to the stream *** remove a video track PASS stream1.getVideoTracks().length is 0 PASS stream1.getTrackById(videoTrack.id) is null *** remove a non-existent (already removed) track (should not throw) *** add the track back to the stream *** verify added tracks PASS stream1.getAudioTracks().length is 1 PASS stream1.getVideoTracks().length is 1 PASS stream1.getAudioTracks()[0].kind is audioTrack.kind PASS stream1.getAudioTracks()[0].label is audioTrack.label PASS stream1.getVideoTracks()[0].kind is videoTrack.kind PASS stream1.getVideoTracks()[0].label is videoTrack.label *** try adding a stream's own tracks again (nothing should happen) PASS stream1.getAudioTracks().length is 1 PASS stream1.getVideoTracks().length is 1 *** add tracks from another stream *** verify added tracks PASS stream1.getAudioTracks().length is 2 PASS stream1.getVideoTracks().length is 2 *** remove all tracks, stream will become inactive PASS stream2.getAudioTracks().length is 0 PASS stream2.getVideoTracks().length is 0 PASS stream2.active is false PASS stream2.active is false PASS successfullyParsed is true TEST COMPLETE