https://github.com/web-platform-tests/wpt
Raw File
Tip revision: 85f064aac43a66ea301553d6873a499aab3cf340 authored by Marcos Cáceres on 21 March 2018, 02:45:39 UTC
Edge doesn't do object spread yet
Tip revision: 85f064a
RTCDTMFSender-ontonechange-long.https.html
<!doctype html>
<meta charset=utf-8>
<meta name="timeout" content="long">
<title>RTCDTMFSender.prototype.ontonechange (Long Timeout)</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="RTCPeerConnection-helper.js"></script>
<script src="RTCDTMFSender-helper.js"></script>
<script>
  'use strict';

  // Test is based on the following editor draft:
  // https://w3c.github.io/webrtc-pc/archives/20170605/webrtc.html

  // The following helper functions are called from RTCDTMFSender-helper.js
  //   test_tone_change_events

  /*
    7.  Peer-to-peer DTMF
      partial interface RTCRtpSender {
        readonly attribute RTCDTMFSender? dtmf;
      };

      interface RTCDTMFSender : EventTarget {
        void insertDTMF(DOMString tones,
                        optional unsigned long duration = 100,
                        optional unsigned long interToneGap = 70);
                 attribute EventHandler ontonechange;
        readonly attribute DOMString    toneBuffer;
      };

      [Constructor(DOMString type, RTCDTMFToneChangeEventInit eventInitDict)]
      interface RTCDTMFToneChangeEvent : Event {
        readonly attribute DOMString tone;
      };
   */

  /*
    7.2.  insertDTMF
      8. If the value of the duration parameter is less than 40, set it to 40.
         If, on the other hand, the value is greater than 6000, set it to 6000.
   */
  test_tone_change_events((t, dtmfSender) => {
    dtmfSender.insertDTMF('A', 8000, 70);
  }, [
    ['A', '', 0],
    ['', '', 6070]
  ],'insertDTMF with duration greater than 6000 should be clamped to 6000');

</script>
back to top