diff options
Diffstat (limited to 'testing/web-platform/tests/webrtc/RTCRtpSender-setParameters.html')
-rw-r--r-- | testing/web-platform/tests/webrtc/RTCRtpSender-setParameters.html | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/testing/web-platform/tests/webrtc/RTCRtpSender-setParameters.html b/testing/web-platform/tests/webrtc/RTCRtpSender-setParameters.html new file mode 100644 index 0000000000..0d09495ac1 --- /dev/null +++ b/testing/web-platform/tests/webrtc/RTCRtpSender-setParameters.html @@ -0,0 +1,41 @@ +<!doctype html> +<meta charset=utf-8> +<title>RTCRtpSender.prototype.setParameters</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> + 'use strict'; + + // Test is based on the following editor draft: + // https://w3c.github.io/webrtc-pc/archives/20170605/webrtc.html + + /* + 5.2. setParameters + 6. If transceiver.stopped is true, abort these steps and return a promise + rejected with a newly created InvalidStateError. + */ + promise_test(t => { + const pc = new RTCPeerConnection(); + t.add_cleanup(() => pc.close()); + const transceiver = pc.addTransceiver('audio'); + const { sender } = transceiver; + + const param = sender.getParameters(); + transceiver.stop(); + + return promise_rejects_dom(t, 'InvalidStateError', + sender.setParameters(param)); + }, `setParameters() when transceiver is stopped should reject with InvalidStateError`); + + promise_test(t => { + const pc = new RTCPeerConnection(); + t.add_cleanup(() => pc.close()); + const sender = pc.addTransceiver('audio').sender; + const param = sender.getParameters(); + sender.setParameters(param); + + return promise_rejects_dom(t, 'InvalidStateError', + sender.setParameters(param)); + }, `setParameters() with already used parameters should reject with InvalidStateError`); + +</script> |