tor-browser

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

audiobuffer-getChannelData.html (2071B)


      1 <!DOCTYPE html>
      2 <html>
      3  <head>
      4    <title>
      5      Test AudioBuffer.getChannelData() Returns the Same Object
      6    </title>
      7    <script src="/resources/testharness.js"></script>
      8    <script src="/resources/testharnessreport.js"></script>
      9    <script src="/webaudio/resources/audit-util.js"></script>
     10    <script src="/webaudio/resources/audit.js"></script>
     11    <script src="/webaudio/resources/audioparam-testing.js"></script>
     12  </head>
     13  <body>
     14    <script id="layout-test-code">
     15      let sampleRate = 48000;
     16      let renderDuration = 0.5;
     17 
     18      let audit = Audit.createTaskRunner();
     19 
     20      audit.define('buffer-eq', (task, should) => {
     21        // Verify that successive calls to getChannelData return the same
     22        // buffer.
     23        let context = new AudioContext();
     24        let channelCount = 2;
     25        let frameLength = 1000;
     26        let buffer =
     27            context.createBuffer(channelCount, frameLength, context.sampleRate);
     28 
     29        for (let c = 0; c < channelCount; ++c) {
     30          let a = buffer.getChannelData(c);
     31          let b = buffer.getChannelData(c);
     32 
     33          let message = 'buffer.getChannelData(' + c + ')';
     34          should(a === b, message + ' === ' + message).beEqualTo(true);
     35        }
     36 
     37        task.done();
     38      });
     39 
     40      audit.define('buffer-not-eq', (task, should) => {
     41        let context = new AudioContext();
     42        let channelCount = 2;
     43        let frameLength = 1000;
     44        let buffer1 =
     45            context.createBuffer(channelCount, frameLength, context.sampleRate);
     46        let buffer2 =
     47            context.createBuffer(channelCount, frameLength, context.sampleRate);
     48        let success = true;
     49 
     50        for (let c = 0; c < channelCount; ++c) {
     51          let a = buffer1.getChannelData(c);
     52          let b = buffer2.getChannelData(c);
     53 
     54          let message = 'getChannelData(' + c + ')';
     55          should(a === b, 'buffer1.' + message + ' === buffer2.' + message)
     56                  .beEqualTo(false) &&
     57              success;
     58        }
     59 
     60        task.done();
     61      });
     62 
     63      audit.run();
     64    </script>
     65  </body>
     66 </html>