dceky 1.0.0-beta.5 → 1.0.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/.eslintrc.js +93 -0
- package/README.md +41 -0
- package/cypress/e2e/profile-test.cy.ts +10 -0
- package/cypress/fixtures/example.json +5 -0
- package/cypress/support/commands.ts +37 -0
- package/cypress/support/e2e.ts +17 -0
- package/cypress.config.ts +9 -0
- package/docs/GlobalsAndProfiles.md +23 -0
- package/lib/setup/addToGitIgnore.d.ts +6 -0
- package/lib/setup/addToGitIgnore.js +46 -0
- package/lib/setup/addToGitIgnore.js.map +1 -0
- package/lib/setup/checkRequiredFiles.d.ts +6 -0
- package/lib/setup/checkRequiredFiles.js +58 -0
- package/lib/setup/checkRequiredFiles.js.map +1 -0
- package/lib/setup/genCommandImportFile.d.ts +7 -0
- package/lib/setup/genCommandImportFile.js +66 -0
- package/lib/setup/genCommandImportFile.js.map +1 -0
- package/lib/setup/genConfiguration/helpers/resolveDependents.d.ts +13 -0
- package/lib/setup/genConfiguration/helpers/resolveDependents.js +50 -0
- package/lib/setup/genConfiguration/helpers/resolveDependents.js.map +1 -0
- package/lib/setup/genConfiguration/helpers/splitEnv.d.ts +10 -0
- package/lib/setup/genConfiguration/helpers/splitEnv.js +27 -0
- package/lib/setup/genConfiguration/helpers/splitEnv.js.map +1 -0
- package/lib/setup/genConfiguration/index.d.ts +15 -0
- package/lib/setup/genConfiguration/index.js +86 -0
- package/lib/setup/genConfiguration/index.js.map +1 -0
- package/lib/setup/genConfiguration/types/DependentValue.d.ts +11 -0
- package/lib/setup/genConfiguration/types/DependentValue.js +3 -0
- package/lib/setup/genConfiguration/types/DependentValue.js.map +1 -0
- package/lib/setup/genConfiguration/types/GlobalsOrProfile.d.ts +9 -0
- package/lib/setup/genConfiguration/types/GlobalsOrProfile.js +3 -0
- package/lib/setup/genConfiguration/types/GlobalsOrProfile.js.map +1 -0
- package/lib/setup/genConfiguration/types/SplitEnv.d.ts +13 -0
- package/lib/setup/genConfiguration/types/SplitEnv.js +3 -0
- package/lib/setup/genConfiguration/types/SplitEnv.js.map +1 -0
- package/lib/setup/genConfigurationFile.d.ts +2 -0
- package/lib/setup/genConfigurationFile.js +63 -0
- package/lib/setup/genConfigurationFile.js.map +1 -0
- package/lib/setup/genDynamicConfigFile.d.ts +5 -0
- package/lib/setup/genDynamicConfigFile.js +28 -0
- package/lib/setup/genDynamicConfigFile.js.map +1 -0
- package/lib/setup/index.d.ts +1 -0
- package/lib/setup/index.js +16 -0
- package/lib/setup/index.js.map +1 -0
- package/lib/setup/setupCypressDependencies.d.ts +6 -0
- package/lib/setup/setupCypressDependencies.js +40 -0
- package/lib/setup/setupCypressDependencies.js.map +1 -0
- package/lib/src/commands/assertDoesNotHaveClass.d.ts +20 -0
- package/lib/src/commands/assertDoesNotHaveClass.js +17 -0
- package/lib/src/commands/assertDoesNotHaveClass.js.map +1 -0
- package/lib/src/commands/assertHasClass.d.ts +20 -0
- package/lib/src/commands/assertHasClass.js +17 -0
- package/lib/src/commands/assertHasClass.js.map +1 -0
- package/lib/src/commands/assertNumElements.d.ts +19 -0
- package/lib/src/commands/assertNumElements.js +17 -0
- package/lib/src/commands/assertNumElements.js.map +1 -0
- package/lib/src/commands/extractDataFromClass.d.ts +18 -0
- package/lib/src/commands/extractDataFromClass.js +25 -0
- package/lib/src/commands/extractDataFromClass.js.map +1 -0
- package/lib/src/commands/extractDataFromClassByContents.d.ts +19 -0
- package/lib/src/commands/extractDataFromClassByContents.js +26 -0
- package/lib/src/commands/extractDataFromClassByContents.js.map +1 -0
- package/lib/src/commands/getJSON.d.ts +16 -0
- package/lib/src/commands/getJSON.js +21 -0
- package/lib/src/commands/getJSON.js.map +1 -0
- package/lib/src/commands/getNumElements.d.ts +15 -0
- package/lib/src/commands/getNumElements.js +19 -0
- package/lib/src/commands/getNumElements.js.map +1 -0
- package/lib/src/commands/handleHarvardKey.d.ts +15 -0
- package/lib/src/commands/handleHarvardKey.js +53 -0
- package/lib/src/commands/handleHarvardKey.js.map +1 -0
- package/lib/src/commands/launchAs.d.ts +25 -0
- package/lib/src/commands/launchAs.js +66 -0
- package/lib/src/commands/launchAs.js.map +1 -0
- package/lib/src/commands/launchLTIUsingToken.d.ts +21 -0
- package/lib/src/commands/launchLTIUsingToken.js +68 -0
- package/lib/src/commands/launchLTIUsingToken.js.map +1 -0
- package/lib/src/commands/navigateToHref.d.ts +15 -0
- package/lib/src/commands/navigateToHref.js +35 -0
- package/lib/src/commands/navigateToHref.js.map +1 -0
- package/lib/src/commands/runScript.d.ts +15 -0
- package/lib/src/commands/runScript.js +20 -0
- package/lib/src/commands/runScript.js.map +1 -0
- package/lib/src/commands/typeInto.d.ts +24 -0
- package/lib/src/commands/typeInto.js +41 -0
- package/lib/src/commands/typeInto.js.map +1 -0
- package/lib/src/commands/visitCanvasGETEndpoint.d.ts +20 -0
- package/lib/src/commands/visitCanvasGETEndpoint.js +26 -0
- package/lib/src/commands/visitCanvasGETEndpoint.js.map +1 -0
- package/lib/src/commands/waitForElementVisible.d.ts +16 -0
- package/lib/src/commands/waitForElementVisible.js +19 -0
- package/lib/src/commands/waitForElementVisible.js.map +1 -0
- package/lib/src/genConfiguration/helpers/resolveDependents.d.ts +13 -0
- package/lib/src/genConfiguration/helpers/resolveDependents.js +50 -0
- package/lib/src/genConfiguration/helpers/resolveDependents.js.map +1 -0
- package/lib/src/genConfiguration/helpers/splitEnv.d.ts +10 -0
- package/lib/src/genConfiguration/helpers/splitEnv.js +27 -0
- package/lib/src/genConfiguration/helpers/splitEnv.js.map +1 -0
- package/{src/genConfiguration.ts → lib/src/genConfiguration/index.d.ts} +3 -6
- package/lib/src/genConfiguration/index.js +88 -0
- package/lib/src/genConfiguration/index.js.map +1 -0
- package/lib/src/genConfiguration/types/DependentValue.d.ts +11 -0
- package/lib/src/genConfiguration/types/DependentValue.js +3 -0
- package/lib/src/genConfiguration/types/DependentValue.js.map +1 -0
- package/lib/src/genConfiguration/types/GlobalsOrProfile.d.ts +9 -0
- package/lib/src/genConfiguration/types/GlobalsOrProfile.js +3 -0
- package/lib/src/genConfiguration/types/GlobalsOrProfile.js.map +1 -0
- package/lib/src/genConfiguration/types/SplitEnv.d.ts +13 -0
- package/lib/src/genConfiguration/types/SplitEnv.js +3 -0
- package/lib/src/genConfiguration/types/SplitEnv.js.map +1 -0
- package/lib/{index.d.ts → src/index.d.ts} +1 -1
- package/lib/{index.js → src/index.js} +6 -3
- package/lib/src/index.js.map +1 -0
- package/lib/src/init.d.ts +6 -0
- package/lib/src/init.js +45 -0
- package/lib/src/init.js.map +1 -0
- package/lib/start/constants/AVAILABLE_BROWSERS.d.ts +9 -0
- package/lib/start/constants/AVAILABLE_BROWSERS.js +27 -0
- package/lib/start/constants/AVAILABLE_BROWSERS.js.map +1 -0
- package/lib/start/helpers/exec.d.ts +8 -0
- package/lib/start/helpers/exec.js +18 -0
- package/lib/start/helpers/exec.js.map +1 -0
- package/lib/start/helpers/extractArgValue.d.ts +10 -0
- package/lib/start/helpers/extractArgValue.js +39 -0
- package/lib/start/helpers/extractArgValue.js.map +1 -0
- package/lib/start/helpers/findProfilesByNames.d.ts +16 -0
- package/lib/start/helpers/findProfilesByNames.js +35 -0
- package/lib/start/helpers/findProfilesByNames.js.map +1 -0
- package/lib/start/helpers/parseCommaSeparated.d.ts +8 -0
- package/lib/start/helpers/parseCommaSeparated.js +23 -0
- package/lib/start/helpers/parseCommaSeparated.js.map +1 -0
- package/lib/start/helpers/print.d.ts +38 -0
- package/lib/start/helpers/print.js +145 -0
- package/lib/start/helpers/print.js.map +1 -0
- package/lib/start/helpers/prompt.d.ts +8 -0
- package/lib/start/helpers/prompt.js +25 -0
- package/lib/start/helpers/prompt.js.map +1 -0
- package/lib/start/helpers/showChooser.d.ts +21 -0
- package/lib/start/helpers/showChooser.js +116 -0
- package/lib/start/helpers/showChooser.js.map +1 -0
- package/lib/start/helpers/validateBrowsers.d.ts +8 -0
- package/lib/start/helpers/validateBrowsers.js +36 -0
- package/lib/start/helpers/validateBrowsers.js.map +1 -0
- package/lib/start/index.d.ts +7 -0
- package/lib/start/index.js +139 -0
- package/lib/start/index.js.map +1 -0
- package/lib/start/types/ChooserOption.d.ts +10 -0
- package/lib/start/types/ChooserOption.js +3 -0
- package/lib/start/types/ChooserOption.js.map +1 -0
- package/package.json +28 -8
- package/setup/addToGitIgnore.ts +47 -0
- package/setup/checkRequiredFiles.ts +62 -0
- package/setup/genCommandImportFile.ts +75 -0
- package/setup/genDynamicConfigFile.ts +28 -0
- package/setup/index.ts +11 -0
- package/setup/setupCypressDependencies.ts +38 -0
- package/src/commands/assertDoesNotHaveClass.ts +51 -0
- package/src/commands/assertHasClass.ts +51 -0
- package/src/commands/assertNumElements.ts +50 -0
- package/src/commands/extractDataFromClass.ts +52 -0
- package/src/commands/extractDataFromClassByContents.ts +55 -0
- package/src/commands/getJSON.ts +45 -0
- package/src/commands/getNumElements.ts +45 -0
- package/src/commands/handleHarvardKey.ts +91 -0
- package/src/commands/launchAs.ts +120 -0
- package/src/commands/launchLTIUsingToken.ts +115 -0
- package/src/commands/navigateToHref.ts +60 -0
- package/src/commands/runScript.ts +44 -0
- package/src/commands/typeInto.ts +88 -0
- package/src/commands/visitCanvasGETEndpoint.ts +61 -0
- package/src/commands/waitForElementVisible.ts +49 -0
- package/src/genConfiguration/helpers/resolveDependents.ts +47 -0
- package/src/genConfiguration/helpers/splitEnv.ts +30 -0
- package/src/genConfiguration/index.ts +94 -0
- package/src/genConfiguration/types/DependentValue.ts +14 -0
- package/src/genConfiguration/types/GlobalsOrProfile.ts +12 -0
- package/src/genConfiguration/types/SplitEnv.ts +18 -0
- package/src/index.ts +7 -4
- package/src/init.ts +36 -27
- package/start/constants/AVAILABLE_BROWSERS.ts +28 -0
- package/start/helpers/exec.ts +17 -0
- package/start/helpers/extractArgValue.ts +42 -0
- package/start/helpers/findProfilesByNames.ts +39 -0
- package/start/helpers/parseCommaSeparated.ts +23 -0
- package/start/helpers/print.ts +155 -0
- package/start/helpers/prompt.ts +23 -0
- package/start/helpers/showChooser.ts +140 -0
- package/start/helpers/validateBrowsers.ts +35 -0
- package/start/index.ts +163 -0
- package/start/types/ChooserOption.ts +11 -0
- package/tsconfig.json +3 -4
- package/.eslintrc.json +0 -58
- package/lib/genConfiguration.d.ts +0 -8
- package/lib/genConfiguration.js +0 -13
- package/lib/genConfiguration.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/init.d.ts +0 -13
- package/lib/init.js +0 -19
- package/lib/init.js.map +0 -1
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
/* eslint-disable no-console */
|
|
18
|
+
/* eslint-disable global-require */
|
|
19
|
+
/* eslint-disable import/no-dynamic-require */
|
|
20
|
+
var path_1 = __importDefault(require("path"));
|
|
21
|
+
// Import external libraries
|
|
22
|
+
var deepmerge_1 = __importDefault(require("deepmerge"));
|
|
23
|
+
// Import helpers
|
|
24
|
+
var splitEnv_1 = __importDefault(require("./helpers/splitEnv"));
|
|
25
|
+
var resolveDependents_1 = __importDefault(require("./helpers/resolveDependents"));
|
|
26
|
+
// Determine project directory
|
|
27
|
+
var CWD = path_1.default.join(__dirname, '../..');
|
|
28
|
+
/**
|
|
29
|
+
* Generate Cypress configuration based on global credentials,
|
|
30
|
+
* variables, resources, and profiles
|
|
31
|
+
* @author Gardenia Liu
|
|
32
|
+
* @author Gabe Abrams
|
|
33
|
+
*/
|
|
34
|
+
var genConfiguration = function () {
|
|
35
|
+
var _a, _b;
|
|
36
|
+
// Define paths
|
|
37
|
+
var GLOBALS_PATH = path_1.default.join(CWD, '/cypress/globals');
|
|
38
|
+
var PROFILES_PATH = path_1.default.join(CWD, '/cypress/profiles');
|
|
39
|
+
// Import global env var objects
|
|
40
|
+
var GlobalCredentials = require(path_1.default.join(GLOBALS_PATH, '/GlobalCredentials'));
|
|
41
|
+
var GlobalResources = require(path_1.default.join(GLOBALS_PATH, '/GlobalResources'));
|
|
42
|
+
var GlobalValues = require(path_1.default.join(GLOBALS_PATH, '/GlobalValues'));
|
|
43
|
+
// Determine profile file name (default is stage)
|
|
44
|
+
var profileName = process.env.CYPRESS_PROFILE || 'stage';
|
|
45
|
+
// Load in chosen profile configuration
|
|
46
|
+
var profileModules = {};
|
|
47
|
+
try {
|
|
48
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
49
|
+
var mod = require(path_1.default.join(PROFILES_PATH, "/".concat(profileName, ".Profile")));
|
|
50
|
+
profileModules = ((_b = (_a = mod === null || mod === void 0 ? void 0 : mod.default) !== null && _a !== void 0 ? _a : mod) !== null && _b !== void 0 ? _b : {});
|
|
51
|
+
}
|
|
52
|
+
catch (e) {
|
|
53
|
+
console.warn("[cypress.config] Could not load profile '".concat(profileName, ".Profile'"), e);
|
|
54
|
+
process.exit(1);
|
|
55
|
+
}
|
|
56
|
+
// NOTE: Order matters (later overrides earlier)
|
|
57
|
+
var sources = [GlobalCredentials, GlobalResources, GlobalValues, profileModules];
|
|
58
|
+
// Split all sources into basic and dependent
|
|
59
|
+
var splits = sources.map(function (source) {
|
|
60
|
+
return (0, splitEnv_1.default)(source);
|
|
61
|
+
});
|
|
62
|
+
// Extract basic and dependent values from splits
|
|
63
|
+
var basicValues = splits.map(function (s) {
|
|
64
|
+
return s.basic;
|
|
65
|
+
});
|
|
66
|
+
var dependentValues = splits.map(function (s) {
|
|
67
|
+
return s.dependent;
|
|
68
|
+
});
|
|
69
|
+
// Merge all of the basics
|
|
70
|
+
var basics = deepmerge_1.default.all(basicValues);
|
|
71
|
+
// Resolve dependencies
|
|
72
|
+
var dependents = (0, resolveDependents_1.default)(dependentValues, basics);
|
|
73
|
+
// Add basics, depends, and profileName into the final env
|
|
74
|
+
var finalEnv = __assign(__assign(__assign({}, basics), dependents), { profileName: profileName });
|
|
75
|
+
var baseUrl = finalEnv.baseURL;
|
|
76
|
+
// Return the configuration object
|
|
77
|
+
return {
|
|
78
|
+
e2e: {
|
|
79
|
+
experimentalOriginDependencies: true,
|
|
80
|
+
baseUrl: baseUrl,
|
|
81
|
+
env: finalEnv,
|
|
82
|
+
},
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
exports.default = genConfiguration;
|
|
86
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../setup/genConfiguration/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+BAA+B;AAC/B,mCAAmC;AACnC,8CAA8C;AAC9C,8CAAwB;AAExB,4BAA4B;AAC5B,wDAAkC;AAElC,iBAAiB;AACjB,gEAA0C;AAC1C,kFAA4D;AAM5D,8BAA8B;AAC9B,IAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAE1C;;;;;GAKG;AACH,IAAM,gBAAgB,GAAG;;IACvB,eAAe;IACf,IAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IACxD,IAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAE1D,gCAAgC;IAChC,IAAM,iBAAiB,GAAqB,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC,CAAC;IACnG,IAAM,eAAe,GAAqB,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC/F,IAAM,YAAY,GAAqB,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;IAEzF,iDAAiD;IACjD,IAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,OAAO,CAAC;IAE3D,uCAAuC;IACvC,IAAI,cAAc,GAAqB,EAAE,CAAC;IAC1C,IAAI,CAAC;QACH,8DAA8D;QAC9D,IAAM,GAAG,GAAG,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAI,WAAW,aAAU,CAAC,CAAC,CAAC;QACzE,cAAc,GAAG,CAAC,MAAA,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,mCAAI,GAAG,mCAAI,EAAE,CAAqB,CAAC;IACnE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,mDAA4C,WAAW,cAAW,EAAE,CAAC,CAAC,CAAC;QACpF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,gDAAgD;IAChD,IAAM,OAAO,GAAuB,CAAC,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;IAEvG,6CAA6C;IAC7C,IAAM,MAAM,GAAe,OAAO,CAAC,GAAG,CAAC,UAAC,MAAM;QAC5C,OAAO,IAAA,kBAAQ,EAAC,MAAM,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,iDAAiD;IACjD,IAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,UAAC,CAAC;QAC/B,OAAO,CAAC,CAAC,KAAK,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,IAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,UAAC,CAAC;QACnC,OAAO,CAAC,CAAC,SAAS,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,0BAA0B;IAC1B,IAAM,MAAM,GAAqB,mBAAS,CAAC,GAAG,CAAmB,WAAW,CAAC,CAAC;IAE9E,uBAAuB;IACvB,IAAM,UAAU,GAAqB,IAAA,2BAAiB,EAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAEhF,0DAA0D;IAC1D,IAAM,QAAQ,kCACT,MAAM,GACN,UAAU,KACb,WAAW,aAAA,GACZ,CAAC;IAEF,IAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAEjC,kCAAkC;IAClC,OAAO;QACL,GAAG,EAAE;YACH,8BAA8B,EAAE,IAAI;YACpC,OAAO,SAAA;YACP,GAAG,EAAE,QAAQ;SACd;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DependentValue.js","sourceRoot":"","sources":["../../../../setup/genConfiguration/types/DependentValue.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GlobalsOrProfile.js","sourceRoot":"","sources":["../../../../setup/genConfiguration/types/GlobalsOrProfile.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type GlobalsOrProfile from './GlobalsOrProfile';
|
|
2
|
+
import type DependentValue from './DependentValue';
|
|
3
|
+
/**
|
|
4
|
+
* Env type where basic and dependent entries are separated
|
|
5
|
+
* @author Gardenia Liu
|
|
6
|
+
*/
|
|
7
|
+
type SplitEnv = {
|
|
8
|
+
basic: GlobalsOrProfile;
|
|
9
|
+
dependent: {
|
|
10
|
+
[k: string]: DependentValue;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
export default SplitEnv;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SplitEnv.js","sourceRoot":"","sources":["../../../../setup/genConfiguration/types/SplitEnv.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
var fs = __importStar(require("fs"));
|
|
40
|
+
var path = __importStar(require("path"));
|
|
41
|
+
/**
|
|
42
|
+
* Generate Cypress configuration based on global credentials,
|
|
43
|
+
* variables, resources, and profiles
|
|
44
|
+
* @author Yuen Ler Chow
|
|
45
|
+
*/
|
|
46
|
+
var genConfiguration_1 = __importDefault(require("./genConfiguration"));
|
|
47
|
+
var genConfigurationFile = function () {
|
|
48
|
+
var root = path.join(__dirname, '../..');
|
|
49
|
+
var outputFile = path.join(root, 'cypress.config.ts');
|
|
50
|
+
var topOfFileComment = '// Auto-generated by dceky - do not edit manually\n';
|
|
51
|
+
// Generate the configuration object
|
|
52
|
+
var config = (0, genConfiguration_1.default)();
|
|
53
|
+
// Format as TypeScript file content
|
|
54
|
+
var configContent = "import { defineConfig } from 'cypress';\n\nexport default defineConfig(\n ".concat(JSON.stringify(config, null, 2), "\n);\n");
|
|
55
|
+
// Write the configuration file directly
|
|
56
|
+
var content = topOfFileComment + configContent;
|
|
57
|
+
fs.writeFileSync(outputFile, content);
|
|
58
|
+
// eslint-disable-next-line no-console
|
|
59
|
+
console.log("Generated Cypress configuration file: ".concat(outputFile));
|
|
60
|
+
return outputFile;
|
|
61
|
+
};
|
|
62
|
+
exports.default = genConfigurationFile;
|
|
63
|
+
//# sourceMappingURL=genConfigurationFile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"genConfigurationFile.js","sourceRoot":"","sources":["../../setup/genConfigurationFile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAyB;AACzB,yCAA6B;AAE7B;;;;GAIG;AACH,wEAAkD;AAElD,IAAM,oBAAoB,GAAG;IAC3B,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE3C,IAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACxD,IAAM,gBAAgB,GAAG,qDAAqD,CAAC;IAE/E,oCAAoC;IACpC,IAAM,MAAM,GAAG,IAAA,0BAAgB,GAAE,CAAC;IAElC,oCAAoC;IACpC,IAAM,aAAa,GAAG,qFAGpB,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,WAElC,CAAC;IAEA,wCAAwC;IACxC,IAAM,OAAO,GAAG,gBAAgB,GAAG,aAAa,CAAC;IAEjD,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAEtC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,gDAAyC,UAAU,CAAE,CAAC,CAAC;IAEnE,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,kBAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
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
|
+
var fs_1 = __importDefault(require("fs"));
|
|
7
|
+
var path_1 = __importDefault(require("path"));
|
|
8
|
+
/**
|
|
9
|
+
* Generate the dynamic configuration file
|
|
10
|
+
*/
|
|
11
|
+
var genDynamicConfigFile = function () {
|
|
12
|
+
var root = path_1.default.join(__dirname, '../..');
|
|
13
|
+
var outputFile = path_1.default.join(root, 'cypress.config.ts');
|
|
14
|
+
// Create the dynamic configuration file
|
|
15
|
+
var dynamicConfigFile = [
|
|
16
|
+
'// Auto-generated by dceky - do not edit manually',
|
|
17
|
+
'',
|
|
18
|
+
'import { genConfiguration } from \'dceky\';',
|
|
19
|
+
'',
|
|
20
|
+
'export default genConfiguration();',
|
|
21
|
+
'',
|
|
22
|
+
].join('\n');
|
|
23
|
+
// Write the configuration file directly
|
|
24
|
+
fs_1.default.writeFileSync(outputFile, dynamicConfigFile, 'utf8');
|
|
25
|
+
return outputFile;
|
|
26
|
+
};
|
|
27
|
+
exports.default = genDynamicConfigFile;
|
|
28
|
+
//# sourceMappingURL=genDynamicConfigFile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"genDynamicConfigFile.js","sourceRoot":"","sources":["../../setup/genDynamicConfigFile.ts"],"names":[],"mappings":";;;;;AAAA,0CAAoB;AACpB,8CAAwB;AAExB;;GAEG;AACH,IAAM,oBAAoB,GAAG;IAC3B,IAAM,IAAI,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE3C,IAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IAExD,wCAAwC;IACxC,IAAM,iBAAiB,GAAG;QACxB,mDAAmD;QACnD,EAAE;QACF,6CAA6C;QAC7C,EAAE;QACF,oCAAoC;QACpC,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,wCAAwC;IACxC,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAExD,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,kBAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
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
|
+
var genCommandImportFile_1 = __importDefault(require("./genCommandImportFile"));
|
|
7
|
+
var genDynamicConfigFile_1 = __importDefault(require("./genDynamicConfigFile"));
|
|
8
|
+
var addToGitIgnore_1 = __importDefault(require("./addToGitIgnore"));
|
|
9
|
+
var setupCypressDependencies_1 = __importDefault(require("./setupCypressDependencies"));
|
|
10
|
+
var checkRequiredFiles_1 = __importDefault(require("./checkRequiredFiles"));
|
|
11
|
+
(0, checkRequiredFiles_1.default)();
|
|
12
|
+
(0, genCommandImportFile_1.default)();
|
|
13
|
+
(0, genDynamicConfigFile_1.default)();
|
|
14
|
+
(0, addToGitIgnore_1.default)();
|
|
15
|
+
(0, setupCypressDependencies_1.default)();
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../setup/index.ts"],"names":[],"mappings":";;;;;AAAA,gFAA0D;AAC1D,gFAA0D;AAC1D,oEAA8C;AAC9C,wFAAkE;AAClE,4EAAsD;AAEtD,IAAA,4BAAkB,GAAE,CAAC;AACrB,IAAA,8BAAoB,GAAE,CAAC;AACvB,IAAA,8BAAoB,GAAE,CAAC;AACvB,IAAA,wBAAc,GAAE,CAAC;AACjB,IAAA,kCAAwB,GAAE,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
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
|
+
/* eslint-disable no-console */
|
|
7
|
+
var path_1 = __importDefault(require("path"));
|
|
8
|
+
/**
|
|
9
|
+
* Ensure required packages exist in the consumer repo
|
|
10
|
+
* @author Yuen Ler Chow
|
|
11
|
+
*/
|
|
12
|
+
var setupCypressDependencies = function () {
|
|
13
|
+
var root = path_1.default.join(__dirname, '../..');
|
|
14
|
+
var requiredPkgs = [
|
|
15
|
+
'cypress-parallel',
|
|
16
|
+
'cypress-multi-reporters',
|
|
17
|
+
'mochawesome',
|
|
18
|
+
'mochawesome-merge',
|
|
19
|
+
'mochawesome-report-generator',
|
|
20
|
+
];
|
|
21
|
+
var missingPkgs = requiredPkgs.filter(function (pkg) {
|
|
22
|
+
try {
|
|
23
|
+
// Resolve from the consumer project root
|
|
24
|
+
require.resolve(pkg, { paths: [root] });
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
catch (_a) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
if (missingPkgs.length > 0) {
|
|
32
|
+
var installCmd = "npm i -D ".concat(missingPkgs.join(' '));
|
|
33
|
+
console.error("\nMissing required devDependencies in this project: ".concat(missingPkgs.join(', ')));
|
|
34
|
+
console.error('Run the following command, then try again:');
|
|
35
|
+
console.error("\n".concat(installCmd, "\n"));
|
|
36
|
+
process.exit(1);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
exports.default = setupCypressDependencies;
|
|
40
|
+
//# sourceMappingURL=setupCypressDependencies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setupCypressDependencies.js","sourceRoot":"","sources":["../../setup/setupCypressDependencies.ts"],"names":[],"mappings":";;;;;AAAA,+BAA+B;AAC/B,8CAAwB;AAExB;;;GAGG;AACH,IAAM,wBAAwB,GAAG;IAC/B,IAAM,IAAI,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE3C,IAAM,YAAY,GAAG;QACnB,kBAAkB;QAClB,yBAAyB;QACzB,aAAa;QACb,mBAAmB;QACnB,8BAA8B;KAC/B,CAAC;IAEF,IAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,UAAC,GAAG;QAC1C,IAAI,CAAC;YACH,yCAAyC;YACzC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,WAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,IAAM,UAAU,GAAG,mBAAY,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAE,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,8DAAuD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAE,CAAC,CAAC;QAC/F,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC5D,OAAO,CAAC,KAAK,CAAC,YAAK,UAAU,OAAI,CAAC,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC;AAEF,kBAAe,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace Cypress {
|
|
3
|
+
interface Chainable {
|
|
4
|
+
/**
|
|
5
|
+
* Assert that an element does not have a specific className
|
|
6
|
+
* @author Yuen Ler Chow
|
|
7
|
+
* @param opts object containing all arguments
|
|
8
|
+
* @param opts.item the css selector for finding the element
|
|
9
|
+
* @param opts.className the className to check for
|
|
10
|
+
* @return Cypress chainable containing the element that was checked
|
|
11
|
+
*/
|
|
12
|
+
assertDoesNotHaveClass(opts: {
|
|
13
|
+
item: string;
|
|
14
|
+
className: string;
|
|
15
|
+
}): Chainable<JQuery<HTMLElement>>;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
declare const assertDoesNotHaveClass: () => void;
|
|
20
|
+
export default assertDoesNotHaveClass;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var assertDoesNotHaveClass = function () {
|
|
8
|
+
Cypress.Commands.add('assertDoesNotHaveClass', function (opts) {
|
|
9
|
+
cy.log("Assert ".concat(opts.item, " does not have class ").concat(opts.className));
|
|
10
|
+
return cy.get(opts.item).should('not.have.class', opts.className);
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
/*----------------------------------------*/
|
|
14
|
+
/* --------------- Export --------------- */
|
|
15
|
+
/*----------------------------------------*/
|
|
16
|
+
exports.default = assertDoesNotHaveClass;
|
|
17
|
+
//# sourceMappingURL=assertDoesNotHaveClass.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assertDoesNotHaveClass.js","sourceRoot":"","sources":["../../../src/commands/assertDoesNotHaveClass.ts"],"names":[],"mappings":";AAAA,iCAAiC;;AA2BjC,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,IAAM,sBAAsB,GAAG;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAClB,wBAAwB,EACxB,UACE,IAGC;QAED,EAAE,CAAC,GAAG,CAAC,iBAAU,IAAI,CAAC,IAAI,kCAAwB,IAAI,CAAC,SAAS,CAAE,CAAC,CAAC;QACpE,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACpE,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace Cypress {
|
|
3
|
+
interface Chainable {
|
|
4
|
+
/**
|
|
5
|
+
* Assert that an element has a specific className
|
|
6
|
+
* @author Yuen Ler Chow
|
|
7
|
+
* @param opts object containing all arguments
|
|
8
|
+
* @param opts.item the css selector for finding the element
|
|
9
|
+
* @param opts.className the className to check for
|
|
10
|
+
* @return Cypress chainable containing the element that was checked
|
|
11
|
+
*/
|
|
12
|
+
assertHasClass(opts: {
|
|
13
|
+
item: string;
|
|
14
|
+
className: string;
|
|
15
|
+
}): Chainable<JQuery<HTMLElement>>;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
declare const assertHasClass: () => void;
|
|
20
|
+
export default assertHasClass;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var assertHasClass = function () {
|
|
8
|
+
Cypress.Commands.add('assertHasClass', function (opts) {
|
|
9
|
+
cy.log("Assert ".concat(opts.item, " has class ").concat(opts.className));
|
|
10
|
+
return cy.get(opts.item).should('have.class', opts.className);
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
/*----------------------------------------*/
|
|
14
|
+
/* --------------- Export --------------- */
|
|
15
|
+
/*----------------------------------------*/
|
|
16
|
+
exports.default = assertHasClass;
|
|
17
|
+
//# sourceMappingURL=assertHasClass.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assertHasClass.js","sourceRoot":"","sources":["../../../src/commands/assertHasClass.ts"],"names":[],"mappings":";AAAA,iCAAiC;;AA2BjC,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,IAAM,cAAc,GAAG;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAClB,gBAAgB,EAChB,UACE,IAGC;QAED,EAAE,CAAC,GAAG,CAAC,iBAAU,IAAI,CAAC,IAAI,wBAAc,IAAI,CAAC,SAAS,CAAE,CAAC,CAAC;QAC1D,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace Cypress {
|
|
3
|
+
interface Chainable {
|
|
4
|
+
/**
|
|
5
|
+
* Assert a certain number of elements
|
|
6
|
+
* @author Yuen Ler Chow
|
|
7
|
+
* @param opts object containing all arguments
|
|
8
|
+
* @param opts.item a CSS selector corresponding to the item
|
|
9
|
+
* @param opts.num the precise number of elements expected
|
|
10
|
+
*/
|
|
11
|
+
assertNumElements(opts: {
|
|
12
|
+
item: string;
|
|
13
|
+
num: number;
|
|
14
|
+
}): Chainable<Element>;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
declare const assertNumElements: () => void;
|
|
19
|
+
export default assertNumElements;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var assertNumElements = function () {
|
|
8
|
+
Cypress.Commands.add('assertNumElements', function (opts) {
|
|
9
|
+
cy.log("Assert ".concat(opts.num, " elements match ").concat(opts.item));
|
|
10
|
+
cy.get(opts.item).should('have.length', opts.num);
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
/*----------------------------------------*/
|
|
14
|
+
/* --------------- Export --------------- */
|
|
15
|
+
/*----------------------------------------*/
|
|
16
|
+
exports.default = assertNumElements;
|
|
17
|
+
//# sourceMappingURL=assertNumElements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assertNumElements.js","sourceRoot":"","sources":["../../../src/commands/assertNumElements.ts"],"names":[],"mappings":";AAAA,iCAAiC;;AA0BjC,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,IAAM,iBAAiB,GAAG;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAClB,mBAAmB,EACnB,UACE,IAGC;QAED,EAAE,CAAC,GAAG,CAAC,iBAAU,IAAI,CAAC,GAAG,6BAAmB,IAAI,CAAC,IAAI,CAAE,CAAC,CAAC;QACzD,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace Cypress {
|
|
3
|
+
interface Chainable {
|
|
4
|
+
/**
|
|
5
|
+
* Obtain data from a class attribute that starts with a specific prefix
|
|
6
|
+
* and return it
|
|
7
|
+
* @author Allison Zhang
|
|
8
|
+
* @param selector the css selector for finding the element
|
|
9
|
+
* @param classPrefix the prefix to look for in the class attribute
|
|
10
|
+
* @returns the extracted data
|
|
11
|
+
* @example cy.extractDataFromClass('.item', 'data-').then((data) => { ... })
|
|
12
|
+
*/
|
|
13
|
+
extractDataFromClass(selector: string, classPrefix: string): Chainable<string[]>;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
declare const extractDataFromClass: () => void;
|
|
18
|
+
export default extractDataFromClass;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var extractDataFromClass = function () {
|
|
8
|
+
Cypress.Commands.add('extractDataFromClass', function (selector, classPrefix) {
|
|
9
|
+
return (cy
|
|
10
|
+
.get(selector)
|
|
11
|
+
.invoke('attr', 'class')
|
|
12
|
+
.then(function (classAttr) {
|
|
13
|
+
var classList = classAttr.split(' ');
|
|
14
|
+
var data = classList
|
|
15
|
+
.filter(function (className) { return className.startsWith(classPrefix); })
|
|
16
|
+
.map(function (className) { return className.replace(classPrefix, ''); });
|
|
17
|
+
return data;
|
|
18
|
+
}));
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
/*----------------------------------------*/
|
|
22
|
+
/* --------------- Export --------------- */
|
|
23
|
+
/*----------------------------------------*/
|
|
24
|
+
exports.default = extractDataFromClass;
|
|
25
|
+
//# sourceMappingURL=extractDataFromClass.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extractDataFromClass.js","sourceRoot":"","sources":["../../../src/commands/extractDataFromClass.ts"],"names":[],"mappings":";AAAA,iCAAiC;;AA0BjC,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,IAAM,oBAAoB,GAAG;IAC3B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,sBAAsB,EAAE,UAAC,QAAgB,EAAE,WAAmB;QACjF,OAAO,CACL,EAAE;aACC,GAAG,CAAC,QAAQ,CAAC;aACb,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;aACvB,IAAI,CAAC,UAAC,SAAiB;YACtB,IAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvC,IAAM,IAAI,GAAG,SAAS;iBACnB,MAAM,CAAC,UAAC,SAAS,IAAO,OAAO,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;iBACpE,GAAG,CAAC,UAAC,SAAS,IAAO,OAAO,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtE,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CACL,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace Cypress {
|
|
3
|
+
interface Chainable {
|
|
4
|
+
/**
|
|
5
|
+
* Obtain data from a class attribute that starts with a specific prefix
|
|
6
|
+
* and with specific contents, and return it
|
|
7
|
+
* @author Allison Zhang
|
|
8
|
+
* @param contents the contents of the element to find
|
|
9
|
+
* @param selector the css selector for finding the element
|
|
10
|
+
* @param classPrefix the prefix to look for in the class attribute
|
|
11
|
+
* @returns the extracted data
|
|
12
|
+
* @example cy.extractDataFromClassByContents('Submit', '.button', 'btn-').then((data) => { ... })
|
|
13
|
+
*/
|
|
14
|
+
extractDataFromClassByContents(contents: string, selector: string, classPrefix: string): Chainable<string[]>;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
declare const extractDataFromClassByContents: () => void;
|
|
19
|
+
export default extractDataFromClassByContents;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var extractDataFromClassByContents = function () {
|
|
8
|
+
Cypress.Commands.add('extractDataFromClassByContents', function (contents, selector, classPrefix) {
|
|
9
|
+
return (cy
|
|
10
|
+
.get(selector)
|
|
11
|
+
.contains(contents)
|
|
12
|
+
.invoke('attr', 'class')
|
|
13
|
+
.then(function (classAttr) {
|
|
14
|
+
var classList = classAttr.split(' ');
|
|
15
|
+
var data = classList
|
|
16
|
+
.filter(function (className) { return className.startsWith(classPrefix); })
|
|
17
|
+
.map(function (className) { return className.replace(classPrefix, ''); });
|
|
18
|
+
return data;
|
|
19
|
+
}));
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
/*----------------------------------------*/
|
|
23
|
+
/* --------------- Export --------------- */
|
|
24
|
+
/*----------------------------------------*/
|
|
25
|
+
exports.default = extractDataFromClassByContents;
|
|
26
|
+
//# sourceMappingURL=extractDataFromClassByContents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extractDataFromClassByContents.js","sourceRoot":"","sources":["../../../src/commands/extractDataFromClassByContents.ts"],"names":[],"mappings":";AAAA,iCAAiC;;AA4BjC,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,IAAM,8BAA8B,GAAG;IACrC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,gCAAgC,EAAE,UAAC,QAAgB,EAAE,QAAgB,EAAE,WAAmB;QAC7G,OAAO,CACL,EAAE;aACC,GAAG,CAAC,QAAQ,CAAC;aACb,QAAQ,CAAC,QAAQ,CAAC;aAClB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;aACvB,IAAI,CAAC,UAAC,SAAiB;YACtB,IAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvC,IAAM,IAAI,GAAG,SAAS;iBACnB,MAAM,CAAC,UAAC,SAAS,IAAO,OAAO,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;iBACpE,GAAG,CAAC,UAAC,SAAS,IAAO,OAAO,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtE,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CACL,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace Cypress {
|
|
3
|
+
interface Chainable {
|
|
4
|
+
/**
|
|
5
|
+
* Obtain JSON data from a request and return it.
|
|
6
|
+
* @author Allison Zhang
|
|
7
|
+
* @param url the URL to fetch the JSON data from
|
|
8
|
+
* @returns the JSON data
|
|
9
|
+
* @example cy.getJSON('https://api.example.com/data').then((data) => { ... })
|
|
10
|
+
*/
|
|
11
|
+
getJSON(url: string): Chainable<any>;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
declare const getJSON: () => void;
|
|
16
|
+
export default getJSON;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var getJSON = function () {
|
|
8
|
+
Cypress.Commands.add('getJSON', function (url) {
|
|
9
|
+
return (cy
|
|
10
|
+
.request(url)
|
|
11
|
+
.its('body')
|
|
12
|
+
.then(function (body) {
|
|
13
|
+
return body;
|
|
14
|
+
}));
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
/*----------------------------------------*/
|
|
18
|
+
/* --------------- Export --------------- */
|
|
19
|
+
/*----------------------------------------*/
|
|
20
|
+
exports.default = getJSON;
|
|
21
|
+
//# sourceMappingURL=getJSON.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getJSON.js","sourceRoot":"","sources":["../../../src/commands/getJSON.ts"],"names":[],"mappings":";AAAA,iCAAiC;;AAuBjC,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,IAAM,OAAO,GAAG;IACd,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,UAAC,GAAW;QAC1C,OAAO,CACL,EAAE;aACC,OAAO,CAAC,GAAG,CAAC;aACZ,GAAG,CAAC,MAAM,CAAC;aACX,IAAI,CAAC,UAAC,IAAI;YACT,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CACL,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,OAAO,CAAC"}
|