UNPKG

@angular/benchpress

Version:

Benchpress - a framework for e2e performance tests

54 lines 8.6 kB
/** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ import { InjectionToken } from '@angular/core'; import * as fs from 'fs'; export class Options { } Options.SAMPLE_ID = new InjectionToken('Options.sampleId'); Options.DEFAULT_DESCRIPTION = new InjectionToken('Options.defaultDescription'); Options.SAMPLE_DESCRIPTION = new InjectionToken('Options.sampleDescription'); Options.FORCE_GC = new InjectionToken('Options.forceGc'); Options.NO_PREPARE = () => true; Options.PREPARE = new InjectionToken('Options.prepare'); Options.EXECUTE = new InjectionToken('Options.execute'); Options.CAPABILITIES = new InjectionToken('Options.capabilities'); Options.USER_AGENT = new InjectionToken('Options.userAgent'); Options.MICRO_METRICS = new InjectionToken('Options.microMetrics'); Options.USER_METRICS = new InjectionToken('Options.userMetrics'); Options.NOW = new InjectionToken('Options.now'); Options.WRITE_FILE = new InjectionToken('Options.writeFile'); Options.RECEIVED_DATA = new InjectionToken('Options.receivedData'); Options.REQUEST_COUNT = new InjectionToken('Options.requestCount'); Options.CAPTURE_FRAMES = new InjectionToken('Options.frameCapture'); Options.RAW_PERFLOG_PATH = new InjectionToken('Options.rawPerflogPath'); Options.DEFAULT_PROVIDERS = [ { provide: Options.DEFAULT_DESCRIPTION, useValue: {} }, { provide: Options.SAMPLE_DESCRIPTION, useValue: {} }, { provide: Options.FORCE_GC, useValue: false }, { provide: Options.PREPARE, useValue: Options.NO_PREPARE }, { provide: Options.MICRO_METRICS, useValue: {} }, { provide: Options.USER_METRICS, useValue: {} }, { provide: Options.NOW, useValue: () => new Date() }, { provide: Options.RECEIVED_DATA, useValue: false }, { provide: Options.REQUEST_COUNT, useValue: false }, { provide: Options.CAPTURE_FRAMES, useValue: false }, { provide: Options.WRITE_FILE, useValue: writeFile }, { provide: Options.RAW_PERFLOG_PATH, useValue: null } ]; function writeFile(filename, content) { return new Promise(function (resolve, reject) { fs.writeFile(filename, content, (error) => { if (error) { reject(error); } else { resolve(); } }); }); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uX29wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9iZW5jaHByZXNzL3NyYy9jb21tb25fb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBRXpCLE1BQU0sT0FBTyxPQUFPOztBQUNYLGlCQUFTLEdBQUcsSUFBSSxjQUFjLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUNuRCwyQkFBbUIsR0FBRyxJQUFJLGNBQWMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0FBQ3ZFLDBCQUFrQixHQUFHLElBQUksY0FBYyxDQUFDLDJCQUEyQixDQUFDLENBQUM7QUFDckUsZ0JBQVEsR0FBRyxJQUFJLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBQ2pELGtCQUFVLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO0FBQ3hCLGVBQU8sR0FBRyxJQUFJLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBQ2hELGVBQU8sR0FBRyxJQUFJLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBQ2hELG9CQUFZLEdBQUcsSUFBSSxjQUFjLENBQUMsc0JBQXNCLENBQUMsQ0FBQztBQUMxRCxrQkFBVSxHQUFHLElBQUksY0FBYyxDQUFDLG1CQUFtQixDQUFDLENBQUM7QUFDckQscUJBQWEsR0FBRyxJQUFJLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBQzNELG9CQUFZLEdBQUcsSUFBSSxjQUFjLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQUN6RCxXQUFHLEdBQUcsSUFBSSxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDeEMsa0JBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0FBQ3JELHFCQUFhLEdBQUcsSUFBSSxjQUFjLENBQUMsc0JBQXNCLENBQUMsQ0FBQztBQUMzRCxxQkFBYSxHQUFHLElBQUksY0FBYyxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFDM0Qsc0JBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBQzVELHdCQUFnQixHQUFHLElBQUksY0FBYyxDQUFDLHdCQUF3QixDQUFDLENBQUM7QUFDaEUseUJBQWlCLEdBQUc7SUFDekIsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUM7SUFDcEQsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUM7SUFDbkQsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFDO0lBQzVDLEVBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxVQUFVLEVBQUM7SUFDeEQsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFDLEVBQUUsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLFlBQVksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFDO0lBQzdGLEVBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUM7SUFDbEQsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFDO0lBQ2pELEVBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxhQUFhLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBQztJQUNqRCxFQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsY0FBYyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUM7SUFDbEQsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFDO0lBQ2xELEVBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFDO0NBQ3BELENBQUM7QUFHSixTQUFTLFNBQVMsQ0FBQyxRQUFnQixFQUFFLE9BQWU7SUFDbEQsT0FBTyxJQUFJLE9BQU8sQ0FBTyxVQUFTLE9BQU8sRUFBRSxNQUFNO1FBQy9DLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3hDLElBQUksS0FBSyxFQUFFO2dCQUNULE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNmO2lCQUFNO2dCQUNMLE9BQU8sRUFBRSxDQUFDO2FBQ1g7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcblxuZXhwb3J0IGNsYXNzIE9wdGlvbnMge1xuICBzdGF0aWMgU0FNUExFX0lEID0gbmV3IEluamVjdGlvblRva2VuKCdPcHRpb25zLnNhbXBsZUlkJyk7XG4gIHN0YXRpYyBERUZBVUxUX0RFU0NSSVBUSU9OID0gbmV3IEluamVjdGlvblRva2VuKCdPcHRpb25zLmRlZmF1bHREZXNjcmlwdGlvbicpO1xuICBzdGF0aWMgU0FNUExFX0RFU0NSSVBUSU9OID0gbmV3IEluamVjdGlvblRva2VuKCdPcHRpb25zLnNhbXBsZURlc2NyaXB0aW9uJyk7XG4gIHN0YXRpYyBGT1JDRV9HQyA9IG5ldyBJbmplY3Rpb25Ub2tlbignT3B0aW9ucy5mb3JjZUdjJyk7XG4gIHN0YXRpYyBOT19QUkVQQVJFID0gKCkgPT4gdHJ1ZTtcbiAgc3RhdGljIFBSRVBBUkUgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ09wdGlvbnMucHJlcGFyZScpO1xuICBzdGF0aWMgRVhFQ1VURSA9IG5ldyBJbmplY3Rpb25Ub2tlbignT3B0aW9ucy5leGVjdXRlJyk7XG4gIHN0YXRpYyBDQVBBQklMSVRJRVMgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ09wdGlvbnMuY2FwYWJpbGl0aWVzJyk7XG4gIHN0YXRpYyBVU0VSX0FHRU5UID0gbmV3IEluamVjdGlvblRva2VuKCdPcHRpb25zLnVzZXJBZ2VudCcpO1xuICBzdGF0aWMgTUlDUk9fTUVUUklDUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignT3B0aW9ucy5taWNyb01ldHJpY3MnKTtcbiAgc3RhdGljIFVTRVJfTUVUUklDUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignT3B0aW9ucy51c2VyTWV0cmljcycpO1xuICBzdGF0aWMgTk9XID0gbmV3IEluamVjdGlvblRva2VuKCdPcHRpb25zLm5vdycpO1xuICBzdGF0aWMgV1JJVEVfRklMRSA9IG5ldyBJbmplY3Rpb25Ub2tlbignT3B0aW9ucy53cml0ZUZpbGUnKTtcbiAgc3RhdGljIFJFQ0VJVkVEX0RBVEEgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ09wdGlvbnMucmVjZWl2ZWREYXRhJyk7XG4gIHN0YXRpYyBSRVFVRVNUX0NPVU5UID0gbmV3IEluamVjdGlvblRva2VuKCdPcHRpb25zLnJlcXVlc3RDb3VudCcpO1xuICBzdGF0aWMgQ0FQVFVSRV9GUkFNRVMgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ09wdGlvbnMuZnJhbWVDYXB0dXJlJyk7XG4gIHN0YXRpYyBSQVdfUEVSRkxPR19QQVRIID0gbmV3IEluamVjdGlvblRva2VuKCdPcHRpb25zLnJhd1BlcmZsb2dQYXRoJyk7XG4gIHN0YXRpYyBERUZBVUxUX1BST1ZJREVSUyA9IFtcbiAgICB7cHJvdmlkZTogT3B0aW9ucy5ERUZBVUxUX0RFU0NSSVBUSU9OLCB1c2VWYWx1ZToge319LFxuICAgIHtwcm92aWRlOiBPcHRpb25zLlNBTVBMRV9ERVNDUklQVElPTiwgdXNlVmFsdWU6IHt9fSxcbiAgICB7cHJvdmlkZTogT3B0aW9ucy5GT1JDRV9HQywgdXNlVmFsdWU6IGZhbHNlfSxcbiAgICB7cHJvdmlkZTogT3B0aW9ucy5QUkVQQVJFLCB1c2VWYWx1ZTogT3B0aW9ucy5OT19QUkVQQVJFfSxcbiAgICB7cHJvdmlkZTogT3B0aW9ucy5NSUNST19NRVRSSUNTLCB1c2VWYWx1ZToge319LCB7cHJvdmlkZTogT3B0aW9ucy5VU0VSX01FVFJJQ1MsIHVzZVZhbHVlOiB7fX0sXG4gICAge3Byb3ZpZGU6IE9wdGlvbnMuTk9XLCB1c2VWYWx1ZTogKCkgPT4gbmV3IERhdGUoKX0sXG4gICAge3Byb3ZpZGU6IE9wdGlvbnMuUkVDRUlWRURfREFUQSwgdXNlVmFsdWU6IGZhbHNlfSxcbiAgICB7cHJvdmlkZTogT3B0aW9ucy5SRVFVRVNUX0NPVU5ULCB1c2VWYWx1ZTogZmFsc2V9LFxuICAgIHtwcm92aWRlOiBPcHRpb25zLkNBUFRVUkVfRlJBTUVTLCB1c2VWYWx1ZTogZmFsc2V9LFxuICAgIHtwcm92aWRlOiBPcHRpb25zLldSSVRFX0ZJTEUsIHVzZVZhbHVlOiB3cml0ZUZpbGV9LFxuICAgIHtwcm92aWRlOiBPcHRpb25zLlJBV19QRVJGTE9HX1BBVEgsIHVzZVZhbHVlOiBudWxsfVxuICBdO1xufVxuXG5mdW5jdGlvbiB3cml0ZUZpbGUoZmlsZW5hbWU6IHN0cmluZywgY29udGVudDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge1xuICAgIGZzLndyaXRlRmlsZShmaWxlbmFtZSwgY29udGVudCwgKGVycm9yKSA9PiB7XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc29sdmUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG59XG4iXX0=