testcafe 2.6.0 → 2.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/bin/testcafe-with-v8-flag-filter.js +10 -16
- package/lib/api/exportable-lib/index.js +1 -11
- package/lib/api/structure/test.js +4 -11
- package/lib/api/test-controller/index.js +3 -10
- package/lib/api/test-run-tracker.js +1 -1
- package/lib/assertions/executor.js +2 -11
- package/lib/browser/connection/gateway/index.js +3 -4
- package/lib/cli/argument-parser/index.js +1 -3
- package/lib/cli/cli.js +3 -11
- package/lib/client/automation/index.js +49 -36
- package/lib/client/automation/index.min.js +1 -1
- package/lib/client/browser/idle-page/index.js +13 -5
- package/lib/client/core/index.js +14 -8
- package/lib/client/core/index.min.js +1 -1
- package/lib/client/driver/index.js +19 -20
- package/lib/client/driver/index.min.js +1 -1
- package/lib/compiler/babel/load-libs.js +3 -3
- package/lib/compiler/compilers.js +6 -6
- package/lib/compiler/index.js +3 -3
- package/lib/compiler/interfaces.js +1 -1
- package/lib/compiler/test-file/add-export-api.js +3 -3
- package/lib/compiler/test-file/api-based.js +5 -34
- package/lib/compiler/test-file/formats/es-next/compiler.js +4 -4
- package/lib/compiler/test-file/formats/typescript/compiler.js +5 -5
- package/lib/configuration/option-names.js +1 -2
- package/lib/errors/runtime/templates.js +1 -2
- package/lib/errors/types.js +2 -3
- package/lib/index.js +1 -3
- package/lib/live/bootstrapper.js +3 -3
- package/lib/live/test-runner.js +5 -5
- package/lib/native-automation/add-custom-debug-formatters.js +3 -2
- package/lib/native-automation/client/event-descriptor.js +11 -5
- package/lib/native-automation/client/input.js +3 -7
- package/lib/native-automation/request-hooks/event-provider.js +4 -1
- package/lib/native-automation/request-pipeline/context-info.js +4 -1
- package/lib/native-automation/request-pipeline/index.js +39 -19
- package/lib/native-automation/request-pipeline/safe-api.js +10 -7
- package/lib/native-automation/request-pipeline/special-handlers.js +16 -13
- package/lib/native-automation/resource-injector.js +7 -7
- package/lib/native-automation/types.js +1 -1
- package/lib/native-automation/utils/cdp.js +3 -2
- package/lib/role/role.js +4 -39
- package/lib/runner/bootstrapper.js +4 -11
- package/lib/runner/browser-job.js +4 -5
- package/lib/runner/fixture-hook-controller.js +1 -7
- package/lib/runner/index.js +6 -53
- package/lib/runner/interfaces.js +1 -1
- package/lib/runner/task/index.js +2 -4
- package/lib/runner/test-run-controller.js +2 -4
- package/lib/test-run/bookmark.js +5 -23
- package/lib/test-run/commands/service.js +2 -3
- package/lib/test-run/commands/utils.js +4 -2
- package/lib/test-run/index.js +9 -132
- package/lib/testcafe.js +1 -9
- package/lib/utils/debug-loggers.js +4 -2
- package/lib/utils/parse-user-agent.js +17 -2
- package/package.json +3 -4
- package/lib/compiler/test-file/test-file-temp-variable-name.js +0 -6
- package/lib/dashboard/config-storage.js +0 -26
- package/lib/dashboard/connector.js +0 -84
- package/lib/dashboard/documentation-url.js +0 -6
- package/lib/dashboard/formatting.js +0 -26
- package/lib/dashboard/get-dashboard-url.js +0 -10
- package/lib/dashboard/get-default-project-link.js +0 -23
- package/lib/dashboard/get-env-options.js +0 -26
- package/lib/dashboard/index.js +0 -145
- package/lib/dashboard/interfaces.js +0 -3
- package/lib/dashboard/messages.js +0 -21
- package/lib/services/compiler/esm-runtime-holder-name.js +0 -6
- package/lib/services/compiler/host.js +0 -370
- package/lib/services/compiler/interfaces.js +0 -3
- package/lib/services/compiler/io.js +0 -10
- package/lib/services/compiler/protocol.js +0 -17
- package/lib/services/compiler/service-loader.js +0 -18
- package/lib/services/compiler/service.js +0 -362
- package/lib/services/compiler/test-run-proxy.js +0 -157
- package/lib/services/interfaces.js +0 -3
- package/lib/services/process-title.js +0 -10
- package/lib/services/serialization/prepare-options.js +0 -23
- package/lib/services/serialization/replicator/create-replicator.js +0 -58
- package/lib/services/serialization/replicator/interfaces.js +0 -3
- package/lib/services/serialization/replicator/transforms/base-transform.js +0 -16
- package/lib/services/serialization/replicator/transforms/browser-console-messages-transform.js +0 -23
- package/lib/services/serialization/replicator/transforms/callsite-record-transform.js +0 -24
- package/lib/services/serialization/replicator/transforms/command-base-trasform/assertion-command-constructors.js +0 -28
- package/lib/services/serialization/replicator/transforms/command-base-trasform/command-constructors.js +0 -67
- package/lib/services/serialization/replicator/transforms/command-base-trasform/index.js +0 -49
- package/lib/services/serialization/replicator/transforms/command-base-trasform/types.js +0 -3
- package/lib/services/serialization/replicator/transforms/configure-response-event-option-transform.js +0 -21
- package/lib/services/serialization/replicator/transforms/custom-error-transform.js +0 -29
- package/lib/services/serialization/replicator/transforms/function-marker-transform/index.js +0 -21
- package/lib/services/serialization/replicator/transforms/function-marker-transform/marker.js +0 -9
- package/lib/services/serialization/replicator/transforms/promise-marker-transform/index.js +0 -21
- package/lib/services/serialization/replicator/transforms/promise-marker-transform/marker.js +0 -9
- package/lib/services/serialization/replicator/transforms/raw-command-callsite-record-transform.js +0 -22
- package/lib/services/serialization/replicator/transforms/re-executable-promise-transform/index.js +0 -22
- package/lib/services/serialization/replicator/transforms/re-executable-promise-transform/marker.js +0 -6
- package/lib/services/serialization/replicator/transforms/request-filter-rule-transform.js +0 -23
- package/lib/services/serialization/replicator/transforms/request-hook-event-data-transform.js +0 -41
- package/lib/services/serialization/replicator/transforms/response-mock-transform.js +0 -23
- package/lib/services/serialization/replicator/transforms/role-transform.js +0 -21
- package/lib/services/serialization/replicator/transforms/testcafe-error-list-transform.js +0 -23
- package/lib/services/serialization/replicator/transforms/url-transform.js +0 -23
- package/lib/services/serialization/test-structure.js +0 -91
- package/lib/services/utils/ipc/interfaces.js +0 -29
- package/lib/services/utils/ipc/io.js +0 -109
- package/lib/services/utils/ipc/message.js +0 -84
- package/lib/services/utils/ipc/packet.js +0 -57
- package/lib/services/utils/ipc/proxy.js +0 -94
- package/lib/services/utils/ipc/transport.js +0 -65
- package/lib/services/utils/method-should-not-be-called-error.js +0 -10
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const base_transform_1 = __importDefault(require("./base-transform"));
|
|
7
|
-
class CustomErrorTransform extends base_transform_1.default {
|
|
8
|
-
constructor() {
|
|
9
|
-
super('CustomError');
|
|
10
|
-
}
|
|
11
|
-
_isBuiltInError(type) {
|
|
12
|
-
// @ts-ignore
|
|
13
|
-
return !!global[type];
|
|
14
|
-
}
|
|
15
|
-
shouldTransform(_, val) {
|
|
16
|
-
// @ts-ignore
|
|
17
|
-
return val instanceof Error && (val.isTestCafeError || !this._isBuiltInError(val.name));
|
|
18
|
-
}
|
|
19
|
-
toSerializable(err) {
|
|
20
|
-
const errorData = Object.assign({}, err);
|
|
21
|
-
errorData.name = errorData.name || err.name;
|
|
22
|
-
errorData.message = errorData.message || err.message;
|
|
23
|
-
errorData.stack = errorData.stack || err.stack;
|
|
24
|
-
return errorData;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.default = CustomErrorTransform;
|
|
28
|
-
module.exports = exports.default;
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWVycm9yLXRyYW5zZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9zZXJpYWxpemF0aW9uL3JlcGxpY2F0b3IvdHJhbnNmb3Jtcy9jdXN0b20tZXJyb3ItdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsc0VBQTZDO0FBRTdDLE1BQXFCLG9CQUFxQixTQUFRLHdCQUFhO0lBQzNEO1FBQ0ksS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTyxlQUFlLENBQUUsSUFBWTtRQUNqQyxhQUFhO1FBQ2IsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFTSxlQUFlLENBQUUsQ0FBVSxFQUFFLEdBQVk7UUFDNUMsYUFBYTtRQUNiLE9BQU8sR0FBRyxZQUFZLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFTSxjQUFjLENBQUUsR0FBVTtRQUM3QixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUV6QyxTQUFTLENBQUMsSUFBSSxHQUFNLFNBQVMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQztRQUMvQyxTQUFTLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQyxPQUFPLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQztRQUNyRCxTQUFTLENBQUMsS0FBSyxHQUFLLFNBQVMsQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQztRQUVqRCxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDO0NBQ0o7QUF4QkQsdUNBd0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VUcmFuc2Zvcm0gZnJvbSAnLi9iYXNlLXRyYW5zZm9ybSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEN1c3RvbUVycm9yVHJhbnNmb3JtIGV4dGVuZHMgQmFzZVRyYW5zZm9ybSB7XG4gICAgcHVibGljIGNvbnN0cnVjdG9yICgpIHtcbiAgICAgICAgc3VwZXIoJ0N1c3RvbUVycm9yJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfaXNCdWlsdEluRXJyb3IgKHR5cGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIHJldHVybiAhIWdsb2JhbFt0eXBlXTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2hvdWxkVHJhbnNmb3JtIChfOiB1bmtub3duLCB2YWw6IHVua25vd24pOiBib29sZWFuIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICByZXR1cm4gdmFsIGluc3RhbmNlb2YgRXJyb3IgJiYgKHZhbC5pc1Rlc3RDYWZlRXJyb3IgfHwgIXRoaXMuX2lzQnVpbHRJbkVycm9yKHZhbC5uYW1lKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHRvU2VyaWFsaXphYmxlIChlcnI6IEVycm9yKTogRXJyb3Ige1xuICAgICAgICBjb25zdCBlcnJvckRhdGEgPSBPYmplY3QuYXNzaWduKHt9LCBlcnIpO1xuXG4gICAgICAgIGVycm9yRGF0YS5uYW1lICAgID0gZXJyb3JEYXRhLm5hbWUgfHwgZXJyLm5hbWU7XG4gICAgICAgIGVycm9yRGF0YS5tZXNzYWdlID0gZXJyb3JEYXRhLm1lc3NhZ2UgfHwgZXJyLm1lc3NhZ2U7XG4gICAgICAgIGVycm9yRGF0YS5zdGFjayAgID0gZXJyb3JEYXRhLnN0YWNrIHx8IGVyci5zdGFjaztcblxuICAgICAgICByZXR1cm4gZXJyb3JEYXRhO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const base_transform_1 = __importDefault(require("../base-transform"));
|
|
7
|
-
const marker_1 = require("./marker");
|
|
8
|
-
class FunctionMarkerTransform extends base_transform_1.default {
|
|
9
|
-
constructor() {
|
|
10
|
-
super('FunctionMarker');
|
|
11
|
-
}
|
|
12
|
-
shouldTransform(_, val) {
|
|
13
|
-
return val instanceof marker_1.FunctionMarker;
|
|
14
|
-
}
|
|
15
|
-
fromSerializable() {
|
|
16
|
-
return marker_1.functionMarkerSymbol;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
exports.default = FunctionMarkerTransform;
|
|
20
|
-
module.exports = exports.default;
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvc2VyaWFsaXphdGlvbi9yZXBsaWNhdG9yL3RyYW5zZm9ybXMvZnVuY3Rpb24tbWFya2VyLXRyYW5zZm9ybS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHVFQUE4QztBQUM5QyxxQ0FBZ0U7QUFFaEUsTUFBcUIsdUJBQXdCLFNBQVEsd0JBQWE7SUFDOUQ7UUFDSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRU0sZUFBZSxDQUFFLENBQVUsRUFBRSxHQUFZO1FBQzVDLE9BQU8sR0FBRyxZQUFZLHVCQUFjLENBQUM7SUFDekMsQ0FBQztJQUVNLGdCQUFnQjtRQUNuQixPQUFPLDZCQUFvQixDQUFDO0lBQ2hDLENBQUM7Q0FDSjtBQVpELDBDQVlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VUcmFuc2Zvcm0gZnJvbSAnLi4vYmFzZS10cmFuc2Zvcm0nO1xuaW1wb3J0IHsgRnVuY3Rpb25NYXJrZXIsIGZ1bmN0aW9uTWFya2VyU3ltYm9sIH0gZnJvbSAnLi9tYXJrZXInO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBGdW5jdGlvbk1hcmtlclRyYW5zZm9ybSBleHRlbmRzIEJhc2VUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAoKSB7XG4gICAgICAgIHN1cGVyKCdGdW5jdGlvbk1hcmtlcicpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG91bGRUcmFuc2Zvcm0gKF86IHVua25vd24sIHZhbDogdW5rbm93bik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsIGluc3RhbmNlb2YgRnVuY3Rpb25NYXJrZXI7XG4gICAgfVxuXG4gICAgcHVibGljIGZyb21TZXJpYWxpemFibGUgKCk6IHVua25vd24ge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb25NYXJrZXJTeW1ib2w7XG4gICAgfVxufVxuIl19
|
package/lib/services/serialization/replicator/transforms/function-marker-transform/marker.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FunctionMarker = exports.functionMarkerSymbol = exports.FUNCTION_MARKER_DESCRIPTION = void 0;
|
|
4
|
-
exports.FUNCTION_MARKER_DESCRIPTION = 'function-marker';
|
|
5
|
-
exports.functionMarkerSymbol = Symbol.for(exports.FUNCTION_MARKER_DESCRIPTION);
|
|
6
|
-
class FunctionMarker {
|
|
7
|
-
}
|
|
8
|
-
exports.FunctionMarker = FunctionMarker;
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3NlcmlhbGl6YXRpb24vcmVwbGljYXRvci90cmFuc2Zvcm1zL2Z1bmN0aW9uLW1hcmtlci10cmFuc2Zvcm0vbWFya2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFhLFFBQUEsMkJBQTJCLEdBQUcsaUJBQWlCLENBQUM7QUFFaEQsUUFBQSxvQkFBb0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLG1DQUEyQixDQUFDLENBQUM7QUFFNUUsTUFBYSxjQUFjO0NBQUc7QUFBOUIsd0NBQThCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEZVTkNUSU9OX01BUktFUl9ERVNDUklQVElPTiA9ICdmdW5jdGlvbi1tYXJrZXInO1xuXG5leHBvcnQgY29uc3QgZnVuY3Rpb25NYXJrZXJTeW1ib2wgPSBTeW1ib2wuZm9yKEZVTkNUSU9OX01BUktFUl9ERVNDUklQVElPTik7XG5cbmV4cG9ydCBjbGFzcyBGdW5jdGlvbk1hcmtlciB7fVxuIl19
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const base_transform_1 = __importDefault(require("../base-transform"));
|
|
7
|
-
const marker_1 = require("./marker");
|
|
8
|
-
class PromiseMarkerTransform extends base_transform_1.default {
|
|
9
|
-
constructor() {
|
|
10
|
-
super('PromiseMarker');
|
|
11
|
-
}
|
|
12
|
-
shouldTransform(_, val) {
|
|
13
|
-
return val instanceof marker_1.PromiseMarker;
|
|
14
|
-
}
|
|
15
|
-
fromSerializable() {
|
|
16
|
-
return marker_1.promiseMarkerSymbol;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
exports.default = PromiseMarkerTransform;
|
|
20
|
-
module.exports = exports.default;
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvc2VyaWFsaXphdGlvbi9yZXBsaWNhdG9yL3RyYW5zZm9ybXMvcHJvbWlzZS1tYXJrZXItdHJhbnNmb3JtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsdUVBQThDO0FBQzlDLHFDQUE4RDtBQUU5RCxNQUFxQixzQkFBdUIsU0FBUSx3QkFBYTtJQUM3RDtRQUNJLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU0sZUFBZSxDQUFFLENBQVUsRUFBRSxHQUFZO1FBQzVDLE9BQU8sR0FBRyxZQUFZLHNCQUFhLENBQUM7SUFDeEMsQ0FBQztJQUVNLGdCQUFnQjtRQUNuQixPQUFPLDRCQUFtQixDQUFDO0lBQy9CLENBQUM7Q0FDSjtBQVpELHlDQVlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VUcmFuc2Zvcm0gZnJvbSAnLi4vYmFzZS10cmFuc2Zvcm0nO1xuaW1wb3J0IHsgUHJvbWlzZU1hcmtlciwgcHJvbWlzZU1hcmtlclN5bWJvbCB9IGZyb20gJy4vbWFya2VyJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUHJvbWlzZU1hcmtlclRyYW5zZm9ybSBleHRlbmRzIEJhc2VUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAoKSB7XG4gICAgICAgIHN1cGVyKCdQcm9taXNlTWFya2VyJyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3VsZFRyYW5zZm9ybSAoXzogdW5rbm93biwgdmFsOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB2YWwgaW5zdGFuY2VvZiBQcm9taXNlTWFya2VyO1xuICAgIH1cblxuICAgIHB1YmxpYyBmcm9tU2VyaWFsaXphYmxlICgpOiB1bmtub3duIHtcbiAgICAgICAgcmV0dXJuIHByb21pc2VNYXJrZXJTeW1ib2w7XG4gICAgfVxufVxuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PromiseMarker = exports.promiseMarkerSymbol = exports.PROMISE_MARKER_DESCRIPTION = void 0;
|
|
4
|
-
exports.PROMISE_MARKER_DESCRIPTION = 'promise-marker';
|
|
5
|
-
exports.promiseMarkerSymbol = Symbol.for(exports.PROMISE_MARKER_DESCRIPTION);
|
|
6
|
-
class PromiseMarker {
|
|
7
|
-
}
|
|
8
|
-
exports.PromiseMarker = PromiseMarker;
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3NlcmlhbGl6YXRpb24vcmVwbGljYXRvci90cmFuc2Zvcm1zL3Byb21pc2UtbWFya2VyLXRyYW5zZm9ybS9tYXJrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSwwQkFBMEIsR0FBRyxnQkFBZ0IsQ0FBQztBQUU5QyxRQUFBLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsa0NBQTBCLENBQUMsQ0FBQztBQUUxRSxNQUFhLGFBQWE7Q0FBRztBQUE3QixzQ0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgUFJPTUlTRV9NQVJLRVJfREVTQ1JJUFRJT04gPSAncHJvbWlzZS1tYXJrZXInO1xuXG5leHBvcnQgY29uc3QgcHJvbWlzZU1hcmtlclN5bWJvbCA9IFN5bWJvbC5mb3IoUFJPTUlTRV9NQVJLRVJfREVTQ1JJUFRJT04pO1xuXG5leHBvcnQgY2xhc3MgUHJvbWlzZU1hcmtlciB7fVxuIl19
|
package/lib/services/serialization/replicator/transforms/raw-command-callsite-record-transform.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const prerender_callsite_1 = __importDefault(require("../../../../utils/prerender-callsite"));
|
|
7
|
-
const base_transform_1 = __importDefault(require("./base-transform"));
|
|
8
|
-
const raw_command_callsite_record_1 = require("../../../../utils/raw-command-callsite-record");
|
|
9
|
-
class RawCommandCallsiteRecordTransform extends base_transform_1.default {
|
|
10
|
-
constructor() {
|
|
11
|
-
super('RawCommandCallsiteRecord');
|
|
12
|
-
}
|
|
13
|
-
shouldTransform(_, val) {
|
|
14
|
-
return val instanceof raw_command_callsite_record_1.RawCommandCallsiteRecord;
|
|
15
|
-
}
|
|
16
|
-
toSerializable(callsite) {
|
|
17
|
-
return (0, prerender_callsite_1.default)(callsite);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
exports.default = RawCommandCallsiteRecordTransform;
|
|
21
|
-
module.exports = exports.default;
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF3LWNvbW1hbmQtY2FsbHNpdGUtcmVjb3JkLXRyYW5zZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9zZXJpYWxpemF0aW9uL3JlcGxpY2F0b3IvdHJhbnNmb3Jtcy9yYXctY29tbWFuZC1jYWxsc2l0ZS1yZWNvcmQtdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsOEZBQTJGO0FBQzNGLHNFQUE2QztBQUM3QywrRkFBeUY7QUFFekYsTUFBcUIsaUNBQWtDLFNBQVEsd0JBQWE7SUFDeEU7UUFDSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU0sZUFBZSxDQUFFLENBQVUsRUFBRSxHQUFZO1FBQzVDLE9BQU8sR0FBRyxZQUFZLHNEQUF3QixDQUFDO0lBQ25ELENBQUM7SUFFTSxjQUFjLENBQUUsUUFBa0M7UUFDckQsT0FBTyxJQUFBLDRCQUFpQixFQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Q0FDSjtBQVpELG9EQVlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHByZXJlbmRlckNhbGxzaXRlLCB7IFJlbmRlcmVkQ2FsbHNpdGUgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscy9wcmVyZW5kZXItY2FsbHNpdGUnO1xuaW1wb3J0IEJhc2VUcmFuc2Zvcm0gZnJvbSAnLi9iYXNlLXRyYW5zZm9ybSc7XG5pbXBvcnQgeyBSYXdDb21tYW5kQ2FsbHNpdGVSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscy9yYXctY29tbWFuZC1jYWxsc2l0ZS1yZWNvcmQnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSYXdDb21tYW5kQ2FsbHNpdGVSZWNvcmRUcmFuc2Zvcm0gZXh0ZW5kcyBCYXNlVHJhbnNmb3JtIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKCkge1xuICAgICAgICBzdXBlcignUmF3Q29tbWFuZENhbGxzaXRlUmVjb3JkJyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3VsZFRyYW5zZm9ybSAoXzogdW5rbm93biwgdmFsOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB2YWwgaW5zdGFuY2VvZiBSYXdDb21tYW5kQ2FsbHNpdGVSZWNvcmQ7XG4gICAgfVxuXG4gICAgcHVibGljIHRvU2VyaWFsaXphYmxlIChjYWxsc2l0ZTogUmF3Q29tbWFuZENhbGxzaXRlUmVjb3JkKTogUmVuZGVyZWRDYWxsc2l0ZSB7XG4gICAgICAgIHJldHVybiBwcmVyZW5kZXJDYWxsc2l0ZShjYWxsc2l0ZSk7XG4gICAgfVxufVxuIl19
|
package/lib/services/serialization/replicator/transforms/re-executable-promise-transform/index.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const base_transform_1 = __importDefault(require("../base-transform"));
|
|
7
|
-
const re_executable_promise_1 = __importDefault(require("../../../../../utils/re-executable-promise"));
|
|
8
|
-
const marker_1 = require("./marker");
|
|
9
|
-
class ReExecutablePromiseTransform extends base_transform_1.default {
|
|
10
|
-
constructor() {
|
|
11
|
-
super('ReExecutablePromise');
|
|
12
|
-
}
|
|
13
|
-
shouldTransform(_, val) {
|
|
14
|
-
return val instanceof re_executable_promise_1.default;
|
|
15
|
-
}
|
|
16
|
-
fromSerializable() {
|
|
17
|
-
return marker_1.reExecutablePromiseMarkerSymbol;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
exports.default = ReExecutablePromiseTransform;
|
|
21
|
-
module.exports = exports.default;
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvc2VyaWFsaXphdGlvbi9yZXBsaWNhdG9yL3RyYW5zZm9ybXMvcmUtZXhlY3V0YWJsZS1wcm9taXNlLXRyYW5zZm9ybS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHVFQUE4QztBQUM5Qyx1R0FBNkU7QUFDN0UscUNBQTJEO0FBRTNELE1BQXFCLDRCQUE2QixTQUFRLHdCQUFhO0lBQ25FO1FBQ0ksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVNLGVBQWUsQ0FBRSxDQUFVLEVBQUUsR0FBWTtRQUM1QyxPQUFPLEdBQUcsWUFBWSwrQkFBbUIsQ0FBQztJQUM5QyxDQUFDO0lBRU0sZ0JBQWdCO1FBQ25CLE9BQU8sd0NBQStCLENBQUM7SUFDM0MsQ0FBQztDQUNKO0FBWkQsK0NBWUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZVRyYW5zZm9ybSBmcm9tICcuLi9iYXNlLXRyYW5zZm9ybSc7XG5pbXBvcnQgUmVFeGVjdXRhYmxlUHJvbWlzZSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscy9yZS1leGVjdXRhYmxlLXByb21pc2UnO1xuaW1wb3J0IHsgcmVFeGVjdXRhYmxlUHJvbWlzZU1hcmtlclN5bWJvbCB9IGZyb20gJy4vbWFya2VyJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVFeGVjdXRhYmxlUHJvbWlzZVRyYW5zZm9ybSBleHRlbmRzIEJhc2VUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAoKSB7XG4gICAgICAgIHN1cGVyKCdSZUV4ZWN1dGFibGVQcm9taXNlJyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3VsZFRyYW5zZm9ybSAoXzogdW5rbm93biwgdmFsOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB2YWwgaW5zdGFuY2VvZiBSZUV4ZWN1dGFibGVQcm9taXNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBmcm9tU2VyaWFsaXphYmxlICgpOiB1bmtub3duIHtcbiAgICAgICAgcmV0dXJuIHJlRXhlY3V0YWJsZVByb21pc2VNYXJrZXJTeW1ib2w7XG4gICAgfVxufVxuIl19
|
package/lib/services/serialization/replicator/transforms/re-executable-promise-transform/marker.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.reExecutablePromiseMarkerSymbol = exports.RE_EXECUTABLE_PROMISE_MARKER_DESCRIPTION = void 0;
|
|
4
|
-
exports.RE_EXECUTABLE_PROMISE_MARKER_DESCRIPTION = 're-executable-promise-marker';
|
|
5
|
-
exports.reExecutablePromiseMarkerSymbol = Symbol.for(exports.RE_EXECUTABLE_PROMISE_MARKER_DESCRIPTION);
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3NlcmlhbGl6YXRpb24vcmVwbGljYXRvci90cmFuc2Zvcm1zL3JlLWV4ZWN1dGFibGUtcHJvbWlzZS10cmFuc2Zvcm0vbWFya2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFhLFFBQUEsd0NBQXdDLEdBQUcsOEJBQThCLENBQUM7QUFFMUUsUUFBQSwrQkFBK0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGdEQUF3QyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgUkVfRVhFQ1VUQUJMRV9QUk9NSVNFX01BUktFUl9ERVNDUklQVElPTiA9ICdyZS1leGVjdXRhYmxlLXByb21pc2UtbWFya2VyJztcblxuZXhwb3J0IGNvbnN0IHJlRXhlY3V0YWJsZVByb21pc2VNYXJrZXJTeW1ib2wgPSBTeW1ib2wuZm9yKFJFX0VYRUNVVEFCTEVfUFJPTUlTRV9NQVJLRVJfREVTQ1JJUFRJT04pO1xuXG4iXX0=
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const testcafe_hammerhead_1 = require("testcafe-hammerhead");
|
|
7
|
-
const base_transform_1 = __importDefault(require("./base-transform"));
|
|
8
|
-
class RequestFilterRuleTransform extends base_transform_1.default {
|
|
9
|
-
constructor() {
|
|
10
|
-
super('RequestFilterRule');
|
|
11
|
-
}
|
|
12
|
-
shouldTransform(_, val) {
|
|
13
|
-
return val instanceof testcafe_hammerhead_1.RequestFilterRule;
|
|
14
|
-
}
|
|
15
|
-
fromSerializable(value) {
|
|
16
|
-
const rule = testcafe_hammerhead_1.RequestFilterRule.from(value);
|
|
17
|
-
rule.isPredicate = value.isPredicate;
|
|
18
|
-
return rule;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.default = RequestFilterRuleTransform;
|
|
22
|
-
module.exports = exports.default;
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1maWx0ZXItcnVsZS10cmFuc2Zvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvc2VyaWFsaXphdGlvbi9yZXBsaWNhdG9yL3RyYW5zZm9ybXMvcmVxdWVzdC1maWx0ZXItcnVsZS10cmFuc2Zvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2REFBd0Q7QUFDeEQsc0VBQTZDO0FBSTdDLE1BQXFCLDBCQUEyQixTQUFRLHdCQUFhO0lBQ2pFO1FBQ0ksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLGVBQWUsQ0FBRSxDQUFVLEVBQUUsR0FBWTtRQUM1QyxPQUFPLEdBQUcsWUFBWSx1Q0FBaUIsQ0FBQztJQUM1QyxDQUFDO0lBRU0sZ0JBQWdCLENBQUUsS0FBb0M7UUFDekQsTUFBTSxJQUFJLEdBQUcsdUNBQWlCLENBQUMsSUFBSSxDQUFDLEtBQWUsQ0FBQyxDQUFDO1FBRXJELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUVyQyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0NBQ0o7QUFoQkQsNkNBZ0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWVzdEZpbHRlclJ1bGUgfSBmcm9tICd0ZXN0Y2FmZS1oYW1tZXJoZWFkJztcbmltcG9ydCBCYXNlVHJhbnNmb3JtIGZyb20gJy4vYmFzZS10cmFuc2Zvcm0nO1xuaW1wb3J0IHsgU2VyaWFsaXplZEVudGl0eVdpdGhQcmVkaWNhdGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZXF1ZXN0RmlsdGVyUnVsZVRyYW5zZm9ybSBleHRlbmRzIEJhc2VUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAoKSB7XG4gICAgICAgIHN1cGVyKCdSZXF1ZXN0RmlsdGVyUnVsZScpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG91bGRUcmFuc2Zvcm0gKF86IHVua25vd24sIHZhbDogdW5rbm93bik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsIGluc3RhbmNlb2YgUmVxdWVzdEZpbHRlclJ1bGU7XG4gICAgfVxuXG4gICAgcHVibGljIGZyb21TZXJpYWxpemFibGUgKHZhbHVlOiBTZXJpYWxpemVkRW50aXR5V2l0aFByZWRpY2F0ZSk6IFJlcXVlc3RGaWx0ZXJSdWxlIHtcbiAgICAgICAgY29uc3QgcnVsZSA9IFJlcXVlc3RGaWx0ZXJSdWxlLmZyb20odmFsdWUgYXMgb2JqZWN0KTtcblxuICAgICAgICBydWxlLmlzUHJlZGljYXRlID0gdmFsdWUuaXNQcmVkaWNhdGU7XG5cbiAgICAgICAgcmV0dXJuIHJ1bGU7XG4gICAgfVxufVxuIl19
|
package/lib/services/serialization/replicator/transforms/request-hook-event-data-transform.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const testcafe_hammerhead_1 = require("testcafe-hammerhead");
|
|
4
|
-
const EVENT_CONSTRUCTORS = [
|
|
5
|
-
testcafe_hammerhead_1.RequestEvent,
|
|
6
|
-
testcafe_hammerhead_1.ConfigureResponseEvent,
|
|
7
|
-
testcafe_hammerhead_1.ResponseEvent,
|
|
8
|
-
];
|
|
9
|
-
const EVENT_CONSTRUCTORS_MAP = new Map(EVENT_CONSTRUCTORS.map(eventConstructor => {
|
|
10
|
-
return [eventConstructor.name, eventConstructor];
|
|
11
|
-
}));
|
|
12
|
-
class RequestHookEventDataTransform {
|
|
13
|
-
constructor() {
|
|
14
|
-
this.type = 'RequestHookEventData';
|
|
15
|
-
}
|
|
16
|
-
shouldTransform(_, val) {
|
|
17
|
-
return EVENT_CONSTRUCTORS.some(EventConstructor => val instanceof EventConstructor);
|
|
18
|
-
}
|
|
19
|
-
toSerializable(value) {
|
|
20
|
-
// TODO: Remove eventData._requestContext into 'testcafe-hammerhead' module
|
|
21
|
-
// after switching to the compiler service mode.
|
|
22
|
-
// NOTE: Access to the deprecated property inside of the unserializable 'eventData._requestContext' property
|
|
23
|
-
// causes the node's deprecation warning.
|
|
24
|
-
const clonedEventData = Object.assign({}, value);
|
|
25
|
-
// @ts-ignore
|
|
26
|
-
delete clonedEventData._requestContext;
|
|
27
|
-
return {
|
|
28
|
-
constructorName: value.constructor.name,
|
|
29
|
-
data: clonedEventData,
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
fromSerializable(value) {
|
|
33
|
-
const EventConstructor = EVENT_CONSTRUCTORS_MAP.get(value.constructorName);
|
|
34
|
-
if (!EventConstructor)
|
|
35
|
-
throw new Error(`An appropriate command constructor for "${value.constructorName}" type was not found.`);
|
|
36
|
-
return EventConstructor.from(value.data);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
exports.default = RequestHookEventDataTransform;
|
|
40
|
-
module.exports = exports.default;
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1ob29rLWV2ZW50LWRhdGEtdHJhbnNmb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3NlcmlhbGl6YXRpb24vcmVwbGljYXRvci90cmFuc2Zvcm1zL3JlcXVlc3QtaG9vay1ldmVudC1kYXRhLXRyYW5zZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDZEQUk2QjtBQUc3QixNQUFNLGtCQUFrQixHQUFHO0lBQ3ZCLGtDQUFZO0lBQ1osNENBQXNCO0lBQ3RCLG1DQUFhO0NBQ2hCLENBQUM7QUFJRixNQUFNLHNCQUFzQixHQUFHLElBQUksR0FBRyxDQUEyQixrQkFBa0IsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtJQUN2RyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFDckQsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQU9KLE1BQXFCLDZCQUE2QjtJQUc5QztRQUNJLElBQUksQ0FBQyxJQUFJLEdBQUcsc0JBQXNCLENBQUM7SUFDdkMsQ0FBQztJQUVNLGVBQWUsQ0FBRSxDQUFVLEVBQUUsR0FBWTtRQUM1QyxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsR0FBRyxZQUFZLGdCQUFnQixDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVNLGNBQWMsQ0FBRSxLQUE0RDtRQUMvRSwyRUFBMkU7UUFDM0UsZ0RBQWdEO1FBRWhELDRHQUE0RztRQUM1Ryx5Q0FBeUM7UUFDekMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFakQsYUFBYTtRQUNiLE9BQU8sZUFBZSxDQUFDLGVBQWUsQ0FBQztRQUV2QyxPQUFPO1lBQ0gsZUFBZSxFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSTtZQUN2QyxJQUFJLEVBQWEsZUFBZTtTQUNuQyxDQUFDO0lBQ04sQ0FBQztJQUVNLGdCQUFnQixDQUFFLEtBQWlDO1FBQ3RELE1BQU0sZ0JBQWdCLEdBQUcsc0JBQXNCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUUzRSxJQUFJLENBQUMsZ0JBQWdCO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsMkNBQTJDLEtBQUssQ0FBQyxlQUFlLHVCQUF1QixDQUFDLENBQUM7UUFFN0csT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7Q0FDSjtBQXBDRCxnREFvQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbmZpZ3VyZVJlc3BvbnNlRXZlbnQsXG4gICAgUmVxdWVzdEV2ZW50LFxuICAgIFJlc3BvbnNlRXZlbnQsXG59IGZyb20gJ3Rlc3RjYWZlLWhhbW1lcmhlYWQnO1xuXG5cbmNvbnN0IEVWRU5UX0NPTlNUUlVDVE9SUyA9IFtcbiAgICBSZXF1ZXN0RXZlbnQsXG4gICAgQ29uZmlndXJlUmVzcG9uc2VFdmVudCxcbiAgICBSZXNwb25zZUV2ZW50LFxuXTtcblxudHlwZSBFdmVudENvbnN0cnVjdG9yID0gdHlwZW9mIFJlcXVlc3RFdmVudCB8IHR5cGVvZiBDb25maWd1cmVSZXNwb25zZUV2ZW50IHwgdHlwZW9mIFJlc3BvbnNlRXZlbnQ7XG5cbmNvbnN0IEVWRU5UX0NPTlNUUlVDVE9SU19NQVAgPSBuZXcgTWFwPHN0cmluZywgRXZlbnRDb25zdHJ1Y3Rvcj4oRVZFTlRfQ09OU1RSVUNUT1JTLm1hcChldmVudENvbnN0cnVjdG9yID0+IHtcbiAgICByZXR1cm4gW2V2ZW50Q29uc3RydWN0b3IubmFtZSwgZXZlbnRDb25zdHJ1Y3Rvcl07XG59KSk7XG5cbmludGVyZmFjZSBTZXJpYWxpemVkUmVxdWVzdEhvb2tFdmVudCB7XG4gICAgY29uc3RydWN0b3JOYW1lOiBzdHJpbmc7XG4gICAgZGF0YTogdW5rbm93bjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVxdWVzdEhvb2tFdmVudERhdGFUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyByZWFkb25seSB0eXBlOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKCkge1xuICAgICAgICB0aGlzLnR5cGUgPSAnUmVxdWVzdEhvb2tFdmVudERhdGEnO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG91bGRUcmFuc2Zvcm0gKF86IHVua25vd24sIHZhbDogdW5rbm93bik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gRVZFTlRfQ09OU1RSVUNUT1JTLnNvbWUoRXZlbnRDb25zdHJ1Y3RvciA9PiB2YWwgaW5zdGFuY2VvZiBFdmVudENvbnN0cnVjdG9yKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdG9TZXJpYWxpemFibGUgKHZhbHVlOiBSZXF1ZXN0RXZlbnQgfCBDb25maWd1cmVSZXNwb25zZUV2ZW50IHwgUmVzcG9uc2VFdmVudCk6IFNlcmlhbGl6ZWRSZXF1ZXN0SG9va0V2ZW50IHtcbiAgICAgICAgLy8gVE9ETzogUmVtb3ZlIGV2ZW50RGF0YS5fcmVxdWVzdENvbnRleHQgaW50byAndGVzdGNhZmUtaGFtbWVyaGVhZCcgbW9kdWxlXG4gICAgICAgIC8vIGFmdGVyIHN3aXRjaGluZyB0byB0aGUgY29tcGlsZXIgc2VydmljZSBtb2RlLlxuXG4gICAgICAgIC8vIE5PVEU6IEFjY2VzcyB0byB0aGUgZGVwcmVjYXRlZCBwcm9wZXJ0eSBpbnNpZGUgb2YgdGhlIHVuc2VyaWFsaXphYmxlICdldmVudERhdGEuX3JlcXVlc3RDb250ZXh0JyBwcm9wZXJ0eVxuICAgICAgICAvLyBjYXVzZXMgdGhlIG5vZGUncyBkZXByZWNhdGlvbiB3YXJuaW5nLlxuICAgICAgICBjb25zdCBjbG9uZWRFdmVudERhdGEgPSBPYmplY3QuYXNzaWduKHt9LCB2YWx1ZSk7XG5cbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBkZWxldGUgY2xvbmVkRXZlbnREYXRhLl9yZXF1ZXN0Q29udGV4dDtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY29uc3RydWN0b3JOYW1lOiB2YWx1ZS5jb25zdHJ1Y3Rvci5uYW1lLFxuICAgICAgICAgICAgZGF0YTogICAgICAgICAgICBjbG9uZWRFdmVudERhdGEsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIGZyb21TZXJpYWxpemFibGUgKHZhbHVlOiBTZXJpYWxpemVkUmVxdWVzdEhvb2tFdmVudCk6IHVua25vd24ge1xuICAgICAgICBjb25zdCBFdmVudENvbnN0cnVjdG9yID0gRVZFTlRfQ09OU1RSVUNUT1JTX01BUC5nZXQodmFsdWUuY29uc3RydWN0b3JOYW1lKTtcblxuICAgICAgICBpZiAoIUV2ZW50Q29uc3RydWN0b3IpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEFuIGFwcHJvcHJpYXRlIGNvbW1hbmQgY29uc3RydWN0b3IgZm9yIFwiJHt2YWx1ZS5jb25zdHJ1Y3Rvck5hbWV9XCIgdHlwZSB3YXMgbm90IGZvdW5kLmApO1xuXG4gICAgICAgIHJldHVybiBFdmVudENvbnN0cnVjdG9yLmZyb20odmFsdWUuZGF0YSk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const base_transform_1 = __importDefault(require("./base-transform"));
|
|
7
|
-
const testcafe_hammerhead_1 = require("testcafe-hammerhead");
|
|
8
|
-
class ResponseMockTransform extends base_transform_1.default {
|
|
9
|
-
constructor() {
|
|
10
|
-
super('ResponseMock');
|
|
11
|
-
}
|
|
12
|
-
shouldTransform(_, val) {
|
|
13
|
-
return val instanceof testcafe_hammerhead_1.ResponseMock;
|
|
14
|
-
}
|
|
15
|
-
fromSerializable(value) {
|
|
16
|
-
const mock = testcafe_hammerhead_1.ResponseMock.from(value);
|
|
17
|
-
mock.isPredicate = value.isPredicate;
|
|
18
|
-
return mock;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.default = ResponseMockTransform;
|
|
22
|
-
module.exports = exports.default;
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2UtbW9jay10cmFuc2Zvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvc2VyaWFsaXphdGlvbi9yZXBsaWNhdG9yL3RyYW5zZm9ybXMvcmVzcG9uc2UtbW9jay10cmFuc2Zvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxzRUFBNkM7QUFDN0MsNkRBQW1EO0FBSW5ELE1BQXFCLHFCQUFzQixTQUFRLHdCQUFhO0lBQzVEO1FBQ0ksS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFTSxlQUFlLENBQUUsQ0FBVSxFQUFFLEdBQVk7UUFDNUMsT0FBTyxHQUFHLFlBQVksa0NBQVksQ0FBQztJQUN2QyxDQUFDO0lBRU0sZ0JBQWdCLENBQUUsS0FBb0M7UUFDekQsTUFBTSxJQUFJLEdBQUcsa0NBQVksQ0FBQyxJQUFJLENBQUMsS0FBZSxDQUFDLENBQUM7UUFFaEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBRXJDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7Q0FDSjtBQWhCRCx3Q0FnQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZVRyYW5zZm9ybSBmcm9tICcuL2Jhc2UtdHJhbnNmb3JtJztcbmltcG9ydCB7IFJlc3BvbnNlTW9jayB9IGZyb20gJ3Rlc3RjYWZlLWhhbW1lcmhlYWQnO1xuaW1wb3J0IHsgU2VyaWFsaXplZEVudGl0eVdpdGhQcmVkaWNhdGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZXNwb25zZU1vY2tUcmFuc2Zvcm0gZXh0ZW5kcyBCYXNlVHJhbnNmb3JtIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKCkge1xuICAgICAgICBzdXBlcignUmVzcG9uc2VNb2NrJyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3VsZFRyYW5zZm9ybSAoXzogdW5rbm93biwgdmFsOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB2YWwgaW5zdGFuY2VvZiBSZXNwb25zZU1vY2s7XG4gICAgfVxuXG4gICAgcHVibGljIGZyb21TZXJpYWxpemFibGUgKHZhbHVlOiBTZXJpYWxpemVkRW50aXR5V2l0aFByZWRpY2F0ZSk6IFJlc3BvbnNlTW9jayB7XG4gICAgICAgIGNvbnN0IG1vY2sgPSBSZXNwb25zZU1vY2suZnJvbSh2YWx1ZSBhcyBvYmplY3QpO1xuXG4gICAgICAgIG1vY2suaXNQcmVkaWNhdGUgPSB2YWx1ZS5pc1ByZWRpY2F0ZTtcblxuICAgICAgICByZXR1cm4gbW9jaztcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const base_transform_1 = __importDefault(require("./base-transform"));
|
|
7
|
-
const role_1 = __importDefault(require("../../../../role/role"));
|
|
8
|
-
class RoleTransform extends base_transform_1.default {
|
|
9
|
-
constructor() {
|
|
10
|
-
super('Role');
|
|
11
|
-
}
|
|
12
|
-
shouldTransform(_, val) {
|
|
13
|
-
return val instanceof role_1.default;
|
|
14
|
-
}
|
|
15
|
-
fromSerializable(value) {
|
|
16
|
-
return role_1.default.from(value);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
exports.default = RoleTransform;
|
|
20
|
-
module.exports = exports.default;
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS10cmFuc2Zvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvc2VyaWFsaXphdGlvbi9yZXBsaWNhdG9yL3RyYW5zZm9ybXMvcm9sZS10cmFuc2Zvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxzRUFBNkM7QUFDN0MsaUVBQXlDO0FBRXpDLE1BQXFCLGFBQWMsU0FBUSx3QkFBYTtJQUNwRDtRQUNJLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRU0sZUFBZSxDQUFFLENBQVUsRUFBRSxHQUFZO1FBQzVDLE9BQU8sR0FBRyxZQUFZLGNBQUksQ0FBQztJQUMvQixDQUFDO0lBRU0sZ0JBQWdCLENBQUUsS0FBYztRQUNuQyxPQUFPLGNBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFTLENBQUM7SUFDcEMsQ0FBQztDQUNKO0FBWkQsZ0NBWUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZVRyYW5zZm9ybSBmcm9tICcuL2Jhc2UtdHJhbnNmb3JtJztcbmltcG9ydCBSb2xlIGZyb20gJy4uLy4uLy4uLy4uL3JvbGUvcm9sZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJvbGVUcmFuc2Zvcm0gZXh0ZW5kcyBCYXNlVHJhbnNmb3JtIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKCkge1xuICAgICAgICBzdXBlcignUm9sZScpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG91bGRUcmFuc2Zvcm0gKF86IHVua25vd24sIHZhbDogdW5rbm93bik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsIGluc3RhbmNlb2YgUm9sZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZnJvbVNlcmlhbGl6YWJsZSAodmFsdWU6IHVua25vd24pOiBSb2xlIHtcbiAgICAgICAgcmV0dXJuIFJvbGUuZnJvbSh2YWx1ZSkgYXMgUm9sZTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const base_transform_1 = __importDefault(require("./base-transform"));
|
|
7
|
-
const error_list_1 = __importDefault(require("../../../../errors/error-list"));
|
|
8
|
-
class TestCafeErrorListTransform extends base_transform_1.default {
|
|
9
|
-
constructor() {
|
|
10
|
-
super('TestCafeErrorList');
|
|
11
|
-
}
|
|
12
|
-
shouldTransform(_, val) {
|
|
13
|
-
return val instanceof error_list_1.default;
|
|
14
|
-
}
|
|
15
|
-
fromSerializable(value) {
|
|
16
|
-
const errorList = new error_list_1.default();
|
|
17
|
-
errorList.items = value.items;
|
|
18
|
-
return errorList;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.default = TestCafeErrorListTransform;
|
|
22
|
-
module.exports = exports.default;
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGNhZmUtZXJyb3ItbGlzdC10cmFuc2Zvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvc2VyaWFsaXphdGlvbi9yZXBsaWNhdG9yL3RyYW5zZm9ybXMvdGVzdGNhZmUtZXJyb3ItbGlzdC10cmFuc2Zvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxzRUFBNkM7QUFDN0MsK0VBQThEO0FBTTlELE1BQXFCLDBCQUEyQixTQUFRLHdCQUFhO0lBQ2pFO1FBQ0ksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLGVBQWUsQ0FBRSxDQUFVLEVBQUUsR0FBWTtRQUM1QyxPQUFPLEdBQUcsWUFBWSxvQkFBaUIsQ0FBQztJQUM1QyxDQUFDO0lBRU0sZ0JBQWdCLENBQUUsS0FBa0M7UUFDdkQsTUFBTSxTQUFTLEdBQUcsSUFBSSxvQkFBaUIsRUFBRSxDQUFDO1FBRTFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUU5QixPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDO0NBQ0o7QUFoQkQsNkNBZ0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VUcmFuc2Zvcm0gZnJvbSAnLi9iYXNlLXRyYW5zZm9ybSc7XG5pbXBvcnQgVGVzdENhZmVFcnJvckxpc3QgZnJvbSAnLi4vLi4vLi4vLi4vZXJyb3JzL2Vycm9yLWxpc3QnO1xuXG5pbnRlcmZhY2UgU2VyaWFsaXplZFRlc3RDYWZlRXJyb3JMaXN0IHtcbiAgICBpdGVtczogdW5rbm93bltdO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXN0Q2FmZUVycm9yTGlzdFRyYW5zZm9ybSBleHRlbmRzIEJhc2VUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAoKSB7XG4gICAgICAgIHN1cGVyKCdUZXN0Q2FmZUVycm9yTGlzdCcpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG91bGRUcmFuc2Zvcm0gKF86IHVua25vd24sIHZhbDogdW5rbm93bik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdmFsIGluc3RhbmNlb2YgVGVzdENhZmVFcnJvckxpc3Q7XG4gICAgfVxuXG4gICAgcHVibGljIGZyb21TZXJpYWxpemFibGUgKHZhbHVlOiBTZXJpYWxpemVkVGVzdENhZmVFcnJvckxpc3QpOiBUZXN0Q2FmZUVycm9yTGlzdCB7XG4gICAgICAgIGNvbnN0IGVycm9yTGlzdCA9IG5ldyBUZXN0Q2FmZUVycm9yTGlzdCgpO1xuXG4gICAgICAgIGVycm9yTGlzdC5pdGVtcyA9IHZhbHVlLml0ZW1zO1xuXG4gICAgICAgIHJldHVybiBlcnJvckxpc3Q7XG4gICAgfVxufVxuIl19
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const base_transform_1 = __importDefault(require("./base-transform"));
|
|
7
|
-
class URLTransform extends base_transform_1.default {
|
|
8
|
-
constructor() {
|
|
9
|
-
super('URL');
|
|
10
|
-
}
|
|
11
|
-
shouldTransform(_, val) {
|
|
12
|
-
return val instanceof URL;
|
|
13
|
-
}
|
|
14
|
-
toSerializable(value) {
|
|
15
|
-
return value.toString();
|
|
16
|
-
}
|
|
17
|
-
fromSerializable(value) {
|
|
18
|
-
return new URL(value);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.default = URLTransform;
|
|
22
|
-
module.exports = exports.default;
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXRyYW5zZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9zZXJpYWxpemF0aW9uL3JlcGxpY2F0b3IvdHJhbnNmb3Jtcy91cmwtdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsc0VBQTZDO0FBRTdDLE1BQXFCLFlBQWEsU0FBUSx3QkFBYTtJQUNuRDtRQUNJLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRU0sZUFBZSxDQUFFLENBQVUsRUFBRSxHQUFZO1FBQzVDLE9BQU8sR0FBRyxZQUFZLEdBQUcsQ0FBQztJQUM5QixDQUFDO0lBRU0sY0FBYyxDQUFFLEtBQVU7UUFDN0IsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVNLGdCQUFnQixDQUFFLEtBQWE7UUFDbEMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0NBQ0o7QUFoQkQsK0JBZ0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VUcmFuc2Zvcm0gZnJvbSAnLi9iYXNlLXRyYW5zZm9ybSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFVSTFRyYW5zZm9ybSBleHRlbmRzIEJhc2VUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciAoKSB7XG4gICAgICAgIHN1cGVyKCdVUkwnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2hvdWxkVHJhbnNmb3JtIChfOiB1bmtub3duLCB2YWw6IHVua25vd24pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHZhbCBpbnN0YW5jZW9mIFVSTDtcbiAgICB9XG5cbiAgICBwdWJsaWMgdG9TZXJpYWxpemFibGUgKHZhbHVlOiBVUkwpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdmFsdWUudG9TdHJpbmcoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZnJvbVNlcmlhbGl6YWJsZSAodmFsdWU6IHN0cmluZyk6IFVSTCB7XG4gICAgICAgIHJldHVybiBuZXcgVVJMKHZhbHVlKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.restore = exports.serialize = exports.flatten = exports.isFixture = exports.isTest = void 0;
|
|
7
|
-
const lodash_1 = require("lodash");
|
|
8
|
-
const protocol_1 = require("../compiler/protocol");
|
|
9
|
-
const unit_type_1 = __importDefault(require("../../api/structure/unit-type"));
|
|
10
|
-
const RECURSIVE_PROPERTIES = ['testFile', 'fixture', 'currentFixture', 'collectedTests'];
|
|
11
|
-
function isProperty(object, property) {
|
|
12
|
-
return object.hasOwnProperty(property);
|
|
13
|
-
}
|
|
14
|
-
function isTest(value) {
|
|
15
|
-
return value.unitType === unit_type_1.default.test;
|
|
16
|
-
}
|
|
17
|
-
exports.isTest = isTest;
|
|
18
|
-
function isFixture(value) {
|
|
19
|
-
return value.unitType === unit_type_1.default.fixture;
|
|
20
|
-
}
|
|
21
|
-
exports.isFixture = isFixture;
|
|
22
|
-
function mapProperties(object, properties, mapper) {
|
|
23
|
-
for (const property of properties) {
|
|
24
|
-
if (!isProperty(object, property))
|
|
25
|
-
continue;
|
|
26
|
-
const value = object[property];
|
|
27
|
-
if (Array.isArray(value))
|
|
28
|
-
object[property] = value.map(item => mapper({ item, property, object }));
|
|
29
|
-
else
|
|
30
|
-
object[property] = mapper({ item: object[property], property, object });
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
function replaceFunctionProperties(unit) {
|
|
34
|
-
mapProperties(unit, protocol_1.FUNCTION_PROPERTIES, ({ item }) => !!item);
|
|
35
|
-
}
|
|
36
|
-
function restoreFunctionProperties(unit, mapper) {
|
|
37
|
-
mapProperties(unit, protocol_1.FUNCTION_PROPERTIES, ({ item, object, property }) => item ? mapper(object.id, property) : item);
|
|
38
|
-
}
|
|
39
|
-
function flattenRecursiveProperties(unit) {
|
|
40
|
-
mapProperties(unit, RECURSIVE_PROPERTIES, ({ item }) => item.id);
|
|
41
|
-
}
|
|
42
|
-
function restoreRecursiveProperties(unit, units) {
|
|
43
|
-
mapProperties(unit, RECURSIVE_PROPERTIES, ({ item }) => units[item]);
|
|
44
|
-
}
|
|
45
|
-
function restorePredicateInRequestFilterRules(test, mapper) {
|
|
46
|
-
test.requestHooks.forEach(hook => {
|
|
47
|
-
for (let i = 0; i < hook._requestFilterRules.length; i++) {
|
|
48
|
-
const targetRule = hook._requestFilterRules[i];
|
|
49
|
-
if (!targetRule.isPredicate)
|
|
50
|
-
continue;
|
|
51
|
-
targetRule.options = mapper({
|
|
52
|
-
testId: test.id,
|
|
53
|
-
hookId: hook.id,
|
|
54
|
-
ruleId: targetRule.id,
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
function flatten(tests) {
|
|
60
|
-
const testFiles = (0, lodash_1.uniq)(tests.map(test => test.testFile));
|
|
61
|
-
const fixtures = (0, lodash_1.uniq)(tests.map(test => test.fixture));
|
|
62
|
-
return (0, lodash_1.keyBy)([...tests, ...fixtures, ...testFiles], unit => unit.id);
|
|
63
|
-
}
|
|
64
|
-
exports.flatten = flatten;
|
|
65
|
-
function serialize(units) {
|
|
66
|
-
const result = {};
|
|
67
|
-
for (const unit of Object.values(units)) {
|
|
68
|
-
// @ts-ignore
|
|
69
|
-
const copy = Object.assign({}, unit);
|
|
70
|
-
replaceFunctionProperties(copy);
|
|
71
|
-
flattenRecursiveProperties(copy);
|
|
72
|
-
result[copy.id] = copy;
|
|
73
|
-
}
|
|
74
|
-
return result;
|
|
75
|
-
}
|
|
76
|
-
exports.serialize = serialize;
|
|
77
|
-
function restore(units, testFunctionMapper, ruleMapper) {
|
|
78
|
-
const list = Object.values(units);
|
|
79
|
-
const result = [];
|
|
80
|
-
for (const unit of list) {
|
|
81
|
-
restoreRecursiveProperties(unit, units);
|
|
82
|
-
restoreFunctionProperties(unit, testFunctionMapper);
|
|
83
|
-
if (isTest(unit)) {
|
|
84
|
-
restorePredicateInRequestFilterRules(unit, ruleMapper);
|
|
85
|
-
result.push(unit);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
return result;
|
|
89
|
-
}
|
|
90
|
-
exports.restore = restore;
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1zdHJ1Y3R1cmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvc2VyaWFsaXphdGlvbi90ZXN0LXN0cnVjdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtQ0FBcUM7QUFDckMsbURBQTJEO0FBSzNELDhFQUFxRDtBQUlyRCxNQUFNLG9CQUFvQixHQUFHLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBVSxDQUFDO0FBMEJsRyxTQUFTLFVBQVUsQ0FBb0IsTUFBUyxFQUFFLFFBQWdCO0lBQzlELE9BQU8sTUFBTSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBRUQsU0FBZ0IsTUFBTSxDQUFFLEtBQVc7SUFDL0IsT0FBTyxLQUFLLENBQUMsUUFBUSxLQUFLLG1CQUFRLENBQUMsSUFBSSxDQUFDO0FBQzVDLENBQUM7QUFGRCx3QkFFQztBQUVELFNBQWdCLFNBQVMsQ0FBRSxLQUFXO0lBQ2xDLE9BQU8sS0FBSyxDQUFDLFFBQVEsS0FBSyxtQkFBUSxDQUFDLE9BQU8sQ0FBQztBQUMvQyxDQUFDO0FBRkQsOEJBRUM7QUFFRCxTQUFTLGFBQWEsQ0FBNEQsTUFBUyxFQUFFLFVBQWEsRUFBRSxNQUE0QjtJQUNwSSxLQUFLLE1BQU0sUUFBUSxJQUFJLFVBQVUsRUFBRTtRQUMvQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUM7WUFDN0IsU0FBUztRQUViLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUUvQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3BCLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFN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QUFjLElBQUksQ0FBRSxDQUFDO1FBRS9CLHlCQUF5QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWpDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDO0tBQzFCO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQztBQWRELDhCQWNDO0FBRUQsU0FBZ0IsT0FBTyxDQUFFLEtBQVksRUFBRSxrQkFBa0MsRUFBRSxVQUFtQztJQUMxRyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWxDLE1BQU0sTUFBTSxHQUFXLEVBQUUsQ0FBQztJQUUxQixLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksRUFBRTtRQUNyQiwwQkFBMEIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEMseUJBQXlCLENBQUMsSUFBSSxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFFcEQsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDZCxvQ0FBb0MsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFFdkQsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNyQjtLQUNKO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQztBQWpCRCwwQkFpQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1bmlxLCBrZXlCeSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBGVU5DVElPTl9QUk9QRVJUSUVTIH0gZnJvbSAnLi4vY29tcGlsZXIvcHJvdG9jb2wnO1xuaW1wb3J0IHsgUmVxdWVzdEZpbHRlclJ1bGVMb2NhdG9yIH0gZnJvbSAnLi4vY29tcGlsZXIvaW50ZXJmYWNlcyc7XG5pbXBvcnQgVGVzdCBmcm9tICcuLi8uLi9hcGkvc3RydWN0dXJlL3Rlc3QnO1xuaW1wb3J0IEZpeHR1cmUgZnJvbSAnLi4vLi4vYXBpL3N0cnVjdHVyZS9maXh0dXJlJztcbmltcG9ydCBUZXN0RmlsZSBmcm9tICcuLi8uLi9hcGkvc3RydWN0dXJlL3Rlc3QtZmlsZSc7XG5pbXBvcnQgVW5pdFR5cGUgZnJvbSAnLi4vLi4vYXBpL3N0cnVjdHVyZS91bml0LXR5cGUnO1xuaW1wb3J0IHsgUmVxdWVzdEluZm8gfSBmcm9tICd0ZXN0Y2FmZS1oYW1tZXJoZWFkJztcblxuXG5jb25zdCBSRUNVUlNJVkVfUFJPUEVSVElFUyA9IFsndGVzdEZpbGUnLCAnZml4dHVyZScsICdjdXJyZW50Rml4dHVyZScsICdjb2xsZWN0ZWRUZXN0cyddIGFzIGNvbnN0O1xuXG5pbnRlcmZhY2UgRnVuY3Rpb25NYXBwZXIge1xuICAgIChpZDogc3RyaW5nLCBmdW5jdGlvbk5hbWU6IHR5cGVvZiBGVU5DVElPTl9QUk9QRVJUSUVTW251bWJlcl0pOiBGdW5jdGlvbjtcbn1cblxuaW50ZXJmYWNlIFJlcXVlc3RGaWx0ZXJSdWxlTWFwcGVyIHtcbiAgICAocnVsZUxvY2F0b3I6IFJlcXVlc3RGaWx0ZXJSdWxlTG9jYXRvcik6IChyZXF1ZXN0SW5mbzogUmVxdWVzdEluZm8pID0+IFByb21pc2U8Ym9vbGVhbj47XG59XG5cbmludGVyZmFjZSBNYXBwZXJBcmd1bWVudHM8VCwgUD4ge1xuICAgIG9iamVjdDogVDtcbiAgICBwcm9wZXJ0eTogUDtcbiAgICBpdGVtOiBhbnk7XG59XG5cbmludGVyZmFjZSBNYXBwZXI8VCwgUD4ge1xuICAgICh7IGl0ZW0sIHByb3BlcnR5LCBvYmplY3QgfTogTWFwcGVyQXJndW1lbnRzPFQsIFA+KTogYW55O1xufVxuXG5leHBvcnQgdHlwZSBVbml0ID0gVGVzdCB8IEZpeHR1cmUgfCBUZXN0RmlsZTtcblxuZXhwb3J0IGludGVyZmFjZSBVbml0cyB7XG4gICAgW2lkOiBzdHJpbmddOiBVbml0O1xufVxuXG5mdW5jdGlvbiBpc1Byb3BlcnR5PFQgZXh0ZW5kcyBvYmplY3Q+IChvYmplY3Q6IFQsIHByb3BlcnR5OiBzdHJpbmcpOiBwcm9wZXJ0eSBpcyBFeHRyYWN0PGtleW9mIFQsIHN0cmluZz4ge1xuICAgIHJldHVybiBvYmplY3QuaGFzT3duUHJvcGVydHkocHJvcGVydHkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUZXN0ICh2YWx1ZTogVW5pdCk6IHZhbHVlIGlzIFRlc3Qge1xuICAgIHJldHVybiB2YWx1ZS51bml0VHlwZSA9PT0gVW5pdFR5cGUudGVzdDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRml4dHVyZSAodmFsdWU6IFVuaXQpOiB2YWx1ZSBpcyBGaXh0dXJlIHtcbiAgICByZXR1cm4gdmFsdWUudW5pdFR5cGUgPT09IFVuaXRUeXBlLmZpeHR1cmU7XG59XG5cbmZ1bmN0aW9uIG1hcFByb3BlcnRpZXM8VCBleHRlbmRzIFJlYWRvbmx5PG9iamVjdD4sIFAgZXh0ZW5kcyBSZWFkb25seTxzdHJpbmdbXT4+IChvYmplY3Q6IFQsIHByb3BlcnRpZXM6IFAsIG1hcHBlcjogTWFwcGVyPFQsIFBbbnVtYmVyXT4pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5IG9mIHByb3BlcnRpZXMpIHtcbiAgICAgICAgaWYgKCFpc1Byb3BlcnR5KG9iamVjdCwgcHJvcGVydHkpKVxuICAgICAgICAgICAgY29udGludWU7XG5cbiAgICAgICAgY29uc3QgdmFsdWUgPSBvYmplY3RbcHJvcGVydHldO1xuXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSlcbiAgICAgICAgICAgIG9iamVjdFtwcm9wZXJ0eV0gPSB2YWx1ZS5tYXAoaXRlbSA9PiBtYXBwZXIoeyBpdGVtLCBwcm9wZXJ0eSwgb2JqZWN0IH0pKSBhcyBhbnk7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIG9iamVjdFtwcm9wZXJ0eV0gPSBtYXBwZXIoeyBpdGVtOiBvYmplY3RbcHJvcGVydHldLCBwcm9wZXJ0eSwgb2JqZWN0IH0pO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gcmVwbGFjZUZ1bmN0aW9uUHJvcGVydGllcyAodW5pdDogVW5pdCk6IHZvaWQge1xuICAgIG1hcFByb3BlcnRpZXModW5pdCwgRlVOQ1RJT05fUFJPUEVSVElFUywgKHsgaXRlbSB9KSA9PiAhIWl0ZW0pO1xufVxuXG5mdW5jdGlvbiByZXN0b3JlRnVuY3Rpb25Qcm9wZXJ0aWVzICh1bml0OiBVbml0LCBtYXBwZXI6IEZ1bmN0aW9uTWFwcGVyKTogdm9pZCB7XG4gICAgbWFwUHJvcGVydGllcyh1bml0LCBGVU5DVElPTl9QUk9QRVJUSUVTLCAoeyBpdGVtLCBvYmplY3QsIHByb3BlcnR5IH0pID0+IGl0ZW0gPyBtYXBwZXIob2JqZWN0LmlkLCBwcm9wZXJ0eSkgOiBpdGVtKTtcbn1cblxuZnVuY3Rpb24gZmxhdHRlblJlY3Vyc2l2ZVByb3BlcnRpZXMgKHVuaXQ6IFVuaXQpOiB2b2lkIHtcbiAgICBtYXBQcm9wZXJ0aWVzKHVuaXQsIFJFQ1VSU0lWRV9QUk9QRVJUSUVTLCAoeyBpdGVtIH0pID0+IGl0ZW0uaWQpO1xufVxuXG5mdW5jdGlvbiByZXN0b3JlUmVjdXJzaXZlUHJvcGVydGllcyAodW5pdDogVW5pdCwgdW5pdHM6IFVuaXRzKTogdm9pZCB7XG4gICAgbWFwUHJvcGVydGllcyh1bml0LCBSRUNVUlNJVkVfUFJPUEVSVElFUywgKHsgaXRlbSB9KSA9PiB1bml0c1tpdGVtXSk7XG59XG5cbmZ1bmN0aW9uIHJlc3RvcmVQcmVkaWNhdGVJblJlcXVlc3RGaWx0ZXJSdWxlcyAodGVzdDogVGVzdCwgbWFwcGVyOiBSZXF1ZXN0RmlsdGVyUnVsZU1hcHBlcik6IHZvaWQge1xuICAgIHRlc3QucmVxdWVzdEhvb2tzLmZvckVhY2goaG9vayA9PiB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaG9vay5fcmVxdWVzdEZpbHRlclJ1bGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB0YXJnZXRSdWxlID0gaG9vay5fcmVxdWVzdEZpbHRlclJ1bGVzW2ldO1xuXG4gICAgICAgICAgICBpZiAoIXRhcmdldFJ1bGUuaXNQcmVkaWNhdGUpXG4gICAgICAgICAgICAgICAgY29udGludWU7XG5cbiAgICAgICAgICAgIHRhcmdldFJ1bGUub3B0aW9ucyA9IG1hcHBlcih7XG4gICAgICAgICAgICAgICAgdGVzdElkOiB0ZXN0LmlkLFxuICAgICAgICAgICAgICAgIGhvb2tJZDogaG9vay5pZCxcbiAgICAgICAgICAgICAgICBydWxlSWQ6IHRhcmdldFJ1bGUuaWQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZmxhdHRlbiAodGVzdHM6IFRlc3RbXSk6IFVuaXRzIHtcbiAgICBjb25zdCB0ZXN0RmlsZXMgPSB1bmlxKHRlc3RzLm1hcCh0ZXN0ID0+IHRlc3QudGVzdEZpbGUpKTtcbiAgICBjb25zdCBmaXh0dXJlcyAgPSB1bmlxKHRlc3RzLm1hcCh0ZXN0ID0+IHRlc3QuZml4dHVyZSBhcyBGaXh0dXJlKSk7XG5cbiAgICByZXR1cm4ga2V5QnkoWy4uLnRlc3RzLCAuLi5maXh0dXJlcywgLi4udGVzdEZpbGVzXSwgdW5pdCA9PiB1bml0LmlkKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNlcmlhbGl6ZSAodW5pdHM6IFVuaXRzKTogVW5pdHMge1xuICAgIGNvbnN0IHJlc3VsdDogVW5pdHMgPSB7fTtcblxuICAgIGZvciAoY29uc3QgdW5pdCBvZiBPYmplY3QudmFsdWVzKHVuaXRzKSkge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGNvbnN0IGNvcHk6IFVuaXQgPSB7IC4uLnVuaXQgfTtcblxuICAgICAgICByZXBsYWNlRnVuY3Rpb25Qcm9wZXJ0aWVzKGNvcHkpO1xuICAgICAgICBmbGF0dGVuUmVjdXJzaXZlUHJvcGVydGllcyhjb3B5KTtcblxuICAgICAgICByZXN1bHRbY29weS5pZF0gPSBjb3B5O1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXN0b3JlICh1bml0czogVW5pdHMsIHRlc3RGdW5jdGlvbk1hcHBlcjogRnVuY3Rpb25NYXBwZXIsIHJ1bGVNYXBwZXI6IFJlcXVlc3RGaWx0ZXJSdWxlTWFwcGVyKTogVGVzdFtdIHtcbiAgICBjb25zdCBsaXN0ID0gT2JqZWN0LnZhbHVlcyh1bml0cyk7XG5cbiAgICBjb25zdCByZXN1bHQ6IFRlc3RbXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCB1bml0IG9mIGxpc3QpIHtcbiAgICAgICAgcmVzdG9yZVJlY3Vyc2l2ZVByb3BlcnRpZXModW5pdCwgdW5pdHMpO1xuICAgICAgICByZXN0b3JlRnVuY3Rpb25Qcm9wZXJ0aWVzKHVuaXQsIHRlc3RGdW5jdGlvbk1hcHBlcik7XG5cbiAgICAgICAgaWYgKGlzVGVzdCh1bml0KSkge1xuICAgICAgICAgICAgcmVzdG9yZVByZWRpY2F0ZUluUmVxdWVzdEZpbHRlclJ1bGVzKHVuaXQsIHJ1bGVNYXBwZXIpO1xuXG4gICAgICAgICAgICByZXN1bHQucHVzaCh1bml0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG59XG4iXX0=
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.isIPCResponsePacket = exports.isIPCErrorResponse = exports.isTestCafeErrorList = exports.IPCTransportEvents = exports.IPCPacketType = void 0;
|
|
7
|
-
const error_list_1 = __importDefault(require("../../../errors/error-list"));
|
|
8
|
-
var IPCPacketType;
|
|
9
|
-
(function (IPCPacketType) {
|
|
10
|
-
IPCPacketType[IPCPacketType["request"] = 0] = "request";
|
|
11
|
-
IPCPacketType[IPCPacketType["response"] = 1] = "response";
|
|
12
|
-
})(IPCPacketType = exports.IPCPacketType || (exports.IPCPacketType = {}));
|
|
13
|
-
var IPCTransportEvents;
|
|
14
|
-
(function (IPCTransportEvents) {
|
|
15
|
-
IPCTransportEvents["data"] = "data";
|
|
16
|
-
})(IPCTransportEvents = exports.IPCTransportEvents || (exports.IPCTransportEvents = {}));
|
|
17
|
-
function isTestCafeErrorList(err) {
|
|
18
|
-
return err.name === error_list_1.default.name;
|
|
19
|
-
}
|
|
20
|
-
exports.isTestCafeErrorList = isTestCafeErrorList;
|
|
21
|
-
function isIPCErrorResponse(response) {
|
|
22
|
-
return !!response.error;
|
|
23
|
-
}
|
|
24
|
-
exports.isIPCErrorResponse = isIPCErrorResponse;
|
|
25
|
-
function isIPCResponsePacket(message) {
|
|
26
|
-
return ['id', 'type', 'sync', 'data'].every(prop => prop in message);
|
|
27
|
-
}
|
|
28
|
-
exports.isIPCResponsePacket = isIPCResponsePacket;
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy91dGlscy9pcGMvaW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQSw0RUFBMkQ7QUFLM0QsSUFBWSxhQUdYO0FBSEQsV0FBWSxhQUFhO0lBQ3JCLHVEQUFPLENBQUE7SUFDUCx5REFBUSxDQUFBO0FBQ1osQ0FBQyxFQUhXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBR3hCO0FBOEJELElBQVksa0JBRVg7QUFGRCxXQUFZLGtCQUFrQjtJQUMxQixtQ0FBYSxDQUFBO0FBQ2pCLENBQUMsRUFGVyxrQkFBa0IsR0FBbEIsMEJBQWtCLEtBQWxCLDBCQUFrQixRQUU3QjtBQVlELFNBQWdCLG1CQUFtQixDQUFFLEdBQWtCO0lBQ25ELE9BQVEsR0FBeUIsQ0FBQyxJQUFJLEtBQUssb0JBQWlCLENBQUMsSUFBSSxDQUFDO0FBQ3RFLENBQUM7QUFGRCxrREFFQztBQUVELFNBQWdCLGtCQUFrQixDQUFFLFFBQWtEO0lBQ2xGLE9BQU8sQ0FBQyxDQUFFLFFBQTZCLENBQUMsS0FBSyxDQUFDO0FBQ2xELENBQUM7QUFGRCxnREFFQztBQUVELFNBQWdCLG1CQUFtQixDQUFFLE9BQWU7SUFDaEQsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsQ0FBQztBQUN6RSxDQUFDO0FBRkQsa0RBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVbnN1YnNjcmliZUZuIH0gZnJvbSAnZW1pdHRlcnknO1xuaW1wb3J0IEV2ZW50RW1pdHRlciBmcm9tICcuLi8uLi8uLi91dGlscy9hc3luYy1ldmVudC1lbWl0dGVyJztcbmltcG9ydCBUZXN0Q2FmZUVycm9yTGlzdCBmcm9tICcuLi8uLi8uLi9lcnJvcnMvZXJyb3ItbGlzdCc7XG5cblxuZXhwb3J0IHR5cGUgRXh0ZXJuYWxFcnJvciA9IEVycm9yIHwgVGVzdENhZmVFcnJvckxpc3Q7XG5cbmV4cG9ydCBlbnVtIElQQ1BhY2tldFR5cGUge1xuICAgIHJlcXVlc3QsXG4gICAgcmVzcG9uc2Vcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUENQYWNrZXQge1xuICAgIGlkOiBudW1iZXI7XG4gICAgdHlwZTogSVBDUGFja2V0VHlwZTtcbiAgICBzeW5jOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQQ1JlcXVlc3REYXRhIHtcbiAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICBhcmdzOiBhbnlbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUENSZXF1ZXN0UGFja2V0IGV4dGVuZHMgSVBDUGFja2V0IHtcbiAgICBkYXRhOiBJUENSZXF1ZXN0RGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUENTdWNjZXNzZnVsUmVzcG9uc2Uge1xuICAgIHJlc3VsdDogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQQ0Vycm9yUmVzcG9uc2Uge1xuICAgIGVycm9yOiBFeHRlcm5hbEVycm9yO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQQ1Jlc3BvbnNlUGFja2V0IGV4dGVuZHMgSVBDUGFja2V0IHtcbiAgICBkYXRhOiBJUENTdWNjZXNzZnVsUmVzcG9uc2UgfCBJUENFcnJvclJlc3BvbnNlO1xufVxuXG5leHBvcnQgZW51bSBJUENUcmFuc3BvcnRFdmVudHMge1xuICAgIGRhdGEgPSAnZGF0YSdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUENUcmFuc3BvcnQgZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xuICAgIG9uKGV2ZW50OiBJUENUcmFuc3BvcnRFdmVudHMuZGF0YSwgaGFuZGxlcjogKGRhdGE6IElQQ1BhY2tldCkgPT4gUHJvbWlzZTx2b2lkPik6IFVuc3Vic2NyaWJlRm47XG5cbiAgICByZWFkKCk6IHZvaWQ7XG4gICAgd3JpdGUocGFja2V0OiBJUENQYWNrZXQpOiBQcm9taXNlPHZvaWQ+O1xuXG4gICAgcmVhZFN5bmMoKTogSVBDUmVzcG9uc2VQYWNrZXQ7XG4gICAgd3JpdGVTeW5jKHBhY2tldDogSVBDUGFja2V0KTogdm9pZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVGVzdENhZmVFcnJvckxpc3QgKGVycjogRXh0ZXJuYWxFcnJvcik6IGVyciBpcyBUZXN0Q2FmZUVycm9yTGlzdCB7XG4gICAgcmV0dXJuIChlcnIgYXMgVGVzdENhZmVFcnJvckxpc3QpLm5hbWUgPT09IFRlc3RDYWZlRXJyb3JMaXN0Lm5hbWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0lQQ0Vycm9yUmVzcG9uc2UgKHJlc3BvbnNlOiBJUENTdWNjZXNzZnVsUmVzcG9uc2UgfCBJUENFcnJvclJlc3BvbnNlKTogcmVzcG9uc2UgaXMgSVBDRXJyb3JSZXNwb25zZSB7XG4gICAgcmV0dXJuICEhKHJlc3BvbnNlIGFzIElQQ0Vycm9yUmVzcG9uc2UpLmVycm9yO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNJUENSZXNwb25zZVBhY2tldCAobWVzc2FnZTogb2JqZWN0KTogbWVzc2FnZSBpcyBJUENSZXNwb25zZVBhY2tldCB7XG4gICAgcmV0dXJuIFsnaWQnLCAndHlwZScsICdzeW5jJywgJ2RhdGEnXS5ldmVyeShwcm9wID0+IHByb3AgaW4gbWVzc2FnZSk7XG59XG4iXX0=
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.SyncWriter = exports.SyncReader = exports.AsyncWriter = exports.AsyncReader = void 0;
|
|
7
|
-
const fs_1 = __importDefault(require("fs"));
|
|
8
|
-
const debug_1 = __importDefault(require("debug"));
|
|
9
|
-
const packet_1 = __importDefault(require("./packet"));
|
|
10
|
-
const message_1 = require("./message");
|
|
11
|
-
const async_event_emitter_1 = __importDefault(require("../../../utils/async-event-emitter"));
|
|
12
|
-
const debugLogger = (0, debug_1.default)('testcafe:services:utils:ipc:io');
|
|
13
|
-
class AsyncReader extends async_event_emitter_1.default {
|
|
14
|
-
constructor(stream) {
|
|
15
|
-
super();
|
|
16
|
-
this.parser = new message_1.MessageParser();
|
|
17
|
-
this.stream = stream;
|
|
18
|
-
this.processMessages = Promise.resolve();
|
|
19
|
-
}
|
|
20
|
-
_onData(data) {
|
|
21
|
-
const messages = this.parser.parse(data);
|
|
22
|
-
if (!messages.length)
|
|
23
|
-
return;
|
|
24
|
-
this.processMessages = this.processMessages.then(() => this._processMessages(messages));
|
|
25
|
-
}
|
|
26
|
-
async _processMessages(messages) {
|
|
27
|
-
for (const message of messages) {
|
|
28
|
-
try {
|
|
29
|
-
await this.emit('data', message);
|
|
30
|
-
}
|
|
31
|
-
catch (e) {
|
|
32
|
-
debugLogger(e);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
read() {
|
|
37
|
-
this.stream.on('data', data => this._onData(data));
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
exports.AsyncReader = AsyncReader;
|
|
41
|
-
class AsyncWriter {
|
|
42
|
-
constructor(stream) {
|
|
43
|
-
this.serializer = new message_1.MessageSerializer();
|
|
44
|
-
this.stream = stream;
|
|
45
|
-
this.batchPromise = Promise.resolve();
|
|
46
|
-
}
|
|
47
|
-
_write(buffer) {
|
|
48
|
-
if (this.stream.write(buffer))
|
|
49
|
-
return Promise.resolve();
|
|
50
|
-
return new Promise(r => this.stream.once('drain', r));
|
|
51
|
-
}
|
|
52
|
-
_writeBuffers(buffers) {
|
|
53
|
-
this.batchPromise = this.batchPromise
|
|
54
|
-
.catch(() => { }) // eslint-disable-line @typescript-eslint/no-empty-function
|
|
55
|
-
.then(async () => {
|
|
56
|
-
for (const buffer of buffers)
|
|
57
|
-
await this._write(buffer);
|
|
58
|
-
});
|
|
59
|
-
return this.batchPromise;
|
|
60
|
-
}
|
|
61
|
-
async write(message) {
|
|
62
|
-
const buffers = this.serializer.serialize(message);
|
|
63
|
-
return await this._writeBuffers(buffers);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
exports.AsyncWriter = AsyncWriter;
|
|
67
|
-
class SyncReader {
|
|
68
|
-
constructor(fd) {
|
|
69
|
-
this.parser = new message_1.MessageParser();
|
|
70
|
-
this.fd = fd;
|
|
71
|
-
this.messageQueue = [];
|
|
72
|
-
}
|
|
73
|
-
_readSync() {
|
|
74
|
-
const buffer = Buffer.alloc(packet_1.default.MAX_PACKET_SIZE);
|
|
75
|
-
const readLength = fs_1.default.readSync(this.fd, buffer, 0, packet_1.default.MAX_PACKET_SIZE, null);
|
|
76
|
-
return buffer.slice(0, readLength);
|
|
77
|
-
}
|
|
78
|
-
_addMessagesToQueue() {
|
|
79
|
-
let messages = this.parser.parse(this._readSync());
|
|
80
|
-
while (!messages.length)
|
|
81
|
-
messages = this.parser.parse(this._readSync());
|
|
82
|
-
this.messageQueue.push(...messages);
|
|
83
|
-
}
|
|
84
|
-
readSync() {
|
|
85
|
-
let message = this.messageQueue.shift();
|
|
86
|
-
while (!message) {
|
|
87
|
-
this._addMessagesToQueue();
|
|
88
|
-
message = this.messageQueue.shift();
|
|
89
|
-
}
|
|
90
|
-
return message;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
exports.SyncReader = SyncReader;
|
|
94
|
-
class SyncWriter {
|
|
95
|
-
constructor(fd) {
|
|
96
|
-
this.serializer = new message_1.MessageSerializer();
|
|
97
|
-
this.fd = fd;
|
|
98
|
-
}
|
|
99
|
-
_writeSync(buffer) {
|
|
100
|
-
fs_1.default.writeSync(this.fd, buffer);
|
|
101
|
-
}
|
|
102
|
-
writeSync(message) {
|
|
103
|
-
const buffers = this.serializer.serialize(message);
|
|
104
|
-
for (const buffer of buffers)
|
|
105
|
-
this._writeSync(buffer);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
exports.SyncWriter = SyncWriter;
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvdXRpbHMvaXBjL2lvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDRDQUFvQjtBQUNwQixrREFBMEI7QUFDMUIsc0RBQThCO0FBQzlCLHVDQUE2RDtBQUM3RCw2RkFBOEQ7QUFHOUQsTUFBTSxXQUFXLEdBQUcsSUFBQSxlQUFLLEVBQUMsZ0NBQWdDLENBQUMsQ0FBQztBQUU1RCxNQUFhLFdBQVksU0FBUSw2QkFBWTtJQUt6QyxZQUFvQixNQUE2QjtRQUM3QyxLQUFLLEVBQUUsQ0FBQztRQUVSLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSx1QkFBYSxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFckIsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVPLE9BQU8sQ0FBRSxJQUFZO1FBQ3pCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXpDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTTtZQUNoQixPQUFPO1FBRVgsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBRU8sS0FBSyxDQUFDLGdCQUFnQixDQUFFLFFBQWtCO1FBQzlDLEtBQUssTUFBTSxPQUFPLElBQUksUUFBUSxFQUFFO1lBQzVCLElBQUk7Z0JBQ0EsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQzthQUNwQztZQUNELE9BQU8sQ0FBQyxFQUFFO2dCQUNOLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQzth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QU8sRUFBRTtZQUNiLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBRTNCLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3ZDO1FBRUQsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQztDQUNKO0FBdkNELGdDQXVDQztBQUVELE1BQWEsVUFBVTtJQUluQixZQUFvQixFQUFVO1FBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSwyQkFBaUIsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxFQUFFLEdBQVcsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxVQUFVLENBQUUsTUFBYztRQUM5QixZQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVNLFNBQVMsQ0FBRSxPQUFlO1FBQzdCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRW5ELEtBQUssTUFBTSxNQUFNLElBQUksT0FBTztZQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7Q0FDSjtBQW5CRCxnQ0FtQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcbmltcG9ydCBQYWNrZXQgZnJvbSAnLi9wYWNrZXQnO1xuaW1wb3J0IHsgTWVzc2FnZVBhcnNlciwgTWVzc2FnZVNlcmlhbGl6ZXIgfSBmcm9tICcuL21lc3NhZ2UnO1xuaW1wb3J0IEV2ZW50RW1pdHRlciBmcm9tICcuLi8uLi8uLi91dGlscy9hc3luYy1ldmVudC1lbWl0dGVyJztcblxuXG5jb25zdCBkZWJ1Z0xvZ2dlciA9IGRlYnVnKCd0ZXN0Y2FmZTpzZXJ2aWNlczp1dGlsczppcGM6aW8nKTtcblxuZXhwb3J0IGNsYXNzIEFzeW5jUmVhZGVyIGV4dGVuZHMgRXZlbnRFbWl0dGVyIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhcnNlcjogTWVzc2FnZVBhcnNlcjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0cmVhbTogTm9kZUpTLlJlYWRhYmxlU3RyZWFtO1xuICAgIHByaXZhdGUgcHJvY2Vzc01lc3NhZ2VzOiBQcm9taXNlPHZvaWQ+O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yIChzdHJlYW06IE5vZGVKUy5SZWFkYWJsZVN0cmVhbSkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMucGFyc2VyID0gbmV3IE1lc3NhZ2VQYXJzZXIoKTtcbiAgICAgICAgdGhpcy5zdHJlYW0gPSBzdHJlYW07XG5cbiAgICAgICAgdGhpcy5wcm9jZXNzTWVzc2FnZXMgPSBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9vbkRhdGEgKGRhdGE6IEJ1ZmZlcik6IHZvaWQge1xuICAgICAgICBjb25zdCBtZXNzYWdlcyA9IHRoaXMucGFyc2VyLnBhcnNlKGRhdGEpO1xuXG4gICAgICAgIGlmICghbWVzc2FnZXMubGVuZ3RoKVxuICAgICAgICAgICAgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMucHJvY2Vzc01lc3NhZ2VzID0gdGhpcy5wcm9jZXNzTWVzc2FnZXMudGhlbigoKSA9PiB0aGlzLl9wcm9jZXNzTWVzc2FnZXMobWVzc2FnZXMpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIF9wcm9jZXNzTWVzc2FnZXMgKG1lc3NhZ2VzOiBvYmplY3RbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBmb3IgKGNvbnN0IG1lc3NhZ2Ugb2YgbWVzc2FnZXMpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5lbWl0KCdkYXRhJywgbWVzc2FnZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIGRlYnVnTG9nZ2VyKGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHJlYWQgKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0cmVhbS5vbignZGF0YScsIGRhdGEgPT4gdGhpcy5fb25EYXRhKGRhdGEpKTtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBc3luY1dyaXRlciB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXJpYWxpemVyOiBNZXNzYWdlU2VyaWFsaXplcjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0cmVhbTogTm9kZUpTLldyaXRhYmxlU3RyZWFtO1xuXG4gICAgcHJpdmF0ZSBiYXRjaFByb21pc2U6IFByb21pc2U8dm9pZD47XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKHN0cmVhbTogTm9kZUpTLldyaXRhYmxlU3RyZWFtKSB7XG4gICAgICAgIHRoaXMuc2VyaWFsaXplciA9IG5ldyBNZXNzYWdlU2VyaWFsaXplcigpO1xuICAgICAgICB0aGlzLnN0cmVhbSAgICAgPSBzdHJlYW07XG5cbiAgICAgICAgdGhpcy5iYXRjaFByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF93cml0ZSAoYnVmZmVyOiBCdWZmZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKHRoaXMuc3RyZWFtLndyaXRlKGJ1ZmZlcikpXG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHIgPT4gdGhpcy5zdHJlYW0ub25jZSgnZHJhaW4nLCByKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfd3JpdGVCdWZmZXJzIChidWZmZXJzOiBCdWZmZXJbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLmJhdGNoUHJvbWlzZSA9IHRoaXMuYmF0Y2hQcm9taXNlXG4gICAgICAgICAgICAuY2F0Y2goKCkgPT4ge30pIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gICAgICAgICAgICAudGhlbihhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBidWZmZXIgb2YgYnVmZmVycylcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5fd3JpdGUoYnVmZmVyKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmJhdGNoUHJvbWlzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgd3JpdGUgKG1lc3NhZ2U6IG9iamVjdCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCBidWZmZXJzID0gdGhpcy5zZXJpYWxpemVyLnNlcmlhbGl6ZShtZXNzYWdlKTtcblxuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5fd3JpdGVCdWZmZXJzKGJ1ZmZlcnMpO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFN5bmNSZWFkZXIge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcGFyc2VyOiBNZXNzYWdlUGFyc2VyO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZmQ6IG51bWJlcjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VRdWV1ZTogb2JqZWN0W107XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKGZkOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5wYXJzZXIgPSBuZXcgTWVzc2FnZVBhcnNlcigpO1xuICAgICAgICB0aGlzLmZkICAgICA9IGZkO1xuXG4gICAgICAgIHRoaXMubWVzc2FnZVF1ZXVlID0gW107XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcmVhZFN5bmMgKCk6IEJ1ZmZlciB7XG4gICAgICAgIGNvbnN0IGJ1ZmZlciAgICAgPSBCdWZmZXIuYWxsb2MoUGFja2V0Lk1BWF9QQUNLRVRfU0laRSk7XG4gICAgICAgIGNvbnN0IHJlYWRMZW5ndGggPSBmcy5yZWFkU3luYyh0aGlzLmZkLCBidWZmZXIsIDAsIFBhY2tldC5NQVhfUEFDS0VUX1NJWkUsIG51bGwpO1xuXG4gICAgICAgIHJldHVybiBidWZmZXIuc2xpY2UoMCwgcmVhZExlbmd0aCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfYWRkTWVzc2FnZXNUb1F1ZXVlICgpOiB2b2lkIHtcbiAgICAgICAgbGV0IG1lc3NhZ2VzID0gdGhpcy5wYXJzZXIucGFyc2UodGhpcy5fcmVhZFN5bmMoKSk7XG5cbiAgICAgICAgd2hpbGUgKCFtZXNzYWdlcy5sZW5ndGgpXG4gICAgICAgICAgICBtZXNzYWdlcyA9IHRoaXMucGFyc2VyLnBhcnNlKHRoaXMuX3JlYWRTeW5jKCkpO1xuXG4gICAgICAgIHRoaXMubWVzc2FnZVF1ZXVlLnB1c2goLi4ubWVzc2FnZXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWFkU3luYyAoKTogb2JqZWN0IHtcbiAgICAgICAgbGV0IG1lc3NhZ2UgPSB0aGlzLm1lc3NhZ2VRdWV1ZS5zaGlmdCgpO1xuXG4gICAgICAgIHdoaWxlICghbWVzc2FnZSkge1xuICAgICAgICAgICAgdGhpcy5fYWRkTWVzc2FnZXNUb1F1ZXVlKCk7XG5cbiAgICAgICAgICAgIG1lc3NhZ2UgPSB0aGlzLm1lc3NhZ2VRdWV1ZS5zaGlmdCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG1lc3NhZ2U7XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgU3luY1dyaXRlciB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXJpYWxpemVyOiBNZXNzYWdlU2VyaWFsaXplcjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZkOiBudW1iZXI7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKGZkOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5zZXJpYWxpemVyID0gbmV3IE1lc3NhZ2VTZXJpYWxpemVyKCk7XG4gICAgICAgIHRoaXMuZmQgICAgICAgICA9IGZkO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3dyaXRlU3luYyAoYnVmZmVyOiBCdWZmZXIpOiB2b2lkIHtcbiAgICAgICAgZnMud3JpdGVTeW5jKHRoaXMuZmQsIGJ1ZmZlcik7XG4gICAgfVxuXG4gICAgcHVibGljIHdyaXRlU3luYyAobWVzc2FnZTogb2JqZWN0KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJ1ZmZlcnMgPSB0aGlzLnNlcmlhbGl6ZXIuc2VyaWFsaXplKG1lc3NhZ2UpO1xuXG4gICAgICAgIGZvciAoY29uc3QgYnVmZmVyIG9mIGJ1ZmZlcnMpXG4gICAgICAgICAgICB0aGlzLl93cml0ZVN5bmMoYnVmZmVyKTtcbiAgICB9XG59XG4iXX0=
|