blob: 8bb7da162ad8a41bbb49e8ce20589fb28f8a401c [file] [log] [blame] [edit]
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Setting remote description and track event</title>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
</head>
<body>
<script>
promise_test(async (test) => {
const localStream = await navigator.mediaDevices.getUserMedia({video:true });
const pc1 = new RTCPeerConnection();
const pc2 = new RTCPeerConnection();
let orderingOfEvents = ""
pc1.addTrack(localStream.getVideoTracks()[0], localStream);
pc2.ontrack = () => { orderingOfEvents += "track;" };
const offer = await pc1.createOffer();
await pc1.setLocalDescription(offer);
orderingOfEvents += "before;";
await pc2.setRemoteDescription(offer);
orderingOfEvents += "after;";
assert_equals(orderingOfEvents, "before;track;after;");
}, "Track event is emitted before setRemoteDescription resolves");
</script>
</body>
</html>