當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript async.PromiseWrapper類代碼示例

本文整理匯總了TypeScript中@angular/facade/src/async.PromiseWrapper的典型用法代碼示例。如果您正苦於以下問題:TypeScript PromiseWrapper類的具體用法?TypeScript PromiseWrapper怎麽用?TypeScript PromiseWrapper使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了PromiseWrapper類的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: readPerfLog

 readPerfLog(): Promise<any> {
   this._commandLog.push('readPerfLog');
   if (this._perfLogs.length > 0) {
     var next = this._perfLogs[0];
     this._perfLogs.shift();
     return PromiseWrapper.resolve(next);
   } else {
     return PromiseWrapper.resolve([]);
   }
 }
開發者ID:chong999,項目名稱:angular,代碼行數:10,代碼來源:perflog_metric_spec.ts

示例2: beginMeasure

 beginMeasure(): Promise<any> {
   var resultPromise = PromiseWrapper.resolve(null);
   if (this._forceGc) {
     resultPromise = resultPromise.then((_) => this._driverExtension.gc());
   }
   return resultPromise.then((_) => this._beginMeasure());
 }
開發者ID:chong999,項目名稱:angular,代碼行數:7,代碼來源:perflog_metric.ts

示例3: endMeasure

  /**
   * Ends measuring.
   */
  endMeasure(restart: boolean): Promise<{[key: string]: any}> {
    let completer = PromiseWrapper.completer<{[key: string]: any}>();
    let adapter = this._wdAdapter;
    let names = StringMapWrapper.keys(this._userMetrics);

    function getAndClearValues() {
      PromiseWrapper.all(names.map(name => adapter.executeScript(`return window.${name}`)))
          .then((values: any[]) => {
            if (values.every(isNumber)) {
              PromiseWrapper.all(names.map(name => adapter.executeScript(`delete window.${name}`)))
                  .then((_: any[]) => {
                    let map = StringMapWrapper.create();
                    for (let i = 0, n = names.length; i < n; i++) {
                      StringMapWrapper.set(map, names[i], values[i]);
                    }
                    completer.resolve(map);
                  }, completer.reject);
            } else {
              TimerWrapper.setTimeout(getAndClearValues, 100);
            }
          }, completer.reject);
    }
    getAndClearValues();
    return completer.promise;
  }
開發者ID:chong999,項目名稱:angular,代碼行數:28,代碼來源:user_metric.ts

示例4: inject

 inject([AsyncTestCompleter], (async) => {
   PromiseWrapper.catchError(aggregate([], {captureFrames: true}), (err): any => {
     expect(() => { throw err; })
         .toThrowError(
             'frame capture requested in benchpress, but no start event was found');
     async.done();
   });
 }));
開發者ID:chong999,項目名稱:angular,代碼行數:8,代碼來源:perflog_metric_spec.ts

示例5: reportMeasureValues

 reportMeasureValues(measureValues: MeasureValues): Promise<any> {
   var formattedValues = this._metricNames.map(metricName => {
     var value = measureValues.values[metricName];
     return ConsoleReporter._formatNum(value);
   });
   this._printStringRow(formattedValues);
   return PromiseWrapper.resolve(null);
 }
開發者ID:chong999,項目名稱:angular,代碼行數:8,代碼來源:console_reporter.ts

示例6: createReporters

 function createReporters(ids: any[]) {
   var r = ReflectiveInjector
               .resolveAndCreate([
                 ids.map(id => { return {provide: id, useValue: new MockReporter(id)}; }),
                 MultiReporter.createBindings(ids)
               ])
               .get(MultiReporter);
   return PromiseWrapper.resolve(r);
 }
開發者ID:chong999,項目名稱:angular,代碼行數:9,代碼來源:multi_reporter_spec.ts

示例7: it

 it('should throw if no end event', inject([AsyncTestCompleter], (async) => {
      PromiseWrapper.catchError(
          aggregate(
              [eventFactory.markStart('frameCapture', 3), eventFactory.instant('frame', 4)],
              {captureFrames: true}),
          (err): any => {
            expect(() => { throw err; }).toThrowError('missing end event for frame capture');
            async.done();
          });
    }));
開發者ID:chong999,項目名稱:angular,代碼行數:10,代碼來源:perflog_metric_spec.ts

示例8: createExtension

 function createExtension(ids: any[], caps) {
   return PromiseWrapper.wrap(() => {
     return ReflectiveInjector
         .resolveAndCreate([
           ids.map((id) => { return {provide: id, useValue: new MockExtension(id)}; }),
           {provide: Options.CAPABILITIES, useValue: caps}, WebDriverExtension.bindTo(ids)
         ])
         .get(WebDriverExtension);
   });
 }
開發者ID:chong999,項目名稱:angular,代碼行數:10,代碼來源:web_driver_extension_spec.ts

示例9: logs

 logs(type) {
   this._log.push(['logs', type]);
   if (type === 'performance') {
     return PromiseWrapper.resolve(this._events.map((event) => {
       return {
         'message': Json.stringify({'message': {'method': this._messageMethod, 'params': event}})
       };
     }));
   } else {
     return null;
   }
 }
開發者ID:chong999,項目名稱:angular,代碼行數:12,代碼來源:chrome_driver_extension_spec.ts


注:本文中的@angular/facade/src/async.PromiseWrapper類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。