testcafe 1.14.1 → 1.14.2
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 +6 -0
- package/LICENSE +21 -21
- package/bin/testcafe-with-v8-flag-filter.js +0 -0
- package/lib/api/exportable-lib/index.js +49 -49
- package/lib/api/request-hooks/assert-type.js +7 -7
- package/lib/api/request-hooks/hook-method-names.js +9 -9
- package/lib/api/request-hooks/hook.js +32 -32
- package/lib/api/request-hooks/interfaces.js +2 -2
- package/lib/api/request-hooks/request-logger.js +112 -112
- package/lib/api/request-hooks/request-mock/create-request-mock.js +10 -10
- package/lib/api/request-hooks/request-mock/index.js +44 -44
- package/lib/api/request-hooks/request-mock.js +46 -46
- package/lib/api/structure/base-unit.js +11 -11
- package/lib/api/structure/fixture.js +75 -75
- package/lib/api/structure/interfaces.js +2 -2
- package/lib/api/structure/test-file.js +31 -31
- package/lib/api/structure/test-timeout.js +9 -9
- package/lib/api/structure/test.js +85 -85
- package/lib/api/structure/testing-unit.js +89 -89
- package/lib/api/structure/unit-type.js +9 -9
- package/lib/api/test-controller/assertion.js +88 -88
- package/lib/api/test-controller/execution-context.js +82 -82
- package/lib/api/test-controller/index.js +358 -358
- package/lib/api/test-controller/proxy.js +28 -28
- package/lib/api/test-page-url.js +60 -60
- package/lib/api/test-run-tracker.js +68 -68
- package/lib/api/wrap-test-function.js +49 -49
- package/lib/assertions/executor.js +74 -74
- package/lib/assertions/get-fn.js +46 -46
- package/lib/assertions/type.js +20 -20
- package/lib/assets/content-types.js +9 -9
- package/lib/assets/injectables.js +18 -18
- package/lib/browser/connection/command.js +10 -10
- package/lib/browser/connection/error-hints.js +9 -9
- package/lib/browser/connection/gateway.js +159 -159
- package/lib/browser/connection/get-hints.js +33 -33
- package/lib/browser/connection/heartbeat-status.js +8 -8
- package/lib/browser/connection/index.js +328 -328
- package/lib/browser/connection/remotes-queue.js +46 -46
- package/lib/browser/connection/service-routes.js +12 -12
- package/lib/browser/connection/status.js +12 -12
- package/lib/browser/interfaces.js +2 -2
- package/lib/browser/provider/built-in/dedicated/base.js +80 -80
- package/lib/browser/provider/built-in/dedicated/chrome/browser-client.js +204 -204
- package/lib/browser/provider/built-in/dedicated/chrome/build-chrome-args.js +17 -17
- package/lib/browser/provider/built-in/dedicated/chrome/config.js +110 -110
- package/lib/browser/provider/built-in/dedicated/chrome/create-temp-profile.js +45 -45
- package/lib/browser/provider/built-in/dedicated/chrome/elapsed-upperbounds.js +15 -15
- package/lib/browser/provider/built-in/dedicated/chrome/index.js +102 -102
- package/lib/browser/provider/built-in/dedicated/chrome/interfaces.js +2 -2
- package/lib/browser/provider/built-in/dedicated/chrome/local-chrome.js +24 -24
- package/lib/browser/provider/built-in/dedicated/chrome/runtime-info.js +29 -29
- package/lib/browser/provider/built-in/dedicated/edge/index.js +10 -10
- package/lib/browser/provider/built-in/dedicated/edge/runtime-info.js +29 -29
- package/lib/browser/provider/built-in/dedicated/firefox/config.js +33 -33
- package/lib/browser/provider/built-in/dedicated/firefox/create-temp-profile.js +78 -78
- package/lib/browser/provider/built-in/dedicated/firefox/index.js +73 -73
- package/lib/browser/provider/built-in/dedicated/firefox/local-firefox.js +36 -36
- package/lib/browser/provider/built-in/dedicated/firefox/marionette-client/commands.js +13 -13
- package/lib/browser/provider/built-in/dedicated/firefox/marionette-client/index.js +200 -200
- package/lib/browser/provider/built-in/dedicated/firefox/runtime-info.js +17 -17
- package/lib/browser/provider/built-in/index.js +21 -21
- package/lib/browser/provider/built-in/locally-installed.js +30 -30
- package/lib/browser/provider/built-in/path.js +47 -47
- package/lib/browser/provider/built-in/remote.js +58 -58
- package/lib/browser/provider/index.js +303 -303
- package/lib/browser/provider/parse-provider-name.js +16 -16
- package/lib/browser/provider/plugin-host.js +121 -121
- package/lib/browser/provider/pool.js +115 -115
- package/lib/browser/provider/utils/argument-parsing.js +74 -74
- package/lib/browser/provider/utils/browser-starter.js +34 -34
- package/lib/browser/provider/utils/client-functions.js +24 -24
- package/lib/browser/provider/utils/get-maximized-headless-window-size.js +9 -9
- package/lib/cli/argument-parser.js +284 -284
- package/lib/cli/authentication-helper.js +35 -35
- package/lib/cli/cli.js +134 -134
- package/lib/cli/correct-browsers-and-sources.js +40 -40
- package/lib/cli/index.js +19 -19
- package/lib/cli/log.js +43 -43
- package/lib/cli/remotes-wizard.js +36 -36
- package/lib/cli/termination-handler.js +38 -38
- package/lib/client/automation/index.js +34 -16
- package/lib/client/automation/index.min.js +1 -1
- package/lib/client/browser/idle-page/index.html.mustache +35 -35
- package/lib/client/browser/idle-page/logo.svg +86 -86
- package/lib/client/core/index.js +14 -14
- package/lib/client/driver/index.js +46 -16
- package/lib/client/driver/index.min.js +1 -1
- package/lib/client/driver/internal-properties.js +9 -9
- package/lib/client/test-run/iframe.js.mustache +17 -17
- package/lib/client/test-run/index.js.mustache +51 -51
- package/lib/client/ui/index.js +14 -14
- package/lib/client/ui/sprite.svg +42 -42
- package/lib/client-functions/builder-symbol.js +4 -4
- package/lib/client-functions/client-function-builder.js +155 -155
- package/lib/client-functions/replicator.js +61 -61
- package/lib/client-functions/return-single-prop-mode.js +8 -8
- package/lib/client-functions/selector-api-execution-mode.js +20 -20
- package/lib/client-functions/selectors/add-api.js +645 -645
- package/lib/client-functions/selectors/create-snapshot-methods.js +13 -13
- package/lib/client-functions/selectors/prepare-api-args.js +20 -20
- package/lib/client-functions/selectors/selector-attribute-filter.js +22 -22
- package/lib/client-functions/selectors/selector-builder.js +153 -153
- package/lib/client-functions/selectors/selector-text-filter.js +43 -43
- package/lib/client-functions/selectors/snapshot-properties.js +48 -48
- package/lib/client-functions/types.js +18 -18
- package/lib/compiler/babel/format-babel-produced-code.js +10 -10
- package/lib/compiler/babel/get-base-babel-options.js +11 -11
- package/lib/compiler/babel/load-libs.js +63 -63
- package/lib/compiler/babel/preset-stage-2.js +19 -19
- package/lib/compiler/compile-client-function.js +73 -73
- package/lib/compiler/compilers.js +33 -33
- package/lib/compiler/index.js +92 -92
- package/lib/compiler/interfaces.js +2 -2
- package/lib/compiler/test-file/api-based.js +146 -146
- package/lib/compiler/test-file/base.js +36 -36
- package/lib/compiler/test-file/exportble-lib-path.js +5 -5
- package/lib/compiler/test-file/formats/coffeescript/compiler.js +38 -38
- package/lib/compiler/test-file/formats/coffeescript/get-test-list.js +29 -29
- package/lib/compiler/test-file/formats/es-next/compiler.js +42 -42
- package/lib/compiler/test-file/formats/es-next/get-test-list.js +166 -166
- package/lib/compiler/test-file/formats/es-next/is-flow-code.js +7 -7
- package/lib/compiler/test-file/formats/raw.js +85 -85
- package/lib/compiler/test-file/formats/typescript/compiler.js +135 -135
- package/lib/compiler/test-file/formats/typescript/get-test-list.js +185 -185
- package/lib/compiler/test-file/test-file-parser-base.js +214 -214
- package/lib/configuration/configuration-base.js +165 -165
- package/lib/configuration/constants.js +9 -9
- package/lib/configuration/customizable-compilers.js +7 -7
- package/lib/configuration/default-values.js +51 -51
- package/lib/configuration/interfaces.js +2 -2
- package/lib/configuration/option-names.js +53 -53
- package/lib/configuration/option-source.js +9 -9
- package/lib/configuration/option.js +14 -14
- package/lib/configuration/quarantine-option-names.js +8 -8
- package/lib/configuration/run-option-names.js +26 -26
- package/lib/configuration/screenshot-option-names.js +10 -10
- package/lib/configuration/testcafe-configuration.js +163 -163
- package/lib/configuration/types.js +2 -2
- package/lib/configuration/typescript-configuration.js +62 -62
- package/lib/custom-client-scripts/assert-type.js +7 -7
- package/lib/custom-client-scripts/client-script-init.js +2 -2
- package/lib/custom-client-scripts/client-script.js +106 -106
- package/lib/custom-client-scripts/get-code.js +11 -11
- package/lib/custom-client-scripts/get-url.js +6 -6
- package/lib/custom-client-scripts/load.js +15 -15
- package/lib/custom-client-scripts/problematic-scripts.js +2 -2
- package/lib/custom-client-scripts/routing.js +36 -36
- package/lib/custom-client-scripts/utils.js +60 -60
- package/lib/embedding-utils.js +83 -83
- package/lib/errors/create-stack-filter.js +18 -18
- package/lib/errors/error-list.js +26 -26
- package/lib/errors/get-callsite.js +31 -31
- package/lib/errors/internal-modules-prefix.js +8 -8
- package/lib/errors/is-internal-stack-frame.js +45 -45
- package/lib/errors/process-test-fn-error.js +37 -37
- package/lib/errors/runtime/index.js +123 -123
- package/lib/errors/runtime/templates.js +115 -115
- package/lib/errors/runtime/type-assertions.js +112 -112
- package/lib/errors/stack-cleaning-hook.js +64 -64
- package/lib/errors/test-run/formattable-adapter.js +59 -59
- package/lib/errors/test-run/index.js +301 -301
- package/lib/errors/test-run/render-error-template.js +31 -31
- package/lib/errors/test-run/templates.js +91 -91
- package/lib/errors/test-run/utils.js +89 -89
- package/lib/errors/types.js +156 -156
- package/lib/index.js +81 -81
- package/lib/live/bootstrapper.js +43 -43
- package/lib/live/controller.js +107 -107
- package/lib/live/file-watcher/index.js +67 -67
- package/lib/live/file-watcher/modules-graph.js +58 -58
- package/lib/live/keyboard-observer.js +76 -76
- package/lib/live/logger/index.js +64 -64
- package/lib/live/test-run-controller.js +96 -96
- package/lib/live/test-run-state.js +6 -6
- package/lib/live/test-run.js +56 -56
- package/lib/live/test-runner.js +167 -167
- package/lib/load-assets.js +29 -29
- package/lib/notifications/add-rendered-warning.js +16 -16
- package/lib/notifications/debug-logger.js +78 -78
- package/lib/notifications/deprecated.js +24 -24
- package/lib/notifications/information-message.js +9 -9
- package/lib/notifications/warning-log.js +31 -31
- package/lib/notifications/warning-message.js +47 -47
- package/lib/reporter/command/command-formatter.js +120 -109
- package/lib/reporter/command/format-command.js +8 -8
- package/lib/reporter/command/interfaces.js +2 -2
- package/lib/reporter/index.js +319 -314
- package/lib/reporter/interfaces.js +2 -2
- package/lib/reporter/plugin-host.js +135 -135
- package/lib/reporter/plugin-methods.js +12 -12
- package/lib/role/index.js +74 -74
- package/lib/role/marker-symbol.js +7 -7
- package/lib/role/phase.js +9 -9
- package/lib/runner/bootstrapper.js +271 -271
- package/lib/runner/browser-job-result.js +9 -9
- package/lib/runner/browser-job.js +152 -152
- package/lib/runner/browser-set.js +114 -114
- package/lib/runner/fixture-hook-controller.js +85 -85
- package/lib/runner/index.js +449 -449
- package/lib/runner/interfaces.js +2 -2
- package/lib/runner/reporter-stream-controller.js +27 -27
- package/lib/runner/task/index.js +151 -151
- package/lib/runner/task/phase.js +9 -9
- package/lib/runner/test-run-controller.js +165 -165
- package/lib/runner/tested-app.js +72 -72
- package/lib/screenshots/capturer.js +141 -141
- package/lib/screenshots/constants.js +11 -11
- package/lib/screenshots/crop.js +111 -111
- package/lib/screenshots/default-extension.js +4 -4
- package/lib/screenshots/index.js +67 -67
- package/lib/screenshots/utils.js +39 -39
- package/lib/services/compiler/host.js +190 -190
- package/lib/services/compiler/io.js +9 -9
- package/lib/services/compiler/protocol.js +17 -16
- package/lib/services/compiler/service.js +225 -212
- package/lib/services/compiler/test-run-proxy.js +111 -111
- package/lib/services/interfaces.js +2 -2
- package/lib/services/process-title.js +8 -8
- package/lib/services/serialization/prepare-options.js +17 -17
- package/lib/services/serialization/replicator/create-replicator.js +25 -25
- package/lib/services/serialization/replicator/custom-error-transform.js +26 -26
- package/lib/services/serialization/test-structure.js +92 -92
- package/lib/services/utils/ipc/interfaces.js +30 -30
- package/lib/services/utils/ipc/io.js +108 -108
- package/lib/services/utils/ipc/message.js +75 -75
- package/lib/services/utils/ipc/packet.js +55 -55
- package/lib/services/utils/ipc/proxy.js +109 -109
- package/lib/services/utils/ipc/transport.js +64 -64
- package/lib/shared/errors/index.js +382 -382
- package/lib/shared/node-modules-folder-name.js +4 -4
- package/lib/test-run/bookmark.js +90 -90
- package/lib/test-run/browser-console-messages.js +73 -73
- package/lib/test-run/browser-manipulation-queue.js +92 -92
- package/lib/test-run/client-messages.js +9 -9
- package/lib/test-run/commands/actions.js +486 -483
- package/lib/test-run/commands/assertion.js +45 -45
- package/lib/test-run/commands/base.js +14 -14
- package/lib/test-run/commands/browser-manipulation.js +95 -95
- package/lib/test-run/commands/from-object.js +82 -82
- package/lib/test-run/commands/observation.js +61 -61
- package/lib/test-run/commands/options.js +231 -215
- package/lib/test-run/commands/service.js +54 -48
- package/lib/test-run/commands/type.js +65 -64
- package/lib/test-run/commands/utils.js +87 -87
- package/lib/test-run/commands/validations/argument.js +90 -90
- package/lib/test-run/commands/validations/factories.js +47 -47
- package/lib/test-run/commands/validations/initializers.js +44 -44
- package/lib/test-run/debug-log.js +32 -32
- package/lib/test-run/execute-js-expression.js +74 -74
- package/lib/test-run/index.js +823 -799
- package/lib/test-run/marker-symbol.js +7 -7
- package/lib/test-run/observed-callsites-storage.js +17 -17
- package/lib/test-run/phase.js +16 -16
- package/lib/test-run/session-controller.js +104 -104
- package/lib/testcafe.js +118 -118
- package/lib/utils/assignable.js +39 -39
- package/lib/utils/async-event-emitter.js +28 -28
- package/lib/utils/async-queue.js +14 -14
- package/lib/utils/browser-connection-timeouts.js +19 -19
- package/lib/utils/callsite.js +17 -17
- package/lib/utils/check-file-path.js +31 -31
- package/lib/utils/check-url.js +51 -51
- package/lib/utils/convert-to-best-fit-type.js +16 -16
- package/lib/utils/correct-file-path.js +21 -21
- package/lib/utils/define-lazy-property.js +13 -13
- package/lib/utils/delay.js +6 -6
- package/lib/utils/delegated-api.js +44 -44
- package/lib/utils/detect-display.js +6 -6
- package/lib/utils/detect-ffmpeg.js +44 -44
- package/lib/utils/diff/colors.js +29 -29
- package/lib/utils/diff/index.js +52 -52
- package/lib/utils/diff/util.js +23 -23
- package/lib/utils/diff.js +29 -29
- package/lib/utils/escape-user-agent.js +10 -10
- package/lib/utils/flag-list.js +17 -17
- package/lib/utils/get-any-key.js +8 -8
- package/lib/utils/get-browser.js +8 -8
- package/lib/utils/get-common-path.js +34 -34
- package/lib/utils/get-filter-fn.js +40 -40
- package/lib/utils/get-options/base.js +36 -36
- package/lib/utils/get-options/compiler.js +33 -33
- package/lib/utils/get-options/grep.js +15 -15
- package/lib/utils/get-options/index.js +20 -20
- package/lib/utils/get-options/meta.js +22 -22
- package/lib/utils/get-options/quarantine.js +91 -91
- package/lib/utils/get-options/screenshot.js +17 -17
- package/lib/utils/get-options/ssl.js +45 -45
- package/lib/utils/get-options/video.js +10 -10
- package/lib/utils/get-viewport-width.js +17 -17
- package/lib/utils/guard-time-execution.js +10 -10
- package/lib/utils/handle-errors.js +74 -74
- package/lib/utils/handle-tag-args.js +8 -8
- package/lib/utils/http.js +30 -30
- package/lib/utils/is-localhost.js +11 -11
- package/lib/utils/is-password-input.js +11 -0
- package/lib/utils/is-repl.js +10 -10
- package/lib/utils/is-window-in-iframe.js +6 -6
- package/lib/utils/limit-number.js +10 -10
- package/lib/utils/make-reg-exp.js +7 -7
- package/lib/utils/moment-loader.js +20 -20
- package/lib/utils/parse-file-list.js +71 -71
- package/lib/utils/parse-user-agent.js +55 -55
- package/lib/utils/path-pattern.js +114 -114
- package/lib/utils/prepare-reporters.js +30 -30
- package/lib/utils/prerender-callsite.js +18 -18
- package/lib/utils/process.js +119 -119
- package/lib/utils/promisified-functions.js +46 -46
- package/lib/utils/re-executable-promise.js +39 -39
- package/lib/utils/render-callsite-sync.js +29 -29
- package/lib/utils/render-template.js +9 -9
- package/lib/utils/reporter.js +30 -30
- package/lib/utils/resolve-path-relatively-cwd.js +7 -7
- package/lib/utils/string.js +105 -105
- package/lib/utils/temp-directory/cleanup-process/commands.js +7 -7
- package/lib/utils/temp-directory/cleanup-process/index.js +143 -143
- package/lib/utils/temp-directory/cleanup-process/worker.js +58 -58
- package/lib/utils/temp-directory/index.js +87 -87
- package/lib/utils/temp-directory/lockfile.js +56 -56
- package/lib/utils/thennable.js +7 -7
- package/lib/utils/timer.js +15 -15
- package/lib/utils/to-posix-path.js +8 -8
- package/lib/utils/types.js +2 -2
- package/lib/video-recorder/interfaces.js +2 -2
- package/lib/video-recorder/process.js +126 -126
- package/lib/video-recorder/recorder.js +136 -136
- package/lib/video-recorder/test-run-video-recorder.js +69 -69
- package/lib/video-recorder/videos.js +37 -37
- package/package.json +2 -2
- package/ts-defs/index.d.ts +25 -14
- package/ts-defs/selectors.d.ts +16 -5
- package/ts-defs/testcafe-scripts.d.ts +17 -6
|
@@ -1,90 +1,90 @@
|
|
|
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.renderDiff = exports.markup = exports.shouldSkipCallsite = exports.replaceLeadingSpacesWithNbsp = exports.formatExpressionMessage = exports.formatSelectorCallstack = exports.formatUrl = exports.renderForbiddenCharsList = void 0;
|
|
7
|
-
const dedent_1 = __importDefault(require("dedent"));
|
|
8
|
-
const lodash_1 = require("lodash");
|
|
9
|
-
const phase_1 = __importDefault(require("../../test-run/phase"));
|
|
10
|
-
const types_1 = require("../types");
|
|
11
|
-
const SUBTITLES = {
|
|
12
|
-
[phase_1.default.initial]: '',
|
|
13
|
-
[phase_1.default.inFixtureBeforeHook]: '<span class="subtitle">Error in fixture.before hook</span>\n',
|
|
14
|
-
[phase_1.default.inFixtureBeforeEachHook]: '<span class="subtitle">Error in fixture.beforeEach hook</span>\n',
|
|
15
|
-
[phase_1.default.inTestBeforeHook]: '<span class="subtitle">Error in test.before hook</span>\n',
|
|
16
|
-
[phase_1.default.inTest]: '',
|
|
17
|
-
[phase_1.default.inTestAfterHook]: '<span class="subtitle">Error in test.after hook</span>\n',
|
|
18
|
-
[phase_1.default.inFixtureAfterEachHook]: '<span class="subtitle">Error in fixture.afterEach hook</span>\n',
|
|
19
|
-
[phase_1.default.inFixtureAfterHook]: '<span class="subtitle">Error in fixture.after hook</span>\n',
|
|
20
|
-
[phase_1.default.inRoleInitializer]: '<span class="subtitle">Error in Role initializer</span>\n',
|
|
21
|
-
[phase_1.default.inBookmarkRestore]: '<span class="subtitle">Error while restoring configuration after Role switch</span>\n'
|
|
22
|
-
};
|
|
23
|
-
function renderForbiddenCharsList(forbiddenCharsList) {
|
|
24
|
-
return forbiddenCharsList.map(charInfo => `\t"${charInfo.chars}" at index ${charInfo.index}\n`).join('');
|
|
25
|
-
}
|
|
26
|
-
exports.renderForbiddenCharsList = renderForbiddenCharsList;
|
|
27
|
-
function formatUrl(url) {
|
|
28
|
-
return `<a href="${url}">${url}</a>`;
|
|
29
|
-
}
|
|
30
|
-
exports.formatUrl = formatUrl;
|
|
31
|
-
function formatSelectorCallstack(apiFnChain, apiFnIndex, viewportWidth) {
|
|
32
|
-
if (typeof apiFnIndex === 'undefined')
|
|
33
|
-
return '';
|
|
34
|
-
const emptySpaces = 10;
|
|
35
|
-
const ellipsis = '...)';
|
|
36
|
-
const availableWidth = viewportWidth - emptySpaces;
|
|
37
|
-
return apiFnChain.map((apiFn, index) => {
|
|
38
|
-
let formattedApiFn = String.fromCharCode(160);
|
|
39
|
-
formattedApiFn += index === apiFnIndex ? '>' : ' ';
|
|
40
|
-
formattedApiFn += ' | ';
|
|
41
|
-
formattedApiFn += index !== 0 ? ' ' : '';
|
|
42
|
-
formattedApiFn += apiFn;
|
|
43
|
-
if (formattedApiFn.length > availableWidth)
|
|
44
|
-
return formattedApiFn.substr(0, availableWidth - emptySpaces) + ellipsis;
|
|
45
|
-
return formattedApiFn;
|
|
46
|
-
}).join('\n');
|
|
47
|
-
}
|
|
48
|
-
exports.formatSelectorCallstack = formatSelectorCallstack;
|
|
49
|
-
function formatExpressionMessage(expression, line, column) {
|
|
50
|
-
const expressionStr = lodash_1.escape(expression);
|
|
51
|
-
if (line === void 0 || column === void 0)
|
|
52
|
-
return expressionStr;
|
|
53
|
-
return `${expressionStr}\nat ${line}:${column}`;
|
|
54
|
-
}
|
|
55
|
-
exports.formatExpressionMessage = formatExpressionMessage;
|
|
56
|
-
function replaceLeadingSpacesWithNbsp(str) {
|
|
57
|
-
return str.replace(/^ +/mg, match => {
|
|
58
|
-
return lodash_1.repeat(' ', match.length);
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
exports.replaceLeadingSpacesWithNbsp = replaceLeadingSpacesWithNbsp;
|
|
62
|
-
function shouldSkipCallsite(err) {
|
|
63
|
-
return err.code === types_1.TEST_RUN_ERRORS.uncaughtNonErrorObjectInTestCode ||
|
|
64
|
-
err.code === types_1.TEST_RUN_ERRORS.unhandledPromiseRejection ||
|
|
65
|
-
err.code === types_1.TEST_RUN_ERRORS.uncaughtException;
|
|
66
|
-
}
|
|
67
|
-
exports.shouldSkipCallsite = shouldSkipCallsite;
|
|
68
|
-
function markup(err, msgMarkup, errCallsite = '') {
|
|
69
|
-
msgMarkup = dedent_1.default(`${SUBTITLES[err.testRunPhase]}<div class="message">${dedent_1.default(msgMarkup)}</div>`);
|
|
70
|
-
const browserStr = `\n\n<strong>Browser:</strong> <span class="user-agent">${err.userAgent}</span>`;
|
|
71
|
-
if (errCallsite)
|
|
72
|
-
msgMarkup += `${browserStr}\n\n${errCallsite}\n`;
|
|
73
|
-
else
|
|
74
|
-
msgMarkup += browserStr;
|
|
75
|
-
if (err.screenshotPath)
|
|
76
|
-
msgMarkup += `\n<div class="screenshot-info"><strong>Screenshot:</strong> <a class="screenshot-path">${lodash_1.escape(err.screenshotPath)}</a></div>`;
|
|
77
|
-
if (!shouldSkipCallsite(err)) {
|
|
78
|
-
const callsiteMarkup = err.getCallsiteMarkup();
|
|
79
|
-
if (callsiteMarkup)
|
|
80
|
-
msgMarkup += `\n\n${callsiteMarkup}`;
|
|
81
|
-
}
|
|
82
|
-
return msgMarkup.replace('\t', ' '.repeat(4));
|
|
83
|
-
}
|
|
84
|
-
exports.markup = markup;
|
|
85
|
-
function renderDiff(diff) {
|
|
86
|
-
return diff ?
|
|
87
|
-
`<span class="diff-added">+ expected</span> <span class="diff-removed">- actual</span>\n\n${diff}` : ``;
|
|
88
|
-
}
|
|
89
|
-
exports.renderDiff = renderDiff;
|
|
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.renderDiff = exports.markup = exports.shouldSkipCallsite = exports.replaceLeadingSpacesWithNbsp = exports.formatExpressionMessage = exports.formatSelectorCallstack = exports.formatUrl = exports.renderForbiddenCharsList = void 0;
|
|
7
|
+
const dedent_1 = __importDefault(require("dedent"));
|
|
8
|
+
const lodash_1 = require("lodash");
|
|
9
|
+
const phase_1 = __importDefault(require("../../test-run/phase"));
|
|
10
|
+
const types_1 = require("../types");
|
|
11
|
+
const SUBTITLES = {
|
|
12
|
+
[phase_1.default.initial]: '',
|
|
13
|
+
[phase_1.default.inFixtureBeforeHook]: '<span class="subtitle">Error in fixture.before hook</span>\n',
|
|
14
|
+
[phase_1.default.inFixtureBeforeEachHook]: '<span class="subtitle">Error in fixture.beforeEach hook</span>\n',
|
|
15
|
+
[phase_1.default.inTestBeforeHook]: '<span class="subtitle">Error in test.before hook</span>\n',
|
|
16
|
+
[phase_1.default.inTest]: '',
|
|
17
|
+
[phase_1.default.inTestAfterHook]: '<span class="subtitle">Error in test.after hook</span>\n',
|
|
18
|
+
[phase_1.default.inFixtureAfterEachHook]: '<span class="subtitle">Error in fixture.afterEach hook</span>\n',
|
|
19
|
+
[phase_1.default.inFixtureAfterHook]: '<span class="subtitle">Error in fixture.after hook</span>\n',
|
|
20
|
+
[phase_1.default.inRoleInitializer]: '<span class="subtitle">Error in Role initializer</span>\n',
|
|
21
|
+
[phase_1.default.inBookmarkRestore]: '<span class="subtitle">Error while restoring configuration after Role switch</span>\n'
|
|
22
|
+
};
|
|
23
|
+
function renderForbiddenCharsList(forbiddenCharsList) {
|
|
24
|
+
return forbiddenCharsList.map(charInfo => `\t"${charInfo.chars}" at index ${charInfo.index}\n`).join('');
|
|
25
|
+
}
|
|
26
|
+
exports.renderForbiddenCharsList = renderForbiddenCharsList;
|
|
27
|
+
function formatUrl(url) {
|
|
28
|
+
return `<a href="${url}">${url}</a>`;
|
|
29
|
+
}
|
|
30
|
+
exports.formatUrl = formatUrl;
|
|
31
|
+
function formatSelectorCallstack(apiFnChain, apiFnIndex, viewportWidth) {
|
|
32
|
+
if (typeof apiFnIndex === 'undefined')
|
|
33
|
+
return '';
|
|
34
|
+
const emptySpaces = 10;
|
|
35
|
+
const ellipsis = '...)';
|
|
36
|
+
const availableWidth = viewportWidth - emptySpaces;
|
|
37
|
+
return apiFnChain.map((apiFn, index) => {
|
|
38
|
+
let formattedApiFn = String.fromCharCode(160);
|
|
39
|
+
formattedApiFn += index === apiFnIndex ? '>' : ' ';
|
|
40
|
+
formattedApiFn += ' | ';
|
|
41
|
+
formattedApiFn += index !== 0 ? ' ' : '';
|
|
42
|
+
formattedApiFn += apiFn;
|
|
43
|
+
if (formattedApiFn.length > availableWidth)
|
|
44
|
+
return formattedApiFn.substr(0, availableWidth - emptySpaces) + ellipsis;
|
|
45
|
+
return formattedApiFn;
|
|
46
|
+
}).join('\n');
|
|
47
|
+
}
|
|
48
|
+
exports.formatSelectorCallstack = formatSelectorCallstack;
|
|
49
|
+
function formatExpressionMessage(expression, line, column) {
|
|
50
|
+
const expressionStr = lodash_1.escape(expression);
|
|
51
|
+
if (line === void 0 || column === void 0)
|
|
52
|
+
return expressionStr;
|
|
53
|
+
return `${expressionStr}\nat ${line}:${column}`;
|
|
54
|
+
}
|
|
55
|
+
exports.formatExpressionMessage = formatExpressionMessage;
|
|
56
|
+
function replaceLeadingSpacesWithNbsp(str) {
|
|
57
|
+
return str.replace(/^ +/mg, match => {
|
|
58
|
+
return lodash_1.repeat(' ', match.length);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
exports.replaceLeadingSpacesWithNbsp = replaceLeadingSpacesWithNbsp;
|
|
62
|
+
function shouldSkipCallsite(err) {
|
|
63
|
+
return err.code === types_1.TEST_RUN_ERRORS.uncaughtNonErrorObjectInTestCode ||
|
|
64
|
+
err.code === types_1.TEST_RUN_ERRORS.unhandledPromiseRejection ||
|
|
65
|
+
err.code === types_1.TEST_RUN_ERRORS.uncaughtException;
|
|
66
|
+
}
|
|
67
|
+
exports.shouldSkipCallsite = shouldSkipCallsite;
|
|
68
|
+
function markup(err, msgMarkup, errCallsite = '') {
|
|
69
|
+
msgMarkup = dedent_1.default(`${SUBTITLES[err.testRunPhase]}<div class="message">${dedent_1.default(msgMarkup)}</div>`);
|
|
70
|
+
const browserStr = `\n\n<strong>Browser:</strong> <span class="user-agent">${err.userAgent}</span>`;
|
|
71
|
+
if (errCallsite)
|
|
72
|
+
msgMarkup += `${browserStr}\n\n${errCallsite}\n`;
|
|
73
|
+
else
|
|
74
|
+
msgMarkup += browserStr;
|
|
75
|
+
if (err.screenshotPath)
|
|
76
|
+
msgMarkup += `\n<div class="screenshot-info"><strong>Screenshot:</strong> <a class="screenshot-path">${lodash_1.escape(err.screenshotPath)}</a></div>`;
|
|
77
|
+
if (!shouldSkipCallsite(err)) {
|
|
78
|
+
const callsiteMarkup = err.getCallsiteMarkup();
|
|
79
|
+
if (callsiteMarkup)
|
|
80
|
+
msgMarkup += `\n\n${callsiteMarkup}`;
|
|
81
|
+
}
|
|
82
|
+
return msgMarkup.replace('\t', ' '.repeat(4));
|
|
83
|
+
}
|
|
84
|
+
exports.markup = markup;
|
|
85
|
+
function renderDiff(diff) {
|
|
86
|
+
return diff ?
|
|
87
|
+
`<span class="diff-added">+ expected</span> <span class="diff-removed">- actual</span>\n\n${diff}` : ``;
|
|
88
|
+
}
|
|
89
|
+
exports.renderDiff = renderDiff;
|
|
90
90
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZXJyb3JzL3Rlc3QtcnVuL3V0aWxzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9EQUE0QjtBQUM1QixtQ0FBc0Q7QUFDdEQsaUVBQWtEO0FBQ2xELG9DQUEyQztBQUUzQyxNQUFNLFNBQVMsR0FBRztJQUNkLENBQUMsZUFBYyxDQUFDLE9BQU8sQ0FBQyxFQUFrQixFQUFFO0lBQzVDLENBQUMsZUFBYyxDQUFDLG1CQUFtQixDQUFDLEVBQU0sOERBQThEO0lBQ3hHLENBQUMsZUFBYyxDQUFDLHVCQUF1QixDQUFDLEVBQUUsa0VBQWtFO0lBQzVHLENBQUMsZUFBYyxDQUFDLGdCQUFnQixDQUFDLEVBQVMsMkRBQTJEO0lBQ3JHLENBQUMsZUFBYyxDQUFDLE1BQU0sQ0FBQyxFQUFtQixFQUFFO0lBQzVDLENBQUMsZUFBYyxDQUFDLGVBQWUsQ0FBQyxFQUFVLDBEQUEwRDtJQUNwRyxDQUFDLGVBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFHLGlFQUFpRTtJQUMzRyxDQUFDLGVBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFPLDZEQUE2RDtJQUN2RyxDQUFDLGVBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFRLDJEQUEyRDtJQUNyRyxDQUFDLGVBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFRLHVGQUF1RjtDQUNwSSxDQUFDO0FBRUYsU0FBZ0Isd0JBQXdCLENBQUUsa0JBQWtCO0lBQ3hELE9BQU8sa0JBQWtCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxRQUFRLENBQUMsS0FBSyxjQUFjLFFBQVEsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUM3RyxDQUFDO0FBRkQsNERBRUM7QUFFRCxTQUFnQixTQUFTLENBQUUsR0FBRztJQUMxQixPQUFPLFlBQVksR0FBRyxLQUFLLEdBQUcsTUFBTSxD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QUFFO1FBQzFCLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBRS9DLElBQUksY0FBYztZQUNkLFNBQVMsSUFBSSxPQUFPLGNBQWMsRUFBRSxDQUFDO0tBQzVDO0lBRUQsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQXJCRCx3QkFxQkM7QUFFRCxTQUFnQixVQUFVLENBQUUsSUFBSTtJQUM1QixPQUFPLElBQUksQ0FBQyxDQUFDO1FBQ1QsNEZBQTRGLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDaEgsQ0FBQztBQUhELGdDQUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRlZGVudCBmcm9tICdkZWRlbnQnO1xuaW1wb3J0IHsgZXNjYXBlIGFzIGVzY2FwZUh0bWwsIHJlcGVhdCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgVEVTVF9SVU5fUEhBU0UgZnJvbSAnLi4vLi4vdGVzdC1ydW4vcGhhc2UnO1xuaW1wb3J0IHsgVEVTVF9SVU5fRVJST1JTIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5jb25zdCBTVUJUSVRMRVMgPSB7XG4gICAgW1RFU1RfUlVOX1BIQVNFLmluaXRpYWxdOiAgICAgICAgICAgICAgICAgJycsXG4gICAgW1RFU1RfUlVOX1BIQVNFLmluRml4dHVyZUJlZm9yZUhvb2tdOiAgICAgJzxzcGFuIGNsYXNzPVwic3VidGl0bGVcIj5FcnJvciBpbiBmaXh0dXJlLmJlZm9yZSBob29rPC9zcGFuPlxcbicsXG4gICAgW1RFU1RfUlVOX1BIQVNFLmluRml4dHVyZUJlZm9yZUVhY2hIb29rXTogJzxzcGFuIGNsYXNzPVwic3VidGl0bGVcIj5FcnJvciBpbiBmaXh0dXJlLmJlZm9yZUVhY2ggaG9vazwvc3Bhbj5cXG4nLFxuICAgIFtURVNUX1JVTl9QSEFTRS5pblRlc3RCZWZvcmVIb29rXTogICAgICAgICc8c3BhbiBjbGFzcz1cInN1YnRpdGxlXCI+RXJyb3IgaW4gdGVzdC5iZWZvcmUgaG9vazwvc3Bhbj5cXG4nLFxuICAgIFtURVNUX1JVTl9QSEFTRS5pblRlc3RdOiAgICAgICAgICAgICAgICAgICcnLFxuICAgIFtURVNUX1JVTl9QSEFTRS5pblRlc3RBZnRlckhvb2tdOiAgICAgICAgICc8c3BhbiBjbGFzcz1cInN1YnRpdGxlXCI+RXJyb3IgaW4gdGVzdC5hZnRlciBob29rPC9zcGFuPlxcbicsXG4gICAgW1RFU1RfUlVOX1BIQVNFLmluRml4dHVyZUFmdGVyRWFjaEhvb2tdOiAgJzxzcGFuIGNsYXNzPVwic3VidGl0bGVcIj5FcnJvciBpbiBmaXh0dXJlLmFmdGVyRWFjaCBob29rPC9zcGFuPlxcbicsXG4gICAgW1RFU1RfUlVOX1BIQVNFLmluRml4dHVyZUFmdGVySG9va106ICAgICAgJzxzcGFuIGNsYXNzPVwic3VidGl0bGVcIj5FcnJvciBpbiBmaXh0dXJlLmFmdGVyIGhvb2s8L3NwYW4+XFxuJyxcbiAgICBbVEVTVF9SVU5fUEhBU0UuaW5Sb2xlSW5pdGlhbGl6ZXJdOiAgICAgICAnPHNwYW4gY2xhc3M9XCJzdWJ0aXRsZVwiPkVycm9yIGluIFJvbGUgaW5pdGlhbGl6ZXI8L3NwYW4+XFxuJyxcbiAgICBbVEVTVF9SVU5fUEhBU0UuaW5Cb29rbWFya1Jlc3RvcmVdOiAgICAgICAnPHNwYW4gY2xhc3M9XCJzdWJ0aXRsZVwiPkVycm9yIHdoaWxlIHJlc3RvcmluZyBjb25maWd1cmF0aW9uIGFmdGVyIFJvbGUgc3dpdGNoPC9zcGFuPlxcbidcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiByZW5kZXJGb3JiaWRkZW5DaGFyc0xpc3QgKGZvcmJpZGRlbkNoYXJzTGlzdCkge1xuICAgIHJldHVybiBmb3JiaWRkZW5DaGFyc0xpc3QubWFwKGNoYXJJbmZvID0+IGBcXHRcIiR7Y2hhckluZm8uY2hhcnN9XCIgYXQgaW5kZXggJHtjaGFySW5mby5pbmRleH1cXG5gKS5qb2luKCcnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFVybCAodXJsKSB7XG4gICAgcmV0dXJuIGA8YSBocmVmPVwiJHt1cmx9XCI+JHt1cmx9PC9hPmA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRTZWxlY3RvckNhbGxzdGFjayAoYXBpRm5DaGFpbiwgYXBpRm5JbmRleCwgdmlld3BvcnRXaWR0aCkge1xuICAgIGlmICh0eXBlb2YgYXBpRm5JbmRleCA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJldHVybiAnJztcblxuICAgIGNvbnN0IGVtcHR5U3BhY2VzICAgID0gMTA7XG4gICAgY29uc3QgZWxsaXBzaXMgICAgICAgPSAnLi4uKSc7XG4gICAgY29uc3QgYXZhaWxhYmxlV2lkdGggPSB2aWV3cG9ydFdpZHRoIC0gZW1wdHlTcGFjZXM7XG5cbiAgICByZXR1cm4gYXBpRm5DaGFpbi5tYXAoKGFwaUZuLCBpbmRleCkgPT4ge1xuICAgICAgICBsZXQgZm9ybWF0dGVkQXBpRm4gPSBTdHJpbmcuZnJvbUNoYXJDb2RlKDE2MCk7XG5cbiAgICAgICAgZm9ybWF0dGVkQXBpRm4gKz0gaW5kZXggPT09IGFwaUZuSW5kZXggPyAnPicgOiAnICc7XG4gICAgICAgIGZvcm1hdHRlZEFwaUZuICs9ICcgfCAnO1xuICAgICAgICBmb3JtYXR0ZWRBcGlGbiArPSBpbmRleCAhPT0gMCA/ICcgICcgOiAnJztcbiAgICAgICAgZm9ybWF0dGVkQXBpRm4gKz0gYXBpRm47XG5cbiAgICAgICAgaWYgKGZvcm1hdHRlZEFwaUZuLmxlbmd0aCA+IGF2YWlsYWJsZVdpZHRoKVxuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdHRlZEFwaUZuLnN1YnN0cigwLCBhdmFpbGFibGVXaWR0aCAtIGVtcHR5U3BhY2VzKSArIGVsbGlwc2lzO1xuXG4gICAgICAgIHJldHVybiBmb3JtYXR0ZWRBcGlGbjtcbiAgICB9KS5qb2luKCdcXG4nKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEV4cHJlc3Npb25NZXNzYWdlIChleHByZXNzaW9uLCBsaW5lLCBjb2x1bW4pIHtcbiAgICBjb25zdCBleHByZXNzaW9uU3RyID0gZXNjYXBlSHRtbChleHByZXNzaW9uKTtcblxuICAgIGlmIChsaW5lID09PSB2b2lkIDAgfHwgY29sdW1uID09PSB2b2lkIDApXG4gICAgICAgIHJldHVybiBleHByZXNzaW9uU3RyO1xuXG4gICAgcmV0dXJuIGAke2V4cHJlc3Npb25TdHJ9XFxuYXQgJHtsaW5lfToke2NvbHVtbn1gO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZUxlYWRpbmdTcGFjZXNXaXRoTmJzcCAoc3RyKSB7XG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlKC9eICsvbWcsIG1hdGNoID0+IHtcbiAgICAgICAgcmV0dXJuIHJlcGVhdCgnJm5ic3A7JywgbWF0Y2gubGVuZ3RoKTtcbiAgICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNob3VsZFNraXBDYWxsc2l0ZSAoZXJyKSB7XG4gICAgcmV0dXJuIGVyci5jb2RlID09PSBURVNUX1JVTl9FUlJPUlMudW5jYXVnaHROb25FcnJvck9iamVjdEluVGVzdENvZGUgfHxcbiAgICAgICAgICAgZXJyLmNvZGUgPT09IFRFU1RfUlVOX0VSUk9SUy51bmhhbmRsZWRQcm9taXNlUmVqZWN0aW9uIHx8XG4gICAgICAgICAgIGVyci5jb2RlID09PSBURVNUX1JVTl9FUlJPUlMudW5jYXVnaHRFeGNlcHRpb247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXJrdXAgKGVyciwgbXNnTWFya3VwLCBlcnJDYWxsc2l0ZSA9ICcnKSB7XG4gICAgbXNnTWFya3VwID0gZGVkZW50KGAke1NVQlRJVExFU1tlcnIudGVzdFJ1blBoYXNlXX08ZGl2IGNsYXNzPVwibWVzc2FnZVwiPiR7ZGVkZW50KG1zZ01hcmt1cCl9PC9kaXY+YCk7XG5cbiAgICBjb25zdCBicm93c2VyU3RyID0gYFxcblxcbjxzdHJvbmc+QnJvd3Nlcjo8L3N0cm9uZz4gPHNwYW4gY2xhc3M9XCJ1c2VyLWFnZW50XCI+JHtlcnIudXNlckFnZW50fTwvc3Bhbj5gO1xuXG4gICAgaWYgKGVyckNhbGxzaXRlKVxuICAgICAgICBtc2dNYXJrdXAgKz0gYCR7YnJvd3NlclN0cn1cXG5cXG4ke2VyckNhbGxzaXRlfVxcbmA7XG4gICAgZWxzZVxuICAgICAgICBtc2dNYXJrdXAgKz0gYnJvd3NlclN0cjtcblxuICAgIGlmIChlcnIuc2NyZWVuc2hvdFBhdGgpXG4gICAgICAgIG1zZ01hcmt1cCArPSBgXFxuPGRpdiBjbGFzcz1cInNjcmVlbnNob3QtaW5mb1wiPjxzdHJvbmc+U2NyZWVuc2hvdDo8L3N0cm9uZz4gPGEgY2xhc3M9XCJzY3JlZW5zaG90LXBhdGhcIj4ke2VzY2FwZUh0bWwoZXJyLnNjcmVlbnNob3RQYXRoKX08L2E+PC9kaXY+YDtcblxuICAgIGlmICghc2hvdWxkU2tpcENhbGxzaXRlKGVycikpIHtcbiAgICAgICAgY29uc3QgY2FsbHNpdGVNYXJrdXAgPSBlcnIuZ2V0Q2FsbHNpdGVNYXJrdXAoKTtcblxuICAgICAgICBpZiAoY2FsbHNpdGVNYXJrdXApXG4gICAgICAgICAgICBtc2dNYXJrdXAgKz0gYFxcblxcbiR7Y2FsbHNpdGVNYXJrdXB9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gbXNnTWFya3VwLnJlcGxhY2UoJ1xcdCcsICcmbmJzcDsnLnJlcGVhdCg0KSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW5kZXJEaWZmIChkaWZmKSB7XG4gICAgcmV0dXJuIGRpZmYgP1xuICAgICAgICBgPHNwYW4gY2xhc3M9XCJkaWZmLWFkZGVkXCI+KyBleHBlY3RlZDwvc3Bhbj4gPHNwYW4gY2xhc3M9XCJkaWZmLXJlbW92ZWRcIj4tIGFjdHVhbDwvc3Bhbj5cXG5cXG4ke2RpZmZ9YCA6IGBgO1xufVxuIl19
|
package/lib/errors/types.js
CHANGED
|
@@ -1,157 +1,157 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// -------------------------------------------------------------
|
|
3
|
-
// WARNING: this file is used by both the client and the server.
|
|
4
|
-
// Do not use any browser or node-specific API!
|
|
5
|
-
// -------------------------------------------------------------
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.RUNTIME_ERRORS = exports.TEST_RUN_ERRORS = void 0;
|
|
8
|
-
exports.TEST_RUN_ERRORS = {
|
|
9
|
-
uncaughtErrorOnPage: 'E1',
|
|
10
|
-
uncaughtErrorInTestCode: 'E2',
|
|
11
|
-
uncaughtNonErrorObjectInTestCode: 'E3',
|
|
12
|
-
uncaughtErrorInClientFunctionCode: 'E4',
|
|
13
|
-
uncaughtErrorInCustomDOMPropertyCode: 'E5',
|
|
14
|
-
unhandledPromiseRejection: 'E6',
|
|
15
|
-
uncaughtException: 'E7',
|
|
16
|
-
missingAwaitError: 'E8',
|
|
17
|
-
actionIntegerOptionError: 'E9',
|
|
18
|
-
actionPositiveIntegerOptionError: 'E10',
|
|
19
|
-
actionBooleanOptionError: 'E11',
|
|
20
|
-
actionSpeedOptionError: 'E12',
|
|
21
|
-
actionOptionsTypeError: 'E14',
|
|
22
|
-
actionBooleanArgumentError: 'E15',
|
|
23
|
-
actionStringArgumentError: 'E16',
|
|
24
|
-
actionNullableStringArgumentError: 'E17',
|
|
25
|
-
actionStringOrStringArrayArgumentError: 'E18',
|
|
26
|
-
actionStringArrayElementError: 'E19',
|
|
27
|
-
actionIntegerArgumentError: 'E20',
|
|
28
|
-
actionRoleArgumentError: 'E21',
|
|
29
|
-
actionPositiveIntegerArgumentError: 'E22',
|
|
30
|
-
actionSelectorError: 'E23',
|
|
31
|
-
actionElementNotFoundError: 'E24',
|
|
32
|
-
actionElementIsInvisibleError: 'E26',
|
|
33
|
-
actionSelectorMatchesWrongNodeTypeError: 'E27',
|
|
34
|
-
actionAdditionalElementNotFoundError: 'E28',
|
|
35
|
-
actionAdditionalElementIsInvisibleError: 'E29',
|
|
36
|
-
actionAdditionalSelectorMatchesWrongNodeTypeError: 'E30',
|
|
37
|
-
actionElementNonEditableError: 'E31',
|
|
38
|
-
actionElementNotTextAreaError: 'E32',
|
|
39
|
-
actionElementNonContentEditableError: 'E33',
|
|
40
|
-
actionElementIsNotFileInputError: 'E34',
|
|
41
|
-
actionRootContainerNotFoundError: 'E35',
|
|
42
|
-
actionIncorrectKeysError: 'E36',
|
|
43
|
-
actionCannotFindFileToUploadError: 'E37',
|
|
44
|
-
actionUnsupportedDeviceTypeError: 'E38',
|
|
45
|
-
actionIframeIsNotLoadedError: 'E39',
|
|
46
|
-
actionElementNotIframeError: 'E40',
|
|
47
|
-
actionInvalidScrollTargetError: 'E41',
|
|
48
|
-
currentIframeIsNotLoadedError: 'E42',
|
|
49
|
-
currentIframeNotFoundError: 'E43',
|
|
50
|
-
currentIframeIsInvisibleError: 'E44',
|
|
51
|
-
nativeDialogNotHandledError: 'E45',
|
|
52
|
-
uncaughtErrorInNativeDialogHandler: 'E46',
|
|
53
|
-
setTestSpeedArgumentError: 'E47',
|
|
54
|
-
setNativeDialogHandlerCodeWrongTypeError: 'E48',
|
|
55
|
-
clientFunctionExecutionInterruptionError: 'E49',
|
|
56
|
-
domNodeClientFunctionResultError: 'E50',
|
|
57
|
-
invalidSelectorResultError: 'E51',
|
|
58
|
-
cannotObtainInfoForElementSpecifiedBySelectorError: 'E52',
|
|
59
|
-
externalAssertionLibraryError: 'E53',
|
|
60
|
-
pageLoadError: 'E54',
|
|
61
|
-
windowDimensionsOverflowError: 'E55',
|
|
62
|
-
forbiddenCharactersInScreenshotPathError: 'E56',
|
|
63
|
-
invalidElementScreenshotDimensionsError: 'E57',
|
|
64
|
-
roleSwitchInRoleInitializerError: 'E58',
|
|
65
|
-
assertionExecutableArgumentError: 'E59',
|
|
66
|
-
assertionWithoutMethodCallError: 'E60',
|
|
67
|
-
assertionUnawaitedPromiseError: 'E61',
|
|
68
|
-
requestHookNotImplementedError: 'E62',
|
|
69
|
-
requestHookUnhandledError: 'E63',
|
|
70
|
-
uncaughtErrorInCustomClientScriptCode: 'E64',
|
|
71
|
-
uncaughtErrorInCustomClientScriptCodeLoadedFromModule: 'E65',
|
|
72
|
-
uncaughtErrorInCustomScript: 'E66',
|
|
73
|
-
uncaughtTestCafeErrorInCustomScript: 'E67',
|
|
74
|
-
childWindowIsNotLoadedError: 'E68',
|
|
75
|
-
childWindowNotFoundError: 'E69',
|
|
76
|
-
cannotSwitchToWindowError: 'E70',
|
|
77
|
-
closeChildWindowError: 'E71',
|
|
78
|
-
childWindowClosedBeforeSwitchingError: 'E72',
|
|
79
|
-
cannotCloseWindowWithChildrenError: 'E73',
|
|
80
|
-
targetWindowNotFoundError: 'E74',
|
|
81
|
-
parentWindowNotFoundError: 'E76',
|
|
82
|
-
previousWindowNotFoundError: 'E77',
|
|
83
|
-
switchToWindowPredicateError: 'E78',
|
|
84
|
-
actionFunctionArgumentError: 'E79',
|
|
85
|
-
multipleWindowsModeIsDisabledError: 'E80',
|
|
86
|
-
multipleWindowsModeIsNotSupportedInRemoteBrowserError: 'E81',
|
|
87
|
-
cannotCloseWindowWithoutParent: 'E82',
|
|
88
|
-
cannotRestoreChildWindowError: 'E83'
|
|
89
|
-
};
|
|
90
|
-
exports.RUNTIME_ERRORS = {
|
|
91
|
-
cannotCreateMultipleLiveModeRunners: 'E1000',
|
|
92
|
-
cannotRunLiveModeRunnerMultipleTimes: 'E1001',
|
|
93
|
-
browserDisconnected: 'E1002',
|
|
94
|
-
cannotRunAgainstDisconnectedBrowsers: 'E1003',
|
|
95
|
-
cannotEstablishBrowserConnection: 'E1004',
|
|
96
|
-
cannotFindBrowser: 'E1005',
|
|
97
|
-
browserProviderNotFound: 'E1006',
|
|
98
|
-
browserNotSet: 'E1007',
|
|
99
|
-
testFilesNotFound: 'E1008',
|
|
100
|
-
noTestsToRun: 'E1009',
|
|
101
|
-
cannotFindReporterForAlias: 'E1010',
|
|
102
|
-
multipleSameStreamReporters: 'E1011',
|
|
103
|
-
optionValueIsNotValidRegExp: 'E1012',
|
|
104
|
-
optionValueIsNotValidKeyValue: 'E1013',
|
|
105
|
-
invalidSpeedValue: 'E1014',
|
|
106
|
-
invalidConcurrencyFactor: 'E1015',
|
|
107
|
-
cannotDivideRemotesCountByConcurrency: 'E1016',
|
|
108
|
-
portsOptionRequiresTwoNumbers: 'E1017',
|
|
109
|
-
portIsNotFree: 'E1018',
|
|
110
|
-
invalidHostname: 'E1019',
|
|
111
|
-
cannotFindSpecifiedTestSource: 'E1020',
|
|
112
|
-
clientFunctionCodeIsNotAFunction: 'E1021',
|
|
113
|
-
selectorInitializedWithWrongType: 'E1022',
|
|
114
|
-
clientFunctionCannotResolveTestRun: 'E1023',
|
|
115
|
-
regeneratorInClientFunctionCode: 'E1024',
|
|
116
|
-
invalidClientFunctionTestRunBinding: 'E1025',
|
|
117
|
-
invalidValueType: 'E1026',
|
|
118
|
-
unsupportedUrlProtocol: 'E1027',
|
|
119
|
-
testControllerProxyCannotResolveTestRun: 'E1028',
|
|
120
|
-
timeLimitedPromiseTimeoutExpired: 'E1029',
|
|
121
|
-
noTestsToRunDueFiltering: 'E1030',
|
|
122
|
-
cannotSetVideoOptionsWithoutBaseVideoPathSpecified: 'E1031',
|
|
123
|
-
multipleAPIMethodCallForbidden: 'E1032',
|
|
124
|
-
invalidReporterOutput: 'E1033',
|
|
125
|
-
cannotReadSSLCertFile: 'E1034',
|
|
126
|
-
cannotPrepareTestsDueToError: 'E1035',
|
|
127
|
-
cannotParseRawFile: 'E1036',
|
|
128
|
-
testedAppFailedWithError: 'E1037',
|
|
129
|
-
unableToOpenBrowser: 'E1038',
|
|
130
|
-
requestHookConfigureAPIError: 'E1039',
|
|
131
|
-
forbiddenCharatersInScreenshotPath: 'E1040',
|
|
132
|
-
cannotFindFFMPEG: 'E1041',
|
|
133
|
-
compositeArgumentsError: 'E1042',
|
|
134
|
-
cannotFindTypescriptConfigurationFile: 'E1043',
|
|
135
|
-
clientScriptInitializerIsNotSpecified: 'E1044',
|
|
136
|
-
clientScriptBasePathIsNotSpecified: 'E1045',
|
|
137
|
-
clientScriptInitializerMultipleContentSources: 'E1046',
|
|
138
|
-
cannotLoadClientScriptFromPath: 'E1047',
|
|
139
|
-
clientScriptModuleEntryPointPathCalculationError: 'E1048',
|
|
140
|
-
methodIsNotAvailableForAnIPCHost: 'E1049',
|
|
141
|
-
tooLargeIPCPayload: 'E1050',
|
|
142
|
-
malformedIPCMessage: 'E1051',
|
|
143
|
-
unexpectedIPCHeadPacket: 'E1052',
|
|
144
|
-
unexpectedIPCBodyPacket: 'E1053',
|
|
145
|
-
unexpectedIPCTailPacket: 'E1054',
|
|
146
|
-
cannotRunLocalNonHeadlessBrowserWithoutDisplay: 'E1057',
|
|
147
|
-
uncaughtErrorInReporter: 'E1058',
|
|
148
|
-
roleInitializedWithRelativeUrl: 'E1059',
|
|
149
|
-
typeScriptCompilerLoadingError: 'E1060',
|
|
150
|
-
cannotCustomizeSpecifiedCompilers: 'E1061',
|
|
151
|
-
cannotEnableRetryTestPagesOption: 'E1062',
|
|
152
|
-
browserConnectionError: 'E1063',
|
|
153
|
-
testRunRequestInDisconnectedBrowser: 'E1064',
|
|
154
|
-
invalidQuarantineOption: 'E1065',
|
|
155
|
-
invalidRetryCountValue: 'E1066',
|
|
156
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
// -------------------------------------------------------------
|
|
3
|
+
// WARNING: this file is used by both the client and the server.
|
|
4
|
+
// Do not use any browser or node-specific API!
|
|
5
|
+
// -------------------------------------------------------------
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.RUNTIME_ERRORS = exports.TEST_RUN_ERRORS = void 0;
|
|
8
|
+
exports.TEST_RUN_ERRORS = {
|
|
9
|
+
uncaughtErrorOnPage: 'E1',
|
|
10
|
+
uncaughtErrorInTestCode: 'E2',
|
|
11
|
+
uncaughtNonErrorObjectInTestCode: 'E3',
|
|
12
|
+
uncaughtErrorInClientFunctionCode: 'E4',
|
|
13
|
+
uncaughtErrorInCustomDOMPropertyCode: 'E5',
|
|
14
|
+
unhandledPromiseRejection: 'E6',
|
|
15
|
+
uncaughtException: 'E7',
|
|
16
|
+
missingAwaitError: 'E8',
|
|
17
|
+
actionIntegerOptionError: 'E9',
|
|
18
|
+
actionPositiveIntegerOptionError: 'E10',
|
|
19
|
+
actionBooleanOptionError: 'E11',
|
|
20
|
+
actionSpeedOptionError: 'E12',
|
|
21
|
+
actionOptionsTypeError: 'E14',
|
|
22
|
+
actionBooleanArgumentError: 'E15',
|
|
23
|
+
actionStringArgumentError: 'E16',
|
|
24
|
+
actionNullableStringArgumentError: 'E17',
|
|
25
|
+
actionStringOrStringArrayArgumentError: 'E18',
|
|
26
|
+
actionStringArrayElementError: 'E19',
|
|
27
|
+
actionIntegerArgumentError: 'E20',
|
|
28
|
+
actionRoleArgumentError: 'E21',
|
|
29
|
+
actionPositiveIntegerArgumentError: 'E22',
|
|
30
|
+
actionSelectorError: 'E23',
|
|
31
|
+
actionElementNotFoundError: 'E24',
|
|
32
|
+
actionElementIsInvisibleError: 'E26',
|
|
33
|
+
actionSelectorMatchesWrongNodeTypeError: 'E27',
|
|
34
|
+
actionAdditionalElementNotFoundError: 'E28',
|
|
35
|
+
actionAdditionalElementIsInvisibleError: 'E29',
|
|
36
|
+
actionAdditionalSelectorMatchesWrongNodeTypeError: 'E30',
|
|
37
|
+
actionElementNonEditableError: 'E31',
|
|
38
|
+
actionElementNotTextAreaError: 'E32',
|
|
39
|
+
actionElementNonContentEditableError: 'E33',
|
|
40
|
+
actionElementIsNotFileInputError: 'E34',
|
|
41
|
+
actionRootContainerNotFoundError: 'E35',
|
|
42
|
+
actionIncorrectKeysError: 'E36',
|
|
43
|
+
actionCannotFindFileToUploadError: 'E37',
|
|
44
|
+
actionUnsupportedDeviceTypeError: 'E38',
|
|
45
|
+
actionIframeIsNotLoadedError: 'E39',
|
|
46
|
+
actionElementNotIframeError: 'E40',
|
|
47
|
+
actionInvalidScrollTargetError: 'E41',
|
|
48
|
+
currentIframeIsNotLoadedError: 'E42',
|
|
49
|
+
currentIframeNotFoundError: 'E43',
|
|
50
|
+
currentIframeIsInvisibleError: 'E44',
|
|
51
|
+
nativeDialogNotHandledError: 'E45',
|
|
52
|
+
uncaughtErrorInNativeDialogHandler: 'E46',
|
|
53
|
+
setTestSpeedArgumentError: 'E47',
|
|
54
|
+
setNativeDialogHandlerCodeWrongTypeError: 'E48',
|
|
55
|
+
clientFunctionExecutionInterruptionError: 'E49',
|
|
56
|
+
domNodeClientFunctionResultError: 'E50',
|
|
57
|
+
invalidSelectorResultError: 'E51',
|
|
58
|
+
cannotObtainInfoForElementSpecifiedBySelectorError: 'E52',
|
|
59
|
+
externalAssertionLibraryError: 'E53',
|
|
60
|
+
pageLoadError: 'E54',
|
|
61
|
+
windowDimensionsOverflowError: 'E55',
|
|
62
|
+
forbiddenCharactersInScreenshotPathError: 'E56',
|
|
63
|
+
invalidElementScreenshotDimensionsError: 'E57',
|
|
64
|
+
roleSwitchInRoleInitializerError: 'E58',
|
|
65
|
+
assertionExecutableArgumentError: 'E59',
|
|
66
|
+
assertionWithoutMethodCallError: 'E60',
|
|
67
|
+
assertionUnawaitedPromiseError: 'E61',
|
|
68
|
+
requestHookNotImplementedError: 'E62',
|
|
69
|
+
requestHookUnhandledError: 'E63',
|
|
70
|
+
uncaughtErrorInCustomClientScriptCode: 'E64',
|
|
71
|
+
uncaughtErrorInCustomClientScriptCodeLoadedFromModule: 'E65',
|
|
72
|
+
uncaughtErrorInCustomScript: 'E66',
|
|
73
|
+
uncaughtTestCafeErrorInCustomScript: 'E67',
|
|
74
|
+
childWindowIsNotLoadedError: 'E68',
|
|
75
|
+
childWindowNotFoundError: 'E69',
|
|
76
|
+
cannotSwitchToWindowError: 'E70',
|
|
77
|
+
closeChildWindowError: 'E71',
|
|
78
|
+
childWindowClosedBeforeSwitchingError: 'E72',
|
|
79
|
+
cannotCloseWindowWithChildrenError: 'E73',
|
|
80
|
+
targetWindowNotFoundError: 'E74',
|
|
81
|
+
parentWindowNotFoundError: 'E76',
|
|
82
|
+
previousWindowNotFoundError: 'E77',
|
|
83
|
+
switchToWindowPredicateError: 'E78',
|
|
84
|
+
actionFunctionArgumentError: 'E79',
|
|
85
|
+
multipleWindowsModeIsDisabledError: 'E80',
|
|
86
|
+
multipleWindowsModeIsNotSupportedInRemoteBrowserError: 'E81',
|
|
87
|
+
cannotCloseWindowWithoutParent: 'E82',
|
|
88
|
+
cannotRestoreChildWindowError: 'E83'
|
|
89
|
+
};
|
|
90
|
+
exports.RUNTIME_ERRORS = {
|
|
91
|
+
cannotCreateMultipleLiveModeRunners: 'E1000',
|
|
92
|
+
cannotRunLiveModeRunnerMultipleTimes: 'E1001',
|
|
93
|
+
browserDisconnected: 'E1002',
|
|
94
|
+
cannotRunAgainstDisconnectedBrowsers: 'E1003',
|
|
95
|
+
cannotEstablishBrowserConnection: 'E1004',
|
|
96
|
+
cannotFindBrowser: 'E1005',
|
|
97
|
+
browserProviderNotFound: 'E1006',
|
|
98
|
+
browserNotSet: 'E1007',
|
|
99
|
+
testFilesNotFound: 'E1008',
|
|
100
|
+
noTestsToRun: 'E1009',
|
|
101
|
+
cannotFindReporterForAlias: 'E1010',
|
|
102
|
+
multipleSameStreamReporters: 'E1011',
|
|
103
|
+
optionValueIsNotValidRegExp: 'E1012',
|
|
104
|
+
optionValueIsNotValidKeyValue: 'E1013',
|
|
105
|
+
invalidSpeedValue: 'E1014',
|
|
106
|
+
invalidConcurrencyFactor: 'E1015',
|
|
107
|
+
cannotDivideRemotesCountByConcurrency: 'E1016',
|
|
108
|
+
portsOptionRequiresTwoNumbers: 'E1017',
|
|
109
|
+
portIsNotFree: 'E1018',
|
|
110
|
+
invalidHostname: 'E1019',
|
|
111
|
+
cannotFindSpecifiedTestSource: 'E1020',
|
|
112
|
+
clientFunctionCodeIsNotAFunction: 'E1021',
|
|
113
|
+
selectorInitializedWithWrongType: 'E1022',
|
|
114
|
+
clientFunctionCannotResolveTestRun: 'E1023',
|
|
115
|
+
regeneratorInClientFunctionCode: 'E1024',
|
|
116
|
+
invalidClientFunctionTestRunBinding: 'E1025',
|
|
117
|
+
invalidValueType: 'E1026',
|
|
118
|
+
unsupportedUrlProtocol: 'E1027',
|
|
119
|
+
testControllerProxyCannotResolveTestRun: 'E1028',
|
|
120
|
+
timeLimitedPromiseTimeoutExpired: 'E1029',
|
|
121
|
+
noTestsToRunDueFiltering: 'E1030',
|
|
122
|
+
cannotSetVideoOptionsWithoutBaseVideoPathSpecified: 'E1031',
|
|
123
|
+
multipleAPIMethodCallForbidden: 'E1032',
|
|
124
|
+
invalidReporterOutput: 'E1033',
|
|
125
|
+
cannotReadSSLCertFile: 'E1034',
|
|
126
|
+
cannotPrepareTestsDueToError: 'E1035',
|
|
127
|
+
cannotParseRawFile: 'E1036',
|
|
128
|
+
testedAppFailedWithError: 'E1037',
|
|
129
|
+
unableToOpenBrowser: 'E1038',
|
|
130
|
+
requestHookConfigureAPIError: 'E1039',
|
|
131
|
+
forbiddenCharatersInScreenshotPath: 'E1040',
|
|
132
|
+
cannotFindFFMPEG: 'E1041',
|
|
133
|
+
compositeArgumentsError: 'E1042',
|
|
134
|
+
cannotFindTypescriptConfigurationFile: 'E1043',
|
|
135
|
+
clientScriptInitializerIsNotSpecified: 'E1044',
|
|
136
|
+
clientScriptBasePathIsNotSpecified: 'E1045',
|
|
137
|
+
clientScriptInitializerMultipleContentSources: 'E1046',
|
|
138
|
+
cannotLoadClientScriptFromPath: 'E1047',
|
|
139
|
+
clientScriptModuleEntryPointPathCalculationError: 'E1048',
|
|
140
|
+
methodIsNotAvailableForAnIPCHost: 'E1049',
|
|
141
|
+
tooLargeIPCPayload: 'E1050',
|
|
142
|
+
malformedIPCMessage: 'E1051',
|
|
143
|
+
unexpectedIPCHeadPacket: 'E1052',
|
|
144
|
+
unexpectedIPCBodyPacket: 'E1053',
|
|
145
|
+
unexpectedIPCTailPacket: 'E1054',
|
|
146
|
+
cannotRunLocalNonHeadlessBrowserWithoutDisplay: 'E1057',
|
|
147
|
+
uncaughtErrorInReporter: 'E1058',
|
|
148
|
+
roleInitializedWithRelativeUrl: 'E1059',
|
|
149
|
+
typeScriptCompilerLoadingError: 'E1060',
|
|
150
|
+
cannotCustomizeSpecifiedCompilers: 'E1061',
|
|
151
|
+
cannotEnableRetryTestPagesOption: 'E1062',
|
|
152
|
+
browserConnectionError: 'E1063',
|
|
153
|
+
testRunRequestInDisconnectedBrowser: 'E1064',
|
|
154
|
+
invalidQuarantineOption: 'E1065',
|
|
155
|
+
invalidRetryCountValue: 'E1066',
|
|
156
|
+
};
|
|
157
157
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXJyb3JzL3R5cGVzLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxnRUFBZ0U7QUFDaEUsZ0VBQWdFO0FBQ2hFLCtDQUErQztBQUMvQyxnRUFBZ0U7OztBQUVuRCxRQUFBLGVBQWUsR0FBRztJQUMzQixtQkFBbUIsRUFBb0MsSUFBSTtJQUMzRCx1QkFBdUIsRUFBZ0MsSUFBSTtJQUMzRCxnQ0FBZ0MsRUFBdUIsSUFBSTtJQUMzRCxpQ0FBaUMsRUFBc0IsSUFBSTtJQUMzRCxvQ0FBb0MsRUFBbUIsSUFBSTtJQUMzRCx5QkFBeUIsRUFBOEIsSUFBSTtJQUMzRCxpQkFBaUIsRUFBc0MsSUFBSTtJQUMzRCxpQkFBaUIsRUFBc0MsSUFBSTtJQUMzRCx3QkFBd0IsRUFBK0IsSUFBSTtJQUMzRCxnQ0FBZ0MsRUFBdUIsS0FBSztJQUM1RCx3QkFBd0IsRUFBK0IsS0FBSztJQUM1RCxzQkFBc0IsRUFBaUMsS0FBSztJQUM1RCxzQkFBc0IsRUFBaUMsS0FBSztJQUM1RCwwQkFBMEIsRUFBNkIsS0FBSztJQUM1RCx5QkFBeUIsRUFBOEIsS0FBSztJQUM1RCxpQ0FBaUMsRUFBc0IsS0FBSztJQUM1RCxzQ0FBc0MsRUFBaUIsS0FBSztJQUM1RCw2QkFBNkIsRUFBMEIsS0FBSztJQUM1RCwwQkFBMEIsRUFBNkIsS0FBSztJQUM1RCx1QkFBdUIsRUFBZ0MsS0FBSztJQUM1RCxrQ0FBa0MsRUFBcUIsS0FBSztJQUM1RCxtQkFBbUIsRUFBb0MsS0FBSztJQUM1RCwwQkFBMEIsRUFBNkIsS0FBSztJQUM1RCw2QkFBNkIsRUFBMEIsS0FBSztJQUM1RCx1Q0FBdUMsRUFBZ0IsS0FBSztJQUM1RCxvQ0FBb0MsRUFBbUIsS0FBSztJQUM1RCx1Q0FBdUMsRUFBZ0IsS0FBSztJQUM1RCxpREFBaUQsRUFBTSxLQUFLO0lBQzVELDZCQUE2QixFQUEwQixLQUFLO0lBQzVELDZCQUE2QixFQUEwQixLQUFLO0lBQzVELG9DQUFvQyxFQUFtQixLQUFLO0lBQzVELGdDQUFnQyxFQUF1QixLQUFLO0lBQzVELGdDQUFnQyxFQUF1QixLQUFLO0lBQzVELHdCQUF3QixFQUErQixLQUFLO0lBQzVELGlDQUFpQyxFQUFzQixLQUFLO0lBQzVELGdDQUFnQyxFQUF1QixLQUFLO0lBQzVELDRCQUE0QixFQUEyQixLQUFLO0lBQzVELDJCQUEyQixFQUE0QixLQUFLO0lBQzVELDhCQUE4QixFQUF5QixLQUFLO0lBQzVELDZCQUE2QixFQUEwQixLQUFLO0lBQzVELDBCQUEwQixFQUE2QixLQUFLO0lBQzVELDZCQUE2QixFQUEwQixLQUFLO0lBQzVELDJCQUEyQixFQUE0QixLQUFLO0lBQzVELGtDQUFrQyxFQUFxQixLQUFLO0lBQzVELHlCQUF5QixFQUE4QixLQUFLO0lBQzVELHdDQUF3QyxFQUFlLEtBQUs7SUFDNUQsd0NBQXdDLEVBQWUsS0FBSztJQUM1RCxnQ0FBZ0MsRUFBdUIsS0FBSztJQUM1RCwwQkFBMEIsRUFBNkIsS0FBSztJQUM1RCxrREFBa0QsRUFBSyxLQUFLO0lBQzVELDZCQUE2QixFQUEwQixLQUFLO0lBQzVELGFBQWEsRUFBMEMsS0FBSztJQUM1RCw2QkFBNkIsRUFBMEIsS0FBSztJQUM1RCx3Q0FBd0MsRUFBZSxLQUFLO0lBQzVELHVDQUF1QyxFQUFnQixLQUFLO0lBQzVELGdDQUFnQyxFQUF1QixLQUFLO0lBQzVELGdDQUFnQyxFQUF1QixLQUFLO0lBQzVELCtCQUErQixFQUF3QixLQUFLO0lBQzVELDhCQUE4QixFQUF5QixLQUFLO0lBQzVELDhCQUE4QixFQUF5QixLQUFLO0lBQzVELHlCQUF5QixFQUE4QixLQUFLO0lBQzVELHFDQUFxQyxFQUFrQixLQUFLO0lBQzVELHFEQUFxRCxFQUFFLEtBQUs7SUFDNUQsMkJBQTJCLEVBQTRCLEtBQUs7SUFDNUQsbUNBQW1DLEVBQW9CLEtBQUs7SUFDNUQsMkJBQTJCLEVBQTRCLEtBQUs7SUFDNUQsd0JBQXdCLEVBQStCLEtBQUs7SUFDNUQseUJBQXlCLEVBQThCLEtBQUs7SUFDNUQscUJBQXFCLEVBQWtDLEtBQUs7SUFDNUQscUNBQXFDLEVBQWtCLEtBQUs7SUFDNUQsa0NBQWtDLEVBQXFCLEtBQUs7SUFDNUQseUJBQXlCLEVBQThCLEtBQUs7SUFDNUQseUJBQXlCLEVBQThCLEtBQUs7SUFDNUQsMkJBQTJCLEVBQTRCLEtBQUs7SUFDNUQsNEJBQTRCLEVBQTJCLEtBQUs7SUFDNUQsMkJBQTJCLEVBQTRCLEtBQUs7SUFDNUQsa0NBQWtDLEVBQXFCLEtBQUs7SUFDNUQscURBQXFELEVBQUUsS0FBSztJQUM1RCw4QkFBOEIsRUFBeUIsS0FBSztJQUM1RCw2QkFBNkIsRUFBMEIsS0FBSztDQUMvRCxDQUFDO0FBRVcsUUFBQSxjQUFjLEdBQUc7SUFDMUIsbUNBQW1DLEVBQWlCLE9BQU87SUFDM0Qsb0NBQW9DLEVBQWdCLE9BQU87SUFDM0QsbUJBQW1CLEVBQWlDLE9BQU87SUFDM0Qsb0NBQW9DLEVBQWdCLE9BQU87SUFDM0QsZ0NBQWdDLEVBQW9CLE9BQU87SUFDM0QsaUJBQWlCLEVBQW1DLE9BQU87SUFDM0QsdUJBQXVCLEVBQTZCLE9BQU87SUFDM0QsYUFBYSxFQUF1QyxPQUFPO0lBQzNELGlCQUFpQixFQUFtQyxPQUFPO0lBQzNELFlBQVksRUFBd0MsT0FBTztJQUMzRCwwQkFBMEIsRUFBMEIsT0FBTztJQUMzRCwyQkFBMkIsRUFBeUIsT0FBTztJQUMzRCwyQkFBMkIsRUFBeUIsT0FBTztJQUMzRCw2QkFBNkIsRUFBdUIsT0FBTztJQUMzRCxpQkFBaUIsRUFBbUMsT0FBTztJQUMzRCx3QkFBd0IsRUFBNEIsT0FBTztJQUMzRCxxQ0FBcUMsRUFBZSxPQUFPO0lBQzNELDZCQUE2QixFQUF1QixPQUFPO0lBQzNELGFBQWEsRUFBdUMsT0FBTztJQUMzRCxlQUFlLEVBQXFDLE9BQU87SUFDM0QsNkJBQTZCLEVBQXVCLE9BQU87SUFDM0QsZ0NBQWdDLEVBQW9CLE9BQU87SUFDM0QsZ0NBQWdDLEVBQW9CLE9BQU87SUFDM0Qsa0NBQWtDLEVBQWtCLE9BQU87SUFDM0QsK0JBQStCLEVBQXFCLE9BQU87SUFDM0QsbUNBQW1DLEVBQWlCLE9BQU87SUFDM0QsZ0JBQWdCLEVBQW9DLE9BQU87SUFDM0Qsc0JBQXNCLEVBQThCLE9BQU87SUFDM0QsdUNBQXVDLEVBQWEsT0FBTztJQUMzRCxnQ0FBZ0MsRUFBb0IsT0FBTztJQUMzRCx3QkFBd0IsRUFBNEIsT0FBTztJQUMzRCxrREFBa0QsRUFBRSxPQUFPO0lBQzNELDhCQUE4QixFQUFzQixPQUFPO0lBQzNELHFCQUFxQixFQUErQixPQUFPO0lBQzNELHFCQUFxQixFQUErQixPQUFPO0lBQzNELDRCQUE0QixFQUF3QixPQUFPO0lBQzNELGtCQUFrQixFQUFrQyxPQUFPO0lBQzNELHdCQUF3QixFQUE0QixPQUFPO0lBQzNELG1CQUFtQixFQUFpQyxPQUFPO0lBQzNELDRCQUE0QixFQUF3QixPQUFPO0lBQzNELGtDQUFrQyxFQUFrQixPQUFPO0lBQzNELGdCQUFnQixFQUFvQyxPQUFPO0lBQzNELHVCQUF1QixFQUE2QixPQUFPO0lBQzNELHFDQUFxQyxFQUFlLE9BQU87SUFDM0QscUNBQXFDLEVBQWUsT0FBTztJQUMzRCxrQ0FBa0MsRUFBa0IsT0FBTztJQUMzRCw2Q0FBNkMsRUFBTyxPQUFPO0lBQzNELDhCQUE4QixFQUFzQixPQUFPO0lBQzNELGdEQUFnRCxFQUFJLE9BQU87SUFDM0QsZ0NBQWdDLEVBQW9CLE9BQU87SUFDM0Qsa0JBQWtCLEVBQWtDLE9BQU87SUFDM0QsbUJBQW1CLEVBQWlDLE9BQU87SUFDM0QsdUJBQXVCLEVBQTZCLE9BQU87SUFDM0QsdUJBQXVCLEVBQTZCLE9BQU87SUFDM0QsdUJBQXVCLEVBQTZCLE9BQU87SUFDM0QsOENBQThDLEVBQU0sT0FBTztJQUMzRCx1QkFBdUIsRUFBNkIsT0FBTztJQUMzRCw4QkFBOEIsRUFBc0IsT0FBTztJQUMzRCw4QkFBOEIsRUFBc0IsT0FBTztJQUMzRCxpQ0FBaUMsRUFBbUIsT0FBTztJQUMzRCxnQ0FBZ0MsRUFBb0IsT0FBTztJQUMzRCxzQkFBc0IsRUFBOEIsT0FBTztJQUMzRCxtQ0FBbUMsRUFBaUIsT0FBTztJQUMzRCx1QkFBdUIsRUFBNkIsT0FBTztJQUMzRCxzQkFBc0IsRUFBOEIsT0FBTztDQUM5RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gV0FSTklORzogdGhpcyBmaWxlIGlzIHVzZWQgYnkgYm90aCB0aGUgY2xpZW50IGFuZCB0aGUgc2VydmVyLlxuLy8gRG8gbm90IHVzZSBhbnkgYnJvd3NlciBvciBub2RlLXNwZWNpZmljIEFQSSFcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuZXhwb3J0IGNvbnN0IFRFU1RfUlVOX0VSUk9SUyA9IHtcbiAgICB1bmNhdWdodEVycm9yT25QYWdlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0UxJyxcbiAgICB1bmNhdWdodEVycm9ySW5UZXN0Q29kZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0UyJyxcbiAgICB1bmNhdWdodE5vbkVycm9yT2JqZWN0SW5UZXN0Q29kZTogICAgICAgICAgICAgICAgICAgICAgJ0UzJyxcbiAgICB1bmNhdWdodEVycm9ySW5DbGllbnRGdW5jdGlvbkNvZGU6ICAgICAgICAgICAgICAgICAgICAgJ0U0JyxcbiAgICB1bmNhdWdodEVycm9ySW5DdXN0b21ET01Qcm9wZXJ0eUNvZGU6ICAgICAgICAgICAgICAgICAgJ0U1JyxcbiAgICB1bmhhbmRsZWRQcm9taXNlUmVqZWN0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U2JyxcbiAgICB1bmNhdWdodEV4Y2VwdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U3JyxcbiAgICBtaXNzaW5nQXdhaXRFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U4JyxcbiAgICBhY3Rpb25JbnRlZ2VyT3B0aW9uRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U5JyxcbiAgICBhY3Rpb25Qb3NpdGl2ZUludGVnZXJPcHRpb25FcnJvcjogICAgICAgICAgICAgICAgICAgICAgJ0UxMCcsXG4gICAgYWN0aW9uQm9vbGVhbk9wdGlvbkVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTEnLFxuICAgIGFjdGlvblNwZWVkT3B0aW9uRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnRTEyJyxcbiAgICBhY3Rpb25PcHRpb25zVHlwZUVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0UxNCcsXG4gICAgYWN0aW9uQm9vbGVhbkFyZ3VtZW50RXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTUnLFxuICAgIGFjdGlvblN0cmluZ0FyZ3VtZW50RXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnRTE2JyxcbiAgICBhY3Rpb25OdWxsYWJsZVN0cmluZ0FyZ3VtZW50RXJyb3I6ICAgICAgICAgICAgICAgICAgICAgJ0UxNycsXG4gICAgYWN0aW9uU3RyaW5nT3JTdHJpbmdBcnJheUFyZ3VtZW50RXJyb3I6ICAgICAgICAgICAgICAgICdFMTgnLFxuICAgIGFjdGlvblN0cmluZ0FycmF5RWxlbWVudEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAnRTE5JyxcbiAgICBhY3Rpb25JbnRlZ2VyQXJndW1lbnRFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0UyMCcsXG4gICAgYWN0aW9uUm9sZUFyZ3VtZW50RXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMjEnLFxuICAgIGFjdGlvblBvc2l0aXZlSW50ZWdlckFyZ3VtZW50RXJyb3I6ICAgICAgICAgICAgICAgICAgICAnRTIyJyxcbiAgICBhY3Rpb25TZWxlY3RvckVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0UyMycsXG4gICAgYWN0aW9uRWxlbWVudE5vdEZvdW5kRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMjQnLFxuICAgIGFjdGlvbkVsZW1lbnRJc0ludmlzaWJsZUVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAnRTI2JyxcbiAgICBhY3Rpb25TZWxlY3Rvck1hdGNoZXNXcm9uZ05vZGVUeXBlRXJyb3I6ICAgICAgICAgICAgICAgJ0UyNycsXG4gICAgYWN0aW9uQWRkaXRpb25hbEVsZW1lbnROb3RGb3VuZEVycm9yOiAgICAgICAgICAgICAgICAgICdFMjgnLFxuICAgIGFjdGlvbkFkZGl0aW9uYWxFbGVtZW50SXNJbnZpc2libGVFcnJvcjogICAgICAgICAgICAgICAnRTI5JyxcbiAgICBhY3Rpb25BZGRpdGlvbmFsU2VsZWN0b3JNYXRjaGVzV3JvbmdOb2RlVHlwZUVycm9yOiAgICAgJ0UzMCcsXG4gICAgYWN0aW9uRWxlbWVudE5vbkVkaXRhYmxlRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICdFMzEnLFxuICAgIGFjdGlvbkVsZW1lbnROb3RUZXh0QXJlYUVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAnRTMyJyxcbiAgICBhY3Rpb25FbGVtZW50Tm9uQ29udGVudEVkaXRhYmxlRXJyb3I6ICAgICAgICAgICAgICAgICAgJ0UzMycsXG4gICAgYWN0aW9uRWxlbWVudElzTm90RmlsZUlucHV0RXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICdFMzQnLFxuICAgIGFjdGlvblJvb3RDb250YWluZXJOb3RGb3VuZEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAnRTM1JyxcbiAgICBhY3Rpb25JbmNvcnJlY3RLZXlzRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0UzNicsXG4gICAgYWN0aW9uQ2Fubm90RmluZEZpbGVUb1VwbG9hZEVycm9yOiAgICAgICAgICAgICAgICAgICAgICdFMzcnLFxuICAgIGFjdGlvblVuc3VwcG9ydGVkRGV2aWNlVHlwZUVycm9yOiAgICAgICAgICAgICAgICAgICAgICAnRTM4JyxcbiAgICBhY3Rpb25JZnJhbWVJc05vdExvYWRlZEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJ0UzOScsXG4gICAgYWN0aW9uRWxlbWVudE5vdElmcmFtZUVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICdFNDAnLFxuICAgIGFjdGlvbkludmFsaWRTY3JvbGxUYXJnZXRFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAnRTQxJyxcbiAgICBjdXJyZW50SWZyYW1lSXNOb3RMb2FkZWRFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgJ0U0MicsXG4gICAgY3VycmVudElmcmFtZU5vdEZvdW5kRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFNDMnLFxuICAgIGN1cnJlbnRJZnJhbWVJc0ludmlzaWJsZUVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAnRTQ0JyxcbiAgICBuYXRpdmVEaWFsb2dOb3RIYW5kbGVkRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U0NScsXG4gICAgdW5jYXVnaHRFcnJvckluTmF0aXZlRGlhbG9nSGFuZGxlcjogICAgICAgICAgICAgICAgICAgICdFNDYnLFxuICAgIHNldFRlc3RTcGVlZEFyZ3VtZW50RXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnRTQ3JyxcbiAgICBzZXROYXRpdmVEaWFsb2dIYW5kbGVyQ29kZVdyb25nVHlwZUVycm9yOiAgICAgICAgICAgICAgJ0U0OCcsXG4gICAgY2xpZW50RnVuY3Rpb25FeGVjdXRpb25JbnRlcnJ1cHRpb25FcnJvcjogICAgICAgICAgICAgICdFNDknLFxuICAgIGRvbU5vZGVDbGllbnRGdW5jdGlvblJlc3VsdEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAnRTUwJyxcbiAgICBpbnZhbGlkU2VsZWN0b3JSZXN1bHRFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U1MScsXG4gICAgY2Fubm90T2J0YWluSW5mb0ZvckVsZW1lbnRTcGVjaWZpZWRCeVNlbGVjdG9yRXJyb3I6ICAgICdFNTInLFxuICAgIGV4dGVybmFsQXNzZXJ0aW9uTGlicmFyeUVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAnRTUzJyxcbiAgICBwYWdlTG9hZEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U1NCcsXG4gICAgd2luZG93RGltZW5zaW9uc092ZXJmbG93RXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICdFNTUnLFxuICAgIGZvcmJpZGRlbkNoYXJhY3RlcnNJblNjcmVlbnNob3RQYXRoRXJyb3I6ICAgICAgICAgICAgICAnRTU2JyxcbiAgICBpbnZhbGlkRWxlbWVudFNjcmVlbnNob3REaW1lbnNpb25zRXJyb3I6ICAgICAgICAgICAgICAgJ0U1NycsXG4gICAgcm9sZVN3aXRjaEluUm9sZUluaXRpYWxpemVyRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICdFNTgnLFxuICAgIGFzc2VydGlvbkV4ZWN1dGFibGVBcmd1bWVudEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAnRTU5JyxcbiAgICBhc3NlcnRpb25XaXRob3V0TWV0aG9kQ2FsbEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgJ0U2MCcsXG4gICAgYXNzZXJ0aW9uVW5hd2FpdGVkUHJvbWlzZUVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICdFNjEnLFxuICAgIHJlcXVlc3RIb29rTm90SW1wbGVtZW50ZWRFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAnRTYyJyxcbiAgICByZXF1ZXN0SG9va1VuaGFuZGxlZEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U2MycsXG4gICAgdW5jYXVnaHRFcnJvckluQ3VzdG9tQ2xpZW50U2NyaXB0Q29kZTogICAgICAgICAgICAgICAgICdFNjQnLFxuICAgIHVuY2F1Z2h0RXJyb3JJbkN1c3RvbUNsaWVudFNjcmlwdENvZGVMb2FkZWRGcm9tTW9kdWxlOiAnRTY1JyxcbiAgICB1bmNhdWdodEVycm9ySW5DdXN0b21TY3JpcHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U2NicsXG4gICAgdW5jYXVnaHRUZXN0Q2FmZUVycm9ySW5DdXN0b21TY3JpcHQ6ICAgICAgICAgICAgICAgICAgICdFNjcnLFxuICAgIGNoaWxkV2luZG93SXNOb3RMb2FkZWRFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAnRTY4JyxcbiAgICBjaGlsZFdpbmRvd05vdEZvdW5kRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U2OScsXG4gICAgY2Fubm90U3dpdGNoVG9XaW5kb3dFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFNzAnLFxuICAgIGNsb3NlQ2hpbGRXaW5kb3dFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnRTcxJyxcbiAgICBjaGlsZFdpbmRvd0Nsb3NlZEJlZm9yZVN3aXRjaGluZ0Vycm9yOiAgICAgICAgICAgICAgICAgJ0U3MicsXG4gICAgY2Fubm90Q2xvc2VXaW5kb3dXaXRoQ2hpbGRyZW5FcnJvcjogICAgICAgICAgICAgICAgICAgICdFNzMnLFxuICAgIHRhcmdldFdpbmRvd05vdEZvdW5kRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnRTc0JyxcbiAgICBwYXJlbnRXaW5kb3dOb3RGb3VuZEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U3NicsXG4gICAgcHJldmlvdXNXaW5kb3dOb3RGb3VuZEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICdFNzcnLFxuICAgIHN3aXRjaFRvV2luZG93UHJlZGljYXRlRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAnRTc4JyxcbiAgICBhY3Rpb25GdW5jdGlvbkFyZ3VtZW50RXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0U3OScsXG4gICAgbXVsdGlwbGVXaW5kb3dzTW9kZUlzRGlzYWJsZWRFcnJvcjogICAgICAgICAgICAgICAgICAgICdFODAnLFxuICAgIG11bHRpcGxlV2luZG93c01vZGVJc05vdFN1cHBvcnRlZEluUmVtb3RlQnJvd3NlckVycm9yOiAnRTgxJyxcbiAgICBjYW5ub3RDbG9zZVdpbmRvd1dpdGhvdXRQYXJlbnQ6ICAgICAgICAgICAgICAgICAgICAgICAgJ0U4MicsXG4gICAgY2Fubm90UmVzdG9yZUNoaWxkV2luZG93RXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICdFODMnXG59O1xuXG5leHBvcnQgY29uc3QgUlVOVElNRV9FUlJPUlMgPSB7XG4gICAgY2Fubm90Q3JlYXRlTXVsdGlwbGVMaXZlTW9kZVJ1bm5lcnM6ICAgICAgICAgICAgICAgICdFMTAwMCcsXG4gICAgY2Fubm90UnVuTGl2ZU1vZGVSdW5uZXJNdWx0aXBsZVRpbWVzOiAgICAgICAgICAgICAgICdFMTAwMScsXG4gICAgYnJvd3NlckRpc2Nvbm5lY3RlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAwMicsXG4gICAgY2Fubm90UnVuQWdhaW5zdERpc2Nvbm5lY3RlZEJyb3dzZXJzOiAgICAgICAgICAgICAgICdFMTAwMycsXG4gICAgY2Fubm90RXN0YWJsaXNoQnJvd3NlckNvbm5lY3Rpb246ICAgICAgICAgICAgICAgICAgICdFMTAwNCcsXG4gICAgY2Fubm90RmluZEJyb3dzZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAwNScsXG4gICAgYnJvd3NlclByb3ZpZGVyTm90Rm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAwNicsXG4gICAgYnJvd3Nlck5vdFNldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAwNycsXG4gICAgdGVzdEZpbGVzTm90Rm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAwOCcsXG4gICAgbm9UZXN0c1RvUnVuOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAwOScsXG4gICAgY2Fubm90RmluZFJlcG9ydGVyRm9yQWxpYXM6ICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAxMCcsXG4gICAgbXVsdGlwbGVTYW1lU3RyZWFtUmVwb3J0ZXJzOiAgICAgICAgICAgICAgICAgICAgICAgICdFMTAxMScsXG4gICAgb3B0aW9uVmFsdWVJc05vdFZhbGlkUmVnRXhwOiAgICAgICAgICAgICAgICAgICAgICAgICdFMTAxMicsXG4gICAgb3B0aW9uVmFsdWVJc05vdFZhbGlkS2V5VmFsdWU6ICAgICAgICAgICAgICAgICAgICAgICdFMTAxMycsXG4gICAgaW52YWxpZFNwZWVkVmFsdWU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAxNCcsXG4gICAgaW52YWxpZENvbmN1cnJlbmN5RmFjdG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAxNScsXG4gICAgY2Fubm90RGl2aWRlUmVtb3Rlc0NvdW50QnlDb25jdXJyZW5jeTogICAgICAgICAgICAgICdFMTAxNicsXG4gICAgcG9ydHNPcHRpb25SZXF1aXJlc1R3b051bWJlcnM6ICAgICAgICAgICAgICAgICAgICAgICdFMTAxNycsXG4gICAgcG9ydElzTm90RnJlZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAxOCcsXG4gICAgaW52YWxpZEhvc3RuYW1lOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAxOScsXG4gICAgY2Fubm90RmluZFNwZWNpZmllZFRlc3RTb3VyY2U6ICAgICAgICAgICAgICAgICAgICAgICdFMTAyMCcsXG4gICAgY2xpZW50RnVuY3Rpb25Db2RlSXNOb3RBRnVuY3Rpb246ICAgICAgICAgICAgICAgICAgICdFMTAyMScsXG4gICAgc2VsZWN0b3JJbml0aWFsaXplZFdpdGhXcm9uZ1R5cGU6ICAgICAgICAgICAgICAgICAgICdFMTAyMicsXG4gICAgY2xpZW50RnVuY3Rpb25DYW5ub3RSZXNvbHZlVGVzdFJ1bjogICAgICAgICAgICAgICAgICdFMTAyMycsXG4gICAgcmVnZW5lcmF0b3JJbkNsaWVudEZ1bmN0aW9uQ29kZTogICAgICAgICAgICAgICAgICAgICdFMTAyNCcsXG4gICAgaW52YWxpZENsaWVudEZ1bmN0aW9uVGVzdFJ1bkJpbmRpbmc6ICAgICAgICAgICAgICAgICdFMTAyNScsXG4gICAgaW52YWxpZFZhbHVlVHlwZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAyNicsXG4gICAgdW5zdXBwb3J0ZWRVcmxQcm90b2NvbDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAyNycsXG4gICAgdGVzdENvbnRyb2xsZXJQcm94eUNhbm5vdFJlc29sdmVUZXN0UnVuOiAgICAgICAgICAgICdFMTAyOCcsXG4gICAgdGltZUxpbWl0ZWRQcm9taXNlVGltZW91dEV4cGlyZWQ6ICAgICAgICAgICAgICAgICAgICdFMTAyOScsXG4gICAgbm9UZXN0c1RvUnVuRHVlRmlsdGVyaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAzMCcsXG4gICAgY2Fubm90U2V0VmlkZW9PcHRpb25zV2l0aG91dEJhc2VWaWRlb1BhdGhTcGVjaWZpZWQ6ICdFMTAzMScsXG4gICAgbXVsdGlwbGVBUElNZXRob2RDYWxsRm9yYmlkZGVuOiAgICAgICAgICAgICAgICAgICAgICdFMTAzMicsXG4gICAgaW52YWxpZFJlcG9ydGVyT3V0cHV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAzMycsXG4gICAgY2Fubm90UmVhZFNTTENlcnRGaWxlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAzNCcsXG4gICAgY2Fubm90UHJlcGFyZVRlc3RzRHVlVG9FcnJvcjogICAgICAgICAgICAgICAgICAgICAgICdFMTAzNScsXG4gICAgY2Fubm90UGFyc2VSYXdGaWxlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAzNicsXG4gICAgdGVzdGVkQXBwRmFpbGVkV2l0aEVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAzNycsXG4gICAgdW5hYmxlVG9PcGVuQnJvd3NlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTAzOCcsXG4gICAgcmVxdWVzdEhvb2tDb25maWd1cmVBUElFcnJvcjogICAgICAgICAgICAgICAgICAgICAgICdFMTAzOScsXG4gICAgZm9yYmlkZGVuQ2hhcmF0ZXJzSW5TY3JlZW5zaG90UGF0aDogICAgICAgICAgICAgICAgICdFMTA0MCcsXG4gICAgY2Fubm90RmluZEZGTVBFRzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA0MScsXG4gICAgY29tcG9zaXRlQXJndW1lbnRzRXJyb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA0MicsXG4gICAgY2Fubm90RmluZFR5cGVzY3JpcHRDb25maWd1cmF0aW9uRmlsZTogICAgICAgICAgICAgICdFMTA0MycsXG4gICAgY2xpZW50U2NyaXB0SW5pdGlhbGl6ZXJJc05vdFNwZWNpZmllZDogICAgICAgICAgICAgICdFMTA0NCcsXG4gICAgY2xpZW50U2NyaXB0QmFzZVBhdGhJc05vdFNwZWNpZmllZDogICAgICAgICAgICAgICAgICdFMTA0NScsXG4gICAgY2xpZW50U2NyaXB0SW5pdGlhbGl6ZXJNdWx0aXBsZUNvbnRlbnRTb3VyY2VzOiAgICAgICdFMTA0NicsXG4gICAgY2Fubm90TG9hZENsaWVudFNjcmlwdEZyb21QYXRoOiAgICAgICAgICAgICAgICAgICAgICdFMTA0NycsXG4gICAgY2xpZW50U2NyaXB0TW9kdWxlRW50cnlQb2ludFBhdGhDYWxjdWxhdGlvbkVycm9yOiAgICdFMTA0OCcsXG4gICAgbWV0aG9kSXNOb3RBdmFpbGFibGVGb3JBbklQQ0hvc3Q6ICAgICAgICAgICAgICAgICAgICdFMTA0OScsXG4gICAgdG9vTGFyZ2VJUENQYXlsb2FkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA1MCcsXG4gICAgbWFsZm9ybWVkSVBDTWVzc2FnZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA1MScsXG4gICAgdW5leHBlY3RlZElQQ0hlYWRQYWNrZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA1MicsXG4gICAgdW5leHBlY3RlZElQQ0JvZHlQYWNrZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA1MycsXG4gICAgdW5leHBlY3RlZElQQ1RhaWxQYWNrZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA1NCcsXG4gICAgY2Fubm90UnVuTG9jYWxOb25IZWFkbGVzc0Jyb3dzZXJXaXRob3V0RGlzcGxheTogICAgICdFMTA1NycsXG4gICAgdW5jYXVnaHRFcnJvckluUmVwb3J0ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA1OCcsXG4gICAgcm9sZUluaXRpYWxpemVkV2l0aFJlbGF0aXZlVXJsOiAgICAgICAgICAgICAgICAgICAgICdFMTA1OScsXG4gICAgdHlwZVNjcmlwdENvbXBpbGVyTG9hZGluZ0Vycm9yOiAgICAgICAgICAgICAgICAgICAgICdFMTA2MCcsXG4gICAgY2Fubm90Q3VzdG9taXplU3BlY2lmaWVkQ29tcGlsZXJzOiAgICAgICAgICAgICAgICAgICdFMTA2MScsXG4gICAgY2Fubm90RW5hYmxlUmV0cnlUZXN0UGFnZXNPcHRpb246ICAgICAgICAgICAgICAgICAgICdFMTA2MicsXG4gICAgYnJvd3NlckNvbm5lY3Rpb25FcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA2MycsXG4gICAgdGVzdFJ1blJlcXVlc3RJbkRpc2Nvbm5lY3RlZEJyb3dzZXI6ICAgICAgICAgICAgICAgICdFMTA2NCcsXG4gICAgaW52YWxpZFF1YXJhbnRpbmVPcHRpb246ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA2NScsXG4gICAgaW52YWxpZFJldHJ5Q291bnRWYWx1ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICdFMTA2NicsXG59O1xuIl19
|