Home | History | Annotate | Download | only in video_WebRtcMediaRecorder
      1 // Copyright 2015 The Chromium OS Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 'use strict';
      6 
      7 // This function will be used only when we need to wait for data gathering.
      8 function waitDuration(duration) {
      9   return new Promise(function(resolve, reject) {
     10     console.log('Waiting for ', duration.toString(), 'msec');
     11     setTimeout(
     12         function() {
     13           console.log('Done waiting');
     14           resolve();
     15         }, duration);
     16   });
     17 }
     18 
     19 function waitFor(description, predicate) {
     20   return new Promise(function(resolve, reject) {
     21     var startTime = new Date();
     22     console.log('Waiting for', description.toString());
     23     var check = setInterval(function() {
     24       var elapsed = new Date() - startTime;
     25       if (elapsed > 3000) {
     26         startTime = new Date();
     27         console.log('Still waiting for satisfaction of ' +
     28             predicate.toString());
     29       } else if (predicate()) {
     30         clearInterval(check);
     31         resolve();
     32       }
     33     }, 50);
     34   });
     35 }
     36 
     37