Innovenergy_trunk/frontend/node_modules/testcafe/lib/proxyless/index.js

53 lines
8.3 KiB
JavaScript
Raw Permalink Normal View History

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const request_pipeline_1 = __importDefault(require("./request-pipeline"));
const add_custom_debug_formatters_1 = __importDefault(require("./add-custom-debug-formatters"));
const debug_loggers_1 = require("../utils/debug-loggers");
const session_storage_1 = __importDefault(require("./session-storage"));
const ALL_REQUEST_RESPONSES = { requestStage: 'Request' };
const ALL_REQUEST_REQUESTS = { requestStage: 'Response' };
const ALL_REQUESTS_DATA = [ALL_REQUEST_REQUESTS, ALL_REQUEST_RESPONSES];
class Proxyless {
constructor(browserId, client) {
this._client = client;
this.requestPipeline = new request_pipeline_1.default(browserId, client);
this.sessionStorage = new session_storage_1.default(browserId, client);
this.sessionStorage.on('contextStorageSync', ({ sessionStorage, testRunId, frameDriverId }) => {
if (sessionStorage) {
this.requestPipeline.contextStorage = this.requestPipeline.contextStorage || {};
this.requestPipeline.contextStorage[testRunId] = this.requestPipeline.contextStorage[testRunId] || {};
this.requestPipeline.contextStorage[testRunId][frameDriverId] = sessionStorage;
}
});
this.sessionStorage.on('contextStorageTestRunDone', ({ testRunId }) => {
if (this.requestPipeline.contextStorage)
delete this.requestPipeline.contextStorage[testRunId];
});
(0, add_custom_debug_formatters_1.default)();
}
async init(options) {
// NOTE: We are forced to handle all requests and responses at once
// because CDP API does not allow specifying request filtering behavior for different handlers.
await this._client.Fetch.enable({
patterns: ALL_REQUESTS_DATA,
});
const proxylessSystems = [
this.requestPipeline,
this.sessionStorage,
];
for (const api of proxylessSystems)
await api.init(options);
(0, debug_loggers_1.proxylessLogger)('proxyless initialized');
}
async dispose() {
this.requestPipeline.stop();
await this._client.Fetch.disable();
(0, debug_loggers_1.proxylessLogger)('proxyless disposed');
}
}
exports.default = Proxyless;
module.exports = exports.default;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJveHlsZXNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0EsMEVBQTBEO0FBQzFELGdHQUFxRTtBQUVyRSwwREFBeUQ7QUFDekQsd0VBQStDO0FBRS9DLE1BQU0scUJBQXFCLEdBQUcsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFvQixDQUFDO0FBQzVFLE1BQU0sb0JBQW9CLEdBQUksRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFvQixDQUFDO0FBRTdFLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxvQkFBb0IsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0FBRXhFLE1BQXFCLFNBQVM7SUFLMUIsWUFBb0IsU0FBaUIsRUFBRSxNQUFtQjtRQUN0RCxJQUFJLENBQUMsT0FBTyxHQUFXLE1BQU0sQ0FBQztRQUM5QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksMEJBQXdCLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSx5QkFBYyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUU1RCxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFO1lBQzFGLElBQUksY0FBYyxFQUFFO2dCQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUM7Z0JBQ2hGLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDdEcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsY0FBYyxDQUFDO2FBQ2xGO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtZQUNsRSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYztnQkFDbkMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5RCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUEscUNBQXdCLEdBQUUsQ0FBQztJQUMvQixDQUFDO0lBRU0sS0FBSyxDQUFDLElBQUksQ0FBRSxPQUE4QjtRQUM3QyxtRUFBbUU7UUFDbkUsK0ZBQStGO1FBQy9GLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQzVCLFFBQVEsRUFBRSxpQkFBaUI7U0FDOUIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxnQkFBZ0IsR0FBRztZQUNyQixJQUFJLENBQUMsZUFBZTtZQUNwQixJQUFJLENBQUMsY0FBYztTQUN0QixDQUFDO1FBRUYsS0FBSyxNQUFNLEdBQUcsSUFBSSxnQkFBZ0I7WUFDOUIsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTVCLElBQUEsK0JBQWUsRUFBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxLQUFLLENBQUMsT0FBTztRQUNoQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRTVCLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFbkMsSUFBQSwrQkFBZSxFQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNKO0FBbkRELDRCQW1EQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3RvY29sQXBpIH0gZnJvbSAnY2hyb21lLXJlbW90ZS1pbnRlcmZhY2UnO1xuaW1wb3J0IFByb3RvY29sIGZyb20gJ2RldnRvb2xzLXByb3RvY29sJztcbmltcG9ydCBSZXF1ZXN0UGF0dGVybiA9IFByb3RvY29sLk5ldHdvcmsuUmVxdWVzdFBhdHRlcm47XG5pbXBvcnQgUHJveHlsZXNzUmVxdWVzdFBpcGVsaW5lIGZyb20gJy4vcmVxdWVzdC1waXBlbGluZSc7XG5pbXBvcnQgYWRkQ3VzdG9tRGVidWdGb3JtYXR0ZXJzIGZyb20gJy4vYWRkLWN1c3RvbS1kZWJ1Zy1mb3JtYXR0ZXJzJztcbmltcG9ydCB7IFByb3h5bGVzc1NldHVwT3B0aW9ucyB9IGZyb20gJy4uL3NoYXJlZC90eXBlcyc7XG5pbXBvcnQgeyBwcm94eWxlc3NMb2dnZXIgfSBmcm9tICcuLi91dGlscy9kZWJ1Zy1sb2dnZXJzJztcbmltcG9ydCBTZXNzaW9uU3RvcmFnZSBmcm9tICcuL3Nlc3Npb24tc3RvcmFnZSc7XG5cbmNvbnN0IEFMTF9SRVFVRVNUX1JFU1BPTlNFUyA9IHsgcmVxdWVzdFN0YWdlOiAnUmVxdWVzdCcgfSBhcyBSZXF1ZXN0UGF0dGVybjtcbmNvbnN0IEFMTF9SRVFVRVNUX1JFUVVFU1RTICA9IHsgcmVxdWVzdFN0YWdlOiAnUmVzcG9uc2UnIH0gYXMgUmVxdWVzdFBhdHRlcm47XG5cbmNvbnN0IEFMTF9SRVFVRVNUU19EQVRBID0gW0FMTF9SRVFVRVNUX1JFUVVFU1RTLCBBTExfUkVRVUVTVF9SRVNQT05TRVNdO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQcm94eWxlc3Mge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2NsaWVudDogUHJvdG9jb2xBcGk7XG4gICAgcHVibGljIHJlYWRvbmx5IHJlcXVlc3RQaXBlbGluZTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2Vzc2lvblN0b3JhZ2U6IFNlc3Npb25TdG9yYWdlO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yIChicm93c2VySWQ6IHN0cmluZywgY2xpZW50OiBQcm90b2NvbEFwaSkge1xuICAgICAgICB0aGlzLl9jbGllbnQgICAgICAgICA9IGNsaWVudDtcbiAgICAgICAgdGhpcy5yZXF1ZXN0UGlwZWxpbmUgPSBuZXcgUHJveHlsZXNzUmVxdWVzdFBpcGVsaW5lKGJyb3dzZXJJZCwgY2xpZW50KTtcbiAgICAgICAgdGhpcy5zZXNzaW9uU3RvcmFnZSA9IG5ldyBTZXNzaW9uU3RvcmFnZShicm93c2VySWQsIGNsaWVudCk7XG5cbiAgICAgICAgdGhpcy5zZXNzaW9uU3RvcmFnZS5vbignY29udGV4dFN0b3JhZ2VTeW5jJywgKHsgc2Vzc2lvblN0b3JhZ2UsIHRlc3RSdW5JZCwgZnJhbWVEcml2ZXJJZCB9KSA9PiB7XG4gICAgICAgICAgICBpZiAoc2Vzc2lvblN0b3JhZ2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlcXVlc3RQa