UNPKG

11.1 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const lazyRequire = require('import-lazy')(require);
4const hammerhead = lazyRequire('testcafe-hammerhead');
5const ReporterPluginHost = lazyRequire('./reporter/plugin-host');
6const getTestListModule = lazyRequire('./compiler/test-file/formats/es-next/get-test-list');
7const getTypeScriptTestListModule = lazyRequire('./compiler/test-file/formats/typescript/get-test-list');
8const getCoffeeScriptTestListModule = lazyRequire('./compiler/test-file/formats/coffeescript/get-test-list');
9const COMMAND_TYPE = lazyRequire('./test-run/commands/type');
10const ASSERTION_TYPE = lazyRequire('./assertions/type');
11const createCommandFromObject = lazyRequire('./test-run/commands/from-object');
12const initializers = lazyRequire('./test-run/commands/validations/initializers');
13const errorTypes = lazyRequire('./errors/types');
14const TestRunErrorFormattableAdapter = lazyRequire('./errors/test-run/formattable-adapter');
15const testRunErrors = lazyRequire('./errors/test-run');
16const processTestFnError = lazyRequire('./errors/process-test-fn-error');
17const testRunErrorUtils = lazyRequire('./errors/test-run/utils');
18const browserProviderPool = lazyRequire('./browser/provider/pool');
19const BrowserConnection = lazyRequire('./browser/connection');
20// NOTE: we can't use lazy require for TestRun and Assignable, because it breaks prototype chain for inherited classes
21let TestRun = null;
22let Assignable = null;
23exports.default = {
24 TestRunErrorFormattableAdapter,
25 testRunErrors,
26 COMMAND_TYPE,
27 ASSERTION_TYPE,
28 errorTypes,
29 testRunErrorUtils,
30 BrowserConnection,
31 get Assignable() {
32 if (!Assignable)
33 Assignable = require('./utils/assignable');
34 return Assignable;
35 },
36 get TestRun() {
37 if (!TestRun)
38 TestRun = require('./test-run');
39 return TestRun;
40 },
41 get getTestList() {
42 return getTestListModule.getTestList;
43 },
44 get getTypeScriptTestList() {
45 return getTypeScriptTestListModule.getTypeScriptTestList;
46 },
47 get getCoffeeScriptTestList() {
48 return getCoffeeScriptTestListModule.getCoffeeScriptTestList;
49 },
50 get getTestListFromCode() {
51 return getTestListModule.getTestListFromCode;
52 },
53 get getTypeScriptTestListFromCode() {
54 return getTypeScriptTestListModule.getTypeScriptTestListFromCode;
55 },
56 get getCoffeeScriptTestListFromCode() {
57 return getCoffeeScriptTestListModule.getCoffeeScriptTestListFromCode;
58 },
59 get initSelector() {
60 return initializers.initSelector;
61 },
62 get createCommandFromObject() {
63 return createCommandFromObject;
64 },
65 get processTestFnError() {
66 return processTestFnError;
67 },
68 get browserProviderPool() {
69 return browserProviderPool;
70 },
71 ensureUploadDirectory(...args) {
72 return hammerhead.UploadStorage.ensureUploadsRoot(...args);
73 },
74 copyFilesToUploadFolder(...args) {
75 return hammerhead.UploadStorage.copy(...args);
76 },
77 buildReporterPlugin(pluginFactory, outStream) {
78 const plugin = pluginFactory();
79 return new ReporterPluginHost(plugin, outStream);
80 }
81};
82module.exports = exports.default;
83//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1iZWRkaW5nLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2VtYmVkZGluZy11dGlscy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUVwRCxNQUFNLFVBQVUsR0FBdUIsV0FBVyxDQUFDLHFCQUFxQixDQUFDLENBQUM7QUFDMUUsTUFBTSxrQkFBa0IsR0FBZSxXQUFXLENBQUMsd0JBQXdCLENBQUMsQ0FBQztBQUM3RSxNQUFNLGlCQUFpQixHQUFnQixXQUFXLENBQUMsb0RBQW9ELENBQUMsQ0FBQztBQUN6RyxNQUFNLDJCQUEyQixHQUFNLFdBQVcsQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO0FBQzVHLE1BQU0sNkJBQTZCLEdBQUksV0FBVyxDQUFDLHlEQUF5RCxDQUFDLENBQUM7QUFDOUcsTUFBTSxZQUFZLEdBQXFCLFdBQVcsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0FBQy9FLE1BQU0sY0FBYyxHQUFtQixXQUFXLENBQUMsbUJBQW1CLENBQUMsQ0FBQztBQUN4RSxNQUFNLHVCQUF1QixHQUFVLFdBQVcsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0FBQ3RGLE1BQU0sWUFBWSxHQUFxQixXQUFXLENBQUMsOENBQThDLENBQUMsQ0FBQztBQUNuRyxNQUFNLFVBQVUsR0FBdUIsV0FBVyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDckUsTUFBTSw4QkFBOEIsR0FBRyxXQUFXLENBQUMsdUNBQXVDLENBQUMsQ0FBQztBQUM1RixNQUFNLGFBQWEsR0FBb0IsV0FBVyxDQUFDLG1CQUFtQixDQUFDLENBQUM7QUFDeEUsTUFBTSxrQkFBa0IsR0FBZSxXQUFXLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztBQUNyRixNQUFNLGlCQUFpQixHQUFnQixXQUFXLENBQUMseUJBQXlCLENBQUMsQ0FBQztBQUM5RSxNQUFNLG1CQUFtQixHQUFjLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0FBQzlFLE1BQU0saUJBQWlCLEdBQWdCLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBRzNFLHNIQUFzSDtBQUN0SCxJQUFJLE9BQU8sR0FBTSxJQUFJLENBQUM7QUFDdEIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDO0FBRXRCLGtCQUFlO0lBQ1gsOEJBQThCO0lBQzlCLGFBQWE7SUFDYixZQUFZO0lBQ1osY0FBYztJQUNkLFVBQVU7SUFDVixpQkFBaUI7SUFDakIsaUJBQWlCO0lBRWpCLElBQUksVUFBVTtRQUNWLElBQUksQ0FBQyxVQUFVO1lBQ1gsVUFBVSxHQUFHLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRS9DLE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxJQUFJLENBQUMsT0FBTztZQUNSLE9BQU8sR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFcEMsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8saUJBQWlCLENBQUMsV0FBVyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLHFCQUFxQjtRQUNyQixPQUFPLDJCQUEyQixDQUFDLHFCQUFxQixDQUFDO0lBQzdELENBQUM7SUFFRCxJQUFJLHVCQUF1QjtRQUN2QixPQUFPLDZCQUE2QixDQUFDLHVCQUF1QixDQUFDO0lBQ2pFLENBQUM7SUFFRCxJQUFJLG1CQUFtQjtRQUNuQixPQUFPLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUFJLDZCQUE2QjtRQUM3QixPQUFPLDJCQUEyQixDQUFDLDZCQUE2QixDQUFDO0lBQ3JFLENBQUM7SUFFRCxJQUFJLCtCQUErQjtRQUMvQixPQUFPLDZCQUE2QixDQUFDLCtCQUErQixDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDWixPQUFPLFlBQVksQ0FBQyxZQUFZLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3ZCLE9BQU8sdUJBQXVCLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ2xCLE9BQU8sa0JBQWtCLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ25CLE9BQU8sbUJBQW1CLENBQUM7SUFDL0IsQ0FBQztJQUVELHFCQUFxQixDQUFFLEdBQUcsSUFBSTtRQUMxQixPQUFPLFVBQVUsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsdUJBQXVCLENBQUUsR0FBRyxJQUFJO1FBQzVCLE9BQU8sVUFBVSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsbUJBQW1CLENBQUUsYUFBYSxFQUFFLFNBQVM7UUFDekMsTUFBTSxNQUFNLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFFL0IsT0FBTyxJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztJQUNyRCxDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGxhenlSZXF1aXJlID0gcmVxdWlyZSgnaW1wb3J0LWxhenknKShyZXF1aXJlKTtcblxuY29uc3QgaGFtbWVyaGVhZCAgICAgICAgICAgICAgICAgICAgID0gbGF6eVJlcXVpcmUoJ3Rlc3RjYWZlLWhhbW1lcmhlYWQnKTtcbmNvbnN0IFJlcG9ydGVyUGx1Z2luSG9zdCAgICAgICAgICAgICA9IGxhenlSZXF1aXJlKCcuL3JlcG9ydGVyL3BsdWdpbi1ob3N0Jyk7XG5jb25zdCBnZXRUZXN0TGlzdE1vZHVsZSAgICAgICAgICAgICAgPSBsYXp5UmVxdWlyZSgnLi9jb21waWxlci90ZXN0LWZpbGUvZm9ybWF0cy9lcy1uZXh0L2dldC10ZXN0LWxpc3QnKTtcbmNvbnN0IGdldFR5cGVTY3JpcHRUZXN0TGlzdE1vZHVsZSAgICA9IGxhenlSZXF1aXJlKCcuL2NvbXBpbGVyL3Rlc3QtZmlsZS9mb3JtYXRzL3R5cGVzY3JpcHQvZ2V0LXRlc3QtbGlzdCcpO1xuY29uc3QgZ2V0Q29mZmVlU2NyaXB0VGVzdExpc3RNb2R1bGUgID0gbGF6eVJlcXVpcmUoJy4vY29tcGlsZXIvdGVzdC1maWxlL2Zvcm1hdHMvY29mZmVlc2NyaXB0L2dldC10ZXN0LWxpc3QnKTtcbmNvbnN0IENPTU1BTkRfVFlQRSAgICAgICAgICAgICAgICAgICA9IGxhenlSZXF1aXJlKCcuL3Rlc3QtcnVuL2NvbW1hbmRzL3R5cGUnKTtcbmNvbnN0IEFTU0VSVElPTl9UWVBFICAgICAgICAgICAgICAgICA9IGxhenlSZXF1aXJlKCcuL2Fzc2VydGlvbnMvdHlwZScpO1xuY29uc3QgY3JlYXRlQ29tbWFuZEZyb21PYmplY3QgICAgICAgID0gbGF6eVJlcXVpcmUoJy4vdGVzdC1ydW4vY29tbWFuZHMvZnJvbS1vYmplY3QnKTtcbmNvbnN0IGluaXRpYWxpemVycyAgICAgICAgICAgICAgICAgICA9IGxhenlSZXF1aXJlKCcuL3Rlc3QtcnVuL2NvbW1hbmRzL3ZhbGlkYXRpb25zL2luaXRpYWxpemVycycpO1xuY29uc3QgZXJyb3JUeXBlcyAgICAgICAgICAgICAgICAgICAgID0gbGF6eVJlcXVpcmUoJy4vZXJyb3JzL3R5cGVzJyk7XG5jb25zdCBUZXN0UnVuRXJyb3JGb3JtYXR0YWJsZUFkYXB0ZXIgPSBsYXp5UmVxdWlyZSgnLi9lcnJvcnMvdGVzdC1ydW4vZm9ybWF0dGFibGUtYWRhcHRlcicpO1xuY29uc3QgdGVzdFJ1bkVycm9ycyAgICAgICAgICAgICAgICAgID0gbGF6eVJlcXVpcmUoJy4vZXJyb3JzL3Rlc3QtcnVuJyk7XG5jb25zdCBwcm9jZXNzVGVzdEZuRXJyb3IgICAgICAgICAgICAgPSBsYXp5UmVxdWlyZSgnLi9lcnJvcnMvcHJvY2Vzcy10ZXN0LWZuLWVycm9yJyk7XG5jb25zdCB0ZXN0UnVuRXJyb3JVdGlscyAgICAgICAgICAgICAgPSBsYXp5UmVxdWlyZSgnLi9lcnJvcnMvdGVzdC1ydW4vdXRpbHMnKTtcbmNvbnN0IGJyb3dzZXJQcm92aWRlclBvb2wgICAgICAgICAgICA9IGxhenlSZXF1aXJlKCcuL2Jyb3dzZXIvcHJvdmlkZXIvcG9vbCcpO1xuY29uc3QgQnJvd3NlckNvbm5lY3Rpb24gICAgICAgICAgICAgID0gbGF6eVJlcXVpcmUoJy4vYnJvd3Nlci9jb25uZWN0aW9uJyk7XG5cblxuLy8gTk9URTogd2UgY2FuJ3QgdXNlIGxhenkgcmVxdWlyZSBmb3IgVGVzdFJ1biBhbmQgQXNzaWduYWJsZSwgYmVjYXVzZSBpdCBicmVha3MgcHJvdG90eXBlIGNoYWluIGZvciBpbmhlcml0ZWQgY2xhc3Nlc1xubGV0IFRlc3RSdW4gICAgPSBudWxsO1xubGV0IEFzc2lnbmFibGUgPSBudWxsO1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gICAgVGVzdFJ1bkVycm9yRm9ybWF0dGFibGVBZGFwdGVyLFxuICAgIHRlc3RSdW5FcnJvcnMsXG4gICAgQ09NTUFORF9UWVBFLFxuICAgIEFTU0VSVElPTl9UWVBFLFxuICAgIGVycm9yVHlwZXMsXG4gICAgdGVzdFJ1bkVycm9yVXRpbHMsXG4gICAgQnJvd3NlckNvbm5lY3Rpb24sXG5cbiAgICBnZXQgQXNzaWduYWJsZSAoKSB7XG4gICAgICAgIGlmICghQXNzaWduYWJsZSlcbiAgICAgICAgICAgIEFzc2lnbmFibGUgPSByZXF1aXJlKCcuL3V0aWxzL2Fzc2lnbmFibGUnKTtcblxuICAgICAgICByZXR1cm4gQXNzaWduYWJsZTtcbiAgICB9LFxuXG4gICAgZ2V0IFRlc3RSdW4gKCkge1xuICAgICAgICBpZiAoIVRlc3RSdW4pXG4gICAgICAgICAgICBUZXN0UnVuID0gcmVxdWlyZSgnLi90ZXN0LXJ1bicpO1xuXG4gICAgICAgIHJldHVybiBUZXN0UnVuO1xuICAgIH0sXG5cbiAgICBnZXQgZ2V0VGVzdExpc3QgKCkge1xuICAgICAgICByZXR1cm4gZ2V0VGVzdExpc3RNb2R1bGUuZ2V0VGVzdExpc3Q7XG4gICAgfSxcblxuICAgIGdldCBnZXRUeXBlU2NyaXB0VGVzdExpc3QgKCkge1xuICAgICAgICByZXR1cm4gZ2V0VHlwZVNjcmlwdFRlc3RMaXN0TW9kdWxlLmdldFR5cGVTY3JpcHRUZXN0TGlzdDtcbiAgICB9LFxuXG4gICAgZ2V0IGdldENvZmZlZVNjcmlwdFRlc3RMaXN0ICgpIHtcbiAgICAgICAgcmV0dXJuIGdldENvZmZlZVNjcmlwdFRlc3RMaXN0TW9kdWxlLmdldENvZmZlZVNjcmlwdFRlc3RMaXN0O1xuICAgIH0sXG5cbiAgICBnZXQgZ2V0VGVzdExpc3RGcm9tQ29kZSAoKSB7XG4gICAgICAgIHJldHVybiBnZXRUZXN0TGlzdE1vZHVsZS5nZXRUZXN0TGlzdEZyb21Db2RlO1xuICAgIH0sXG5cbiAgICBnZXQgZ2V0VHlwZVNjcmlwdFRlc3RMaXN0RnJvbUNvZGUgKCkge1xuICAgICAgICByZXR1cm4gZ2V0VHlwZVNjcmlwdFRlc3RMaXN0TW9kdWxlLmdldFR5cGVTY3JpcHRUZXN0TGlzdEZyb21Db2RlO1xuICAgIH0sXG5cbiAgICBnZXQgZ2V0Q29mZmVlU2NyaXB0VGVzdExpc3RGcm9tQ29kZSAoKSB7XG4gICAgICAgIHJldHVybiBnZXRDb2ZmZWVTY3JpcHRUZXN0TGlzdE1vZHVsZS5nZXRDb2ZmZWVTY3JpcHRUZXN0TGlzdEZyb21Db2RlO1xuICAgIH0sXG5cbiAgICBnZXQgaW5pdFNlbGVjdG9yICgpIHtcbiAgICAgICAgcmV0dXJuIGluaXRpYWxpemVycy5pbml0U2VsZWN0b3I7XG4gICAgfSxcblxuICAgIGdldCBjcmVhdGVDb21tYW5kRnJvbU9iamVjdCAoKSB7XG4gICAgICAgIHJldHVybiBjcmVhdGVDb21tYW5kRnJvbU9iamVjdDtcbiAgICB9LFxuXG4gICAgZ2V0IHByb2Nlc3NUZXN0Rm5FcnJvciAoKSB7XG4gICAgICAgIHJldHVybiBwcm9jZXNzVGVzdEZuRXJyb3I7XG4gICAgfSxcblxuICAgIGdldCBicm93c2VyUHJvdmlkZXJQb29sICgpIHtcbiAgICAgICAgcmV0dXJuIGJyb3dzZXJQcm92aWRlclBvb2w7XG4gICAgfSxcblxuICAgIGVuc3VyZVVwbG9hZERpcmVjdG9yeSAoLi4uYXJncykge1xuICAgICAgICByZXR1cm4gaGFtbWVyaGVhZC5VcGxvYWRTdG9yYWdlLmVuc3VyZVVwbG9hZHNSb290KC4uLmFyZ3MpO1xuICAgIH0sXG5cbiAgICBjb3B5RmlsZXNUb1VwbG9hZEZvbGRlciAoLi4uYXJncykge1xuICAgICAgICByZXR1cm4gaGFtbWVyaGVhZC5VcGxvYWRTdG9yYWdlLmNvcHkoLi4uYXJncyk7XG4gICAgfSxcblxuICAgIGJ1aWxkUmVwb3J0ZXJQbHVnaW4gKHBsdWdpbkZhY3RvcnksIG91dFN0cmVhbSkge1xuICAgICAgICBjb25zdCBwbHVnaW4gPSBwbHVnaW5GYWN0b3J5KCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBSZXBvcnRlclBsdWdpbkhvc3QocGx1Z2luLCBvdXRTdHJlYW0pO1xuICAgIH1cbn07XG4iXX0=
\No newline at end of file