tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

RTCRtpReceiver-jitterBufferTarget.html (5178B)


      1 <!DOCTYPE html>
      2 <meta charset="utf-8">
      3 <title>Tests for RTCRtpReceiver-jitterBufferTarget attribute</title>
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <body>
      7 <script>
      8 'use strict'
      9 
     10 test(t => {
     11  const pc = new RTCPeerConnection();
     12  t.add_cleanup(() => pc.close());
     13  const {receiver} = pc.addTransceiver('audio', {direction:'recvonly'});
     14  assert_equals(receiver.jitterBufferTarget, null);
     15 }, 'audio jitterBufferTarget is null by default');
     16 
     17 test(t => {
     18  const pc = new RTCPeerConnection();
     19  t.add_cleanup(() => pc.close());
     20  const {receiver} = pc.addTransceiver('audio', {direction:'recvonly'});
     21  assert_equals(receiver.jitterBufferTarget, null);
     22  receiver.jitterBufferTarget = 500;
     23  assert_equals(receiver.jitterBufferTarget, 500);
     24 }, 'audio jitterBufferTarget accepts posititve values');
     25 
     26 test(t => {
     27  const pc = new RTCPeerConnection();
     28  t.add_cleanup(() => pc.close());
     29  const {receiver} = pc.addTransceiver('audio', {direction:'recvonly'});
     30  assert_equals(receiver.jitterBufferTarget, null);
     31  receiver.jitterBufferTarget = 4000;
     32  assert_throws_js(RangeError, () => {
     33    receiver.jitterBufferTarget = 4001;
     34  }, 'audio jitterBufferTarget doesn\'t accept values greater than 4000 milliseconds');
     35  assert_equals(receiver.jitterBufferTarget, 4000);
     36 }, 'audio jitterBufferTarget accepts values up to 4000 milliseconds');
     37 
     38 test(t => {
     39  const pc = new RTCPeerConnection();
     40  t.add_cleanup(() => pc.close());
     41  const {receiver} = pc.addTransceiver('audio', {direction:'recvonly'});
     42  assert_equals(receiver.jitterBufferTarget, null);
     43  receiver.jitterBufferTarget = 700;
     44  assert_throws_js(RangeError, () => {
     45    receiver.jitterBufferTarget = -500;
     46  }, 'audio jitterBufferTarget doesn\'t accept negative values');
     47  assert_equals(receiver.jitterBufferTarget, 700);
     48 }, 'audio jitterBufferTarget returns last valid value on throw');
     49 
     50 test(t => {
     51  const pc = new RTCPeerConnection();
     52  t.add_cleanup(() => pc.close());
     53  const {receiver} = pc.addTransceiver('audio', {direction:'recvonly'});
     54  assert_equals(receiver.jitterBufferTarget, null);
     55  receiver.jitterBufferTarget = 0;
     56  assert_equals(receiver.jitterBufferTarget, 0);
     57 }, 'audio jitterBufferTarget allows zero value');
     58 
     59 test(t => {
     60  const pc = new RTCPeerConnection();
     61  t.add_cleanup(() => pc.close());
     62  const {receiver} = pc.addTransceiver('audio', {direction:'recvonly'});
     63  assert_equals(receiver.jitterBufferTarget, null);
     64  receiver.jitterBufferTarget = 500;
     65  assert_equals(receiver.jitterBufferTarget, 500);
     66  receiver.jitterBufferTarget = null;
     67  assert_equals(receiver.jitterBufferTarget, null);
     68 }, 'audio jitterBufferTarget allows to reset value to null');
     69 
     70 test(t => {
     71  const pc = new RTCPeerConnection();
     72  t.add_cleanup(() => pc.close());
     73  const {receiver} = pc.addTransceiver('video', {direction:'recvonly'});
     74  assert_equals(receiver.jitterBufferTarget, null);
     75 }, 'video jitterBufferTarget is null by default');
     76 
     77 test(t => {
     78  const pc = new RTCPeerConnection();
     79  t.add_cleanup(() => pc.close());
     80  const {receiver} = pc.addTransceiver('video', {direction:'recvonly'});
     81  assert_equals(receiver.jitterBufferTarget, null);
     82  receiver.jitterBufferTarget = 500;
     83  assert_equals(receiver.jitterBufferTarget, 500);
     84 }, 'video jitterBufferTarget accepts posititve values');
     85 
     86 test(t => {
     87  const pc = new RTCPeerConnection();
     88  t.add_cleanup(() => pc.close());
     89  const {receiver} = pc.addTransceiver('video', {direction:'recvonly'});
     90  assert_equals(receiver.jitterBufferTarget, null);
     91  receiver.jitterBufferTarget = 4000;
     92  assert_throws_js(RangeError, () => {
     93    receiver.jitterBufferTarget = 4001;
     94  }, 'video jitterBufferTarget doesn\'t accept values greater than 4000 milliseconds');
     95  assert_equals(receiver.jitterBufferTarget, 4000);
     96 }, 'video jitterBufferTarget accepts values up to 4000 milliseconds');
     97 
     98 test(t => {
     99  const pc = new RTCPeerConnection();
    100  t.add_cleanup(() => pc.close());
    101  const {receiver} = pc.addTransceiver('video', {direction:'recvonly'});
    102  assert_equals(receiver.jitterBufferTarget, null);
    103  receiver.jitterBufferTarget = 700;
    104  assert_throws_js(RangeError, () => {
    105    receiver.jitterBufferTarget = -500;
    106  }, 'video jitterBufferTarget doesn\'t accept negative values');
    107  assert_equals(receiver.jitterBufferTarget, 700);
    108 }, 'video jitterBufferTarget returns last valid value');
    109 
    110 test(t => {
    111  const pc = new RTCPeerConnection();
    112  t.add_cleanup(() => pc.close());
    113  const {receiver} = pc.addTransceiver('video', {direction:'recvonly'});
    114  assert_equals(receiver.jitterBufferTarget, null);
    115  receiver.jitterBufferTarget = 0;
    116  assert_equals(receiver.jitterBufferTarget, 0);
    117 }, 'video jitterBufferTarget allows zero value');
    118 
    119 test(t => {
    120  const pc = new RTCPeerConnection();
    121  t.add_cleanup(() => pc.close());
    122  const {receiver} = pc.addTransceiver('video', {direction:'recvonly'});
    123  assert_equals(receiver.jitterBufferTarget, null);
    124  receiver.jitterBufferTarget = 500;
    125  assert_equals(receiver.jitterBufferTarget, 500);
    126  receiver.jitterBufferTarget = null;
    127  assert_equals(receiver.jitterBufferTarget, null);
    128 }, 'video jitterBufferTarget allows to reset value to null');
    129 </script>
    130 </body>