dceky 1.0.0-beta.6 → 1.0.3
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 +47 -0
- package/lib/setup/addToGitIgnore.js.map +1 -0
- package/lib/setup/checkRequiredFiles.d.ts +6 -0
- package/lib/setup/checkRequiredFiles.js +59 -0
- package/lib/setup/checkRequiredFiles.js.map +1 -0
- package/lib/setup/genCommandImportFile.d.ts +7 -0
- package/lib/setup/genCommandImportFile.js +67 -0
- package/lib/setup/genCommandImportFile.js.map +1 -0
- package/lib/setup/genDynamicConfigFile.d.ts +5 -0
- package/lib/setup/genDynamicConfigFile.js +29 -0
- package/lib/setup/genDynamicConfigFile.js.map +1 -0
- package/lib/setup/helpers/getRootPath.d.ts +7 -0
- package/lib/setup/helpers/getRootPath.js +17 -0
- package/lib/setup/helpers/getRootPath.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/getRootPath.d.ts +7 -0
- package/lib/src/genConfiguration/helpers/getRootPath.js +17 -0
- package/lib/src/genConfiguration/helpers/getRootPath.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 +89 -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/getRootPath.d.ts +7 -0
- package/lib/start/helpers/getRootPath.js +17 -0
- package/lib/start/helpers/getRootPath.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 +140 -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 +48 -0
- package/setup/checkRequiredFiles.ts +63 -0
- package/setup/genCommandImportFile.ts +76 -0
- package/setup/genDynamicConfigFile.ts +29 -0
- package/setup/helpers/getRootPath.ts +13 -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/getRootPath.ts +13 -0
- package/src/genConfiguration/helpers/resolveDependents.ts +46 -0
- package/src/genConfiguration/helpers/splitEnv.ts +30 -0
- package/src/genConfiguration/index.ts +95 -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 -17
- 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/getRootPath.ts +13 -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 +164 -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 -10
- package/lib/init.js.map +0 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var runScript = function () {
|
|
8
|
+
Cypress.Commands.add('runScript', function (script) {
|
|
9
|
+
cy.log('Running script');
|
|
10
|
+
return cy.window().then(function (win) {
|
|
11
|
+
var result = win.eval(script);
|
|
12
|
+
return cy.wrap(result);
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
};
|
|
16
|
+
/*----------------------------------------*/
|
|
17
|
+
/* --------------- Export --------------- */
|
|
18
|
+
/*----------------------------------------*/
|
|
19
|
+
exports.default = runScript;
|
|
20
|
+
//# sourceMappingURL=runScript.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runScript.js","sourceRoot":"","sources":["../../../src/commands/runScript.ts"],"names":[],"mappings":";AAAA,iCAAiC;;AAoBjC,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,IAAM,SAAS,GAAG;IAChB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAClB,WAAW,EACX,UACE,MAAc;QAEd,EAAE,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACzB,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,UAAC,GAAG;YAC1B,IAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace Cypress {
|
|
3
|
+
interface Chainable {
|
|
4
|
+
/**
|
|
5
|
+
* Type text into an element. This function first removes the previous text in the element
|
|
6
|
+
* @author Yuen Ler Chow
|
|
7
|
+
* @param opts object containing all arguments
|
|
8
|
+
* @param opts.item the CSS selector of interest
|
|
9
|
+
* @param opts.text the text to type
|
|
10
|
+
* @param [opts.pressEnter] if true, after typing into the text field, simulate pressing enter
|
|
11
|
+
* @param [opts.append] if true, append the text to the end of the existing text in the element instead of replacing it
|
|
12
|
+
* @return Cypress chainable containing the input element that text was typed into
|
|
13
|
+
*/
|
|
14
|
+
typeInto(opts: {
|
|
15
|
+
item: string;
|
|
16
|
+
text: string;
|
|
17
|
+
pressEnter?: boolean;
|
|
18
|
+
append?: boolean;
|
|
19
|
+
}): Chainable<Element>;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
declare const typeInto: () => void;
|
|
24
|
+
export default typeInto;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var typeInto = function () {
|
|
8
|
+
Cypress.Commands.add('typeInto', function (opts) {
|
|
9
|
+
var item = opts.item, text = opts.text, pressEnter = opts.pressEnter, append = opts.append;
|
|
10
|
+
// Check if the text contains an enter key press
|
|
11
|
+
var enterAtEndOfText = text.charAt(text.length - 1) === '\n';
|
|
12
|
+
var willPressEnter = pressEnter || enterAtEndOfText;
|
|
13
|
+
var action = append ? 'Append' : 'Type';
|
|
14
|
+
var enterSuffix = willPressEnter ? ' and then press enter' : '';
|
|
15
|
+
cy.log("".concat(action, " \"").concat(text, "\" into ").concat(item).concat(enterSuffix));
|
|
16
|
+
// Type the text without a trailing enter if there was one
|
|
17
|
+
var textWithoutTrailingEnter = (enterAtEndOfText
|
|
18
|
+
? text.substring(0, text.length - 1)
|
|
19
|
+
: text);
|
|
20
|
+
if (append) {
|
|
21
|
+
cy
|
|
22
|
+
.get(item)
|
|
23
|
+
.type(textWithoutTrailingEnter);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
cy
|
|
27
|
+
.get(item)
|
|
28
|
+
.clear()
|
|
29
|
+
.type(textWithoutTrailingEnter);
|
|
30
|
+
}
|
|
31
|
+
// Press enter if explicitly requested or if text ended with newline
|
|
32
|
+
if (willPressEnter) {
|
|
33
|
+
cy.get(item).type('{enter}');
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
/*----------------------------------------*/
|
|
38
|
+
/* --------------- Export --------------- */
|
|
39
|
+
/*----------------------------------------*/
|
|
40
|
+
exports.default = typeInto;
|
|
41
|
+
//# sourceMappingURL=typeInto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeInto.js","sourceRoot":"","sources":["../../../src/commands/typeInto.ts"],"names":[],"mappings":";AAAA,iCAAiC;;AA+BjC,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,IAAM,QAAQ,GAAG;IACf,OAAO,CAAC,QAAQ,CAAC,GAAG,CAClB,UAAU,EACV,UACE,IAKC;QAGC,IAAA,IAAI,GACF,IAAI,KADF,EAAE,IAAI,GACR,IAAI,KADI,EAAE,UAAU,GACpB,IAAI,WADgB,EAAE,MAAM,GAC5B,IAAI,OADwB,CACvB;QACT,gDAAgD;QAChD,IAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;QAC/D,IAAM,cAAc,GAAG,UAAU,IAAI,gBAAgB,CAAC;QAEtD,IAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;QAC1C,IAAM,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,EAAE,CAAC,GAAG,CAAC,UAAG,MAAM,gBAAK,IAAI,qBAAU,IAAI,SAAG,WAAW,CAAE,CAAC,CAAC;QAEzD,0DAA0D;QAC1D,IAAM,wBAAwB,GAAG,CAC/B,gBAAgB;YACd,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YACpC,CAAC,CAAC,IAAI,CACT,CAAC;QAEF,IAAI,MAAM,EAAE,CAAC;YACX,EAAE;iBACC,GAAG,CAAC,IAAI,CAAC;iBACT,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,EAAE;iBACC,GAAG,CAAC,IAAI,CAAC;iBACT,KAAK,EAAE;iBACP,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACpC,CAAC;QAED,oEAAoE;QACpE,IAAI,cAAc,EAAE,CAAC;YACnB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace Cypress {
|
|
3
|
+
interface Chainable {
|
|
4
|
+
/**
|
|
5
|
+
* Makes a GET request to Canvas API endpoint
|
|
6
|
+
* @author Yuen Ler Chow
|
|
7
|
+
* @param opts object containing all arguments
|
|
8
|
+
* @param opts.path The API path (e.g., '/courses', '/users/self')
|
|
9
|
+
* @param opts.accessToken The Canvas access token
|
|
10
|
+
* @return Cypress chainable containing the Canvas API response body
|
|
11
|
+
*/
|
|
12
|
+
visitCanvasGETEndpoint(opts: {
|
|
13
|
+
path: string;
|
|
14
|
+
accessToken: string;
|
|
15
|
+
}): Chainable<any>;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
declare const visitCanvasGETEndpoint: () => void;
|
|
20
|
+
export default visitCanvasGETEndpoint;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var visitCanvasGETEndpoint = function () {
|
|
8
|
+
Cypress.Commands.add('visitCanvasGETEndpoint', function (opts) {
|
|
9
|
+
cy.log('Visiting Canvas GET endpoint');
|
|
10
|
+
var path = opts.path, accessToken = opts.accessToken;
|
|
11
|
+
cy.log("Canvas API: ".concat(path));
|
|
12
|
+
return cy.request({
|
|
13
|
+
method: 'GET',
|
|
14
|
+
url: "https://canvas.harvard.edu/api/v1".concat(path),
|
|
15
|
+
qs: {
|
|
16
|
+
per_page: 200,
|
|
17
|
+
access_token: accessToken,
|
|
18
|
+
},
|
|
19
|
+
}).its('body');
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
/*----------------------------------------*/
|
|
23
|
+
/* --------------- Export --------------- */
|
|
24
|
+
/*----------------------------------------*/
|
|
25
|
+
exports.default = visitCanvasGETEndpoint;
|
|
26
|
+
//# sourceMappingURL=visitCanvasGETEndpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visitCanvasGETEndpoint.js","sourceRoot":"","sources":["../../../src/commands/visitCanvasGETEndpoint.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,8BAA8B,CAAC,CAAC;QAC/B,IAAA,IAAI,GAAkB,IAAI,KAAtB,EAAE,WAAW,GAAK,IAAI,YAAT,CAAU;QAEnC,EAAE,CAAC,GAAG,CAAC,sBAAe,IAAI,CAAE,CAAC,CAAC;QAC9B,OAAO,EAAE,CAAC,OAAO,CAAC;YAChB,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,2CAAoC,IAAI,CAAE;YAC/C,EAAE,EAAE;gBACF,QAAQ,EAAE,GAAG;gBACb,YAAY,EAAE,WAAW;aAC1B;SACF,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjB,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace Cypress {
|
|
3
|
+
interface Chainable {
|
|
4
|
+
/**
|
|
5
|
+
* Wait for an element to be visible
|
|
6
|
+
* @author Yuen Ler Chow
|
|
7
|
+
* @param item the CSS selector of interest
|
|
8
|
+
* @param [timeoutSec=10] the number of seconds to wait before timing out
|
|
9
|
+
* @return Cypress chainable containing the visible element
|
|
10
|
+
*/
|
|
11
|
+
waitForElementVisible(item: string, timeoutSec?: number): Chainable<JQuery<HTMLElement>>;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
declare const waitForElementVisible: () => void;
|
|
16
|
+
export default waitForElementVisible;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/// <reference types="cypress" />
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/*----------------------------------------*/
|
|
5
|
+
/* --------------- Command -------------- */
|
|
6
|
+
/*----------------------------------------*/
|
|
7
|
+
var waitForElementVisible = function () {
|
|
8
|
+
Cypress.Commands.add('waitForElementVisible', function (item, timeoutSec) {
|
|
9
|
+
cy.log('Waiting for element to be visible');
|
|
10
|
+
var timeoutMs = (timeoutSec || 10) * 1000;
|
|
11
|
+
cy.log("Wait for ".concat(item, " to be visible"));
|
|
12
|
+
return cy.get(item, { timeout: timeoutMs }).should('be.visible');
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
/*----------------------------------------*/
|
|
16
|
+
/* --------------- Export --------------- */
|
|
17
|
+
/*----------------------------------------*/
|
|
18
|
+
exports.default = waitForElementVisible;
|
|
19
|
+
//# sourceMappingURL=waitForElementVisible.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"waitForElementVisible.js","sourceRoot":"","sources":["../../../src/commands/waitForElementVisible.ts"],"names":[],"mappings":";AAAA,iCAAiC;;AAwBjC,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,IAAM,qBAAqB,GAAG;IAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAClB,uBAAuB,EACvB,UACE,IAAY,EACZ,UAAmB;QAEnB,EAAE,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QAE5C,IAAM,SAAS,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QAC5C,EAAE,CAAC,GAAG,CAAC,mBAAY,IAAI,mBAAgB,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACnE,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAE5C,kBAAe,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
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 path_1 = __importDefault(require("path"));
|
|
7
|
+
/**
|
|
8
|
+
* Get the root path of the project
|
|
9
|
+
* @author Yuen Ler Chow
|
|
10
|
+
* @returns the root path of the project
|
|
11
|
+
*/
|
|
12
|
+
var getRootPath = function () {
|
|
13
|
+
var root = path_1.default.join(__dirname, '../../../../../../');
|
|
14
|
+
return root;
|
|
15
|
+
};
|
|
16
|
+
exports.default = getRootPath;
|
|
17
|
+
//# sourceMappingURL=getRootPath.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRootPath.js","sourceRoot":"","sources":["../../../../src/genConfiguration/helpers/getRootPath.ts"],"names":[],"mappings":";;;;;AAAA,8CAAwB;AAExB;;;;GAIG;AACH,IAAM,WAAW,GAAG;IAClB,IAAM,IAAI,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;IACxD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,kBAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type GlobalsOrProfile from '../types/GlobalsOrProfile';
|
|
2
|
+
import type DependentValue from '../types/DependentValue';
|
|
3
|
+
/**
|
|
4
|
+
* Resolve all dependent values using already-merged basics.
|
|
5
|
+
* @author Gardenia Liu
|
|
6
|
+
* @param dependentMaps with dependencies on basics
|
|
7
|
+
* @param basics entries
|
|
8
|
+
* @returns env with all dependent values resolved
|
|
9
|
+
*/
|
|
10
|
+
declare const resolveDependents: (dependentMaps: {
|
|
11
|
+
[k: string]: DependentValue;
|
|
12
|
+
}[], basics: GlobalsOrProfile) => GlobalsOrProfile;
|
|
13
|
+
export default resolveDependents;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
+
t[p] = s[p];
|
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
+
t[p[i]] = s[p[i]];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
/**
|
|
15
|
+
* Resolve all dependent values using already-merged basics.
|
|
16
|
+
* @author Gardenia Liu
|
|
17
|
+
* @param dependentMaps with dependencies on basics
|
|
18
|
+
* @param basics entries
|
|
19
|
+
* @returns env with all dependent values resolved
|
|
20
|
+
*/
|
|
21
|
+
var resolveDependents = function (dependentMaps, basics) {
|
|
22
|
+
var resolved = {};
|
|
23
|
+
// Loop through all of the dependency maps
|
|
24
|
+
dependentMaps.forEach(function (depMap) {
|
|
25
|
+
// Loop through all entries within dependency map
|
|
26
|
+
Object.entries(depMap).forEach(function (_a) {
|
|
27
|
+
var k = _a[0], depVal = _a[1];
|
|
28
|
+
// Get basic selector the value depends on
|
|
29
|
+
var selector = basics[depVal.dependsOn];
|
|
30
|
+
// Create table of values selector can be
|
|
31
|
+
var _b = depVal, dependsOn = _b.dependsOn, table = __rest(_b, ["dependsOn"]);
|
|
32
|
+
// Get the selector's picked value
|
|
33
|
+
var picked = table[selector];
|
|
34
|
+
if (picked !== undefined) {
|
|
35
|
+
resolved[k] = picked;
|
|
36
|
+
}
|
|
37
|
+
else if ('default' in table) {
|
|
38
|
+
resolved[k] = table.default;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
// eslint-disable-next-line max-len
|
|
42
|
+
console.warn("[cypress.config] Could not resolve ".concat(k, ", dependsOn=").concat(dependsOn, ", selector=").concat(String(selector)));
|
|
43
|
+
process.exit(1);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
return resolved;
|
|
48
|
+
};
|
|
49
|
+
exports.default = resolveDependents;
|
|
50
|
+
//# sourceMappingURL=resolveDependents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveDependents.js","sourceRoot":"","sources":["../../../../src/genConfiguration/helpers/resolveDependents.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAIA;;;;;;GAMG;AACH,IAAM,iBAAiB,GAAG,UACxB,aAAgD,EAChD,MAAwB;IAExB,IAAM,QAAQ,GAAqB,EAAE,CAAC;IAEtC,0CAA0C;IAC1C,aAAa,CAAC,OAAO,CAAC,UAAC,MAAM;QAC3B,iDAAiD;QACjD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,EAAW;gBAAV,CAAC,QAAA,EAAE,MAAM,QAAA;YACxC,0CAA0C;YAC1C,IAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAE1C,yCAAyC;YACzC,IAAM,KAA0B,MAAkC,EAA1D,SAAS,eAAA,EAAK,KAAK,cAArB,aAAuB,CAAqC,CAAC;YAEnE,kCAAkC;YAClC,IAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;YAE/B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;YACvB,CAAC;iBAAM,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC9B,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,mCAAmC;gBACnC,OAAO,CAAC,IAAI,CAAC,6CAAsC,CAAC,yBAAe,SAAS,wBAAc,MAAM,CAAC,QAAQ,CAAC,CAAE,CAAC,CAAC;gBAC9G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type GlobalsOrProfile from '../types/GlobalsOrProfile';
|
|
2
|
+
import type SplitEnv from '../types/SplitEnv';
|
|
3
|
+
/**
|
|
4
|
+
* Split one map into basic and dependent values
|
|
5
|
+
* @author Gardenia Liu
|
|
6
|
+
* @param map to split
|
|
7
|
+
* @returns split basic and dependent values map
|
|
8
|
+
*/
|
|
9
|
+
declare const splitEnv: (map: GlobalsOrProfile) => SplitEnv;
|
|
10
|
+
export default splitEnv;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/**
|
|
4
|
+
* Split one map into basic and dependent values
|
|
5
|
+
* @author Gardenia Liu
|
|
6
|
+
* @param map to split
|
|
7
|
+
* @returns split basic and dependent values map
|
|
8
|
+
*/
|
|
9
|
+
var splitEnv = function (map) {
|
|
10
|
+
var basic = {};
|
|
11
|
+
var dependent = {};
|
|
12
|
+
Object.entries(map).forEach(function (_a) {
|
|
13
|
+
var k = _a[0], v = _a[1];
|
|
14
|
+
// If entry has dependsOn relationship, add it to dependent dictionary
|
|
15
|
+
if (typeof v === 'object' && 'dependsOn' in v) {
|
|
16
|
+
dependent[k] = v;
|
|
17
|
+
// Otherwise, add it to basic dictionary
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
basic[k] = v;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
// Returns separated basic and dependent values
|
|
24
|
+
return { basic: basic, dependent: dependent };
|
|
25
|
+
};
|
|
26
|
+
exports.default = splitEnv;
|
|
27
|
+
//# sourceMappingURL=splitEnv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"splitEnv.js","sourceRoot":"","sources":["../../../../src/genConfiguration/helpers/splitEnv.ts"],"names":[],"mappings":";;AAKA;;;;;GAKG;AACH,IAAM,QAAQ,GAAG,UAAC,GAAqB;IACrC,IAAM,KAAK,GAAqB,EAAE,CAAC;IACnC,IAAM,SAAS,GAAoC,EAAE,CAAC;IAEtD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,EAAM;YAAL,CAAC,QAAA,EAAE,CAAC,QAAA;QAChC,sEAAsE;QACtE,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YAC9C,SAAS,CAAC,CAAC,CAAC,GAAG,CAAmB,CAAC;YACrC,wCAAwC;QACxC,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,+CAA+C;IAC/C,OAAO,EAAE,KAAK,OAAA,EAAE,SAAS,WAAA,EAAE,CAAC;AAC9B,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Generate Cypress configuration based on global credentials,
|
|
3
3
|
* variables, resources, and profiles
|
|
4
|
-
* @author
|
|
5
|
-
*
|
|
4
|
+
* @author Gardenia Liu
|
|
5
|
+
* @author Gabe Abrams
|
|
6
6
|
*/
|
|
7
|
-
const genConfiguration
|
|
8
|
-
return {};
|
|
9
|
-
};
|
|
10
|
-
|
|
7
|
+
declare const genConfiguration: () => Cypress.ConfigOptions<any>;
|
|
11
8
|
export default genConfiguration;
|
|
@@ -0,0 +1,89 @@
|
|
|
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 cypress
|
|
22
|
+
var cypress_1 = require("cypress");
|
|
23
|
+
// Import external libraries
|
|
24
|
+
var deepmerge_1 = __importDefault(require("deepmerge"));
|
|
25
|
+
// Import helpers
|
|
26
|
+
var splitEnv_1 = __importDefault(require("./helpers/splitEnv"));
|
|
27
|
+
var resolveDependents_1 = __importDefault(require("./helpers/resolveDependents"));
|
|
28
|
+
var getRootPath_1 = __importDefault(require("./helpers/getRootPath"));
|
|
29
|
+
// Determine project directory
|
|
30
|
+
var CWD = (0, getRootPath_1.default)();
|
|
31
|
+
/**
|
|
32
|
+
* Generate Cypress configuration based on global credentials,
|
|
33
|
+
* variables, resources, and profiles
|
|
34
|
+
* @author Gardenia Liu
|
|
35
|
+
* @author Gabe Abrams
|
|
36
|
+
*/
|
|
37
|
+
var genConfiguration = function () {
|
|
38
|
+
var _a, _b;
|
|
39
|
+
// Define paths
|
|
40
|
+
var GLOBALS_PATH = path_1.default.join(CWD, '/cypress/globals');
|
|
41
|
+
var PROFILES_PATH = path_1.default.join(CWD, '/cypress/profiles');
|
|
42
|
+
// Import global env var objects
|
|
43
|
+
var GlobalCredentials = require(path_1.default.join(GLOBALS_PATH, '/GlobalCredentials'));
|
|
44
|
+
var GlobalResources = require(path_1.default.join(GLOBALS_PATH, '/GlobalResources'));
|
|
45
|
+
var GlobalValues = require(path_1.default.join(GLOBALS_PATH, '/GlobalValues'));
|
|
46
|
+
// Determine profile file name (default is stage)
|
|
47
|
+
var profileName = process.env.CYPRESS_PROFILE || 'stage';
|
|
48
|
+
// Load in chosen profile configuration
|
|
49
|
+
var profileModules = {};
|
|
50
|
+
try {
|
|
51
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
52
|
+
var mod = require(path_1.default.join(PROFILES_PATH, "/".concat(profileName, ".Profile")));
|
|
53
|
+
profileModules = ((_b = (_a = mod === null || mod === void 0 ? void 0 : mod.default) !== null && _a !== void 0 ? _a : mod) !== null && _b !== void 0 ? _b : {});
|
|
54
|
+
}
|
|
55
|
+
catch (e) {
|
|
56
|
+
console.warn("[cypress.config] Could not load profile '".concat(profileName, ".Profile'"), e);
|
|
57
|
+
process.exit(1);
|
|
58
|
+
}
|
|
59
|
+
// NOTE: Order matters (later overrides earlier)
|
|
60
|
+
var sources = [GlobalCredentials, GlobalResources, GlobalValues, profileModules];
|
|
61
|
+
// Split all sources into basic and dependent
|
|
62
|
+
var splits = sources.map(function (source) {
|
|
63
|
+
return (0, splitEnv_1.default)(source);
|
|
64
|
+
});
|
|
65
|
+
// Extract basic and dependent values from splits
|
|
66
|
+
var basicValues = splits.map(function (s) {
|
|
67
|
+
return s.basic;
|
|
68
|
+
});
|
|
69
|
+
var dependentValues = splits.map(function (s) {
|
|
70
|
+
return s.dependent;
|
|
71
|
+
});
|
|
72
|
+
// Merge all of the basics
|
|
73
|
+
var basics = deepmerge_1.default.all(basicValues);
|
|
74
|
+
// Resolve dependencies
|
|
75
|
+
var dependents = (0, resolveDependents_1.default)(dependentValues, basics);
|
|
76
|
+
// Add basics, depends, and profileName into the final env
|
|
77
|
+
var finalEnv = __assign(__assign(__assign({}, basics), dependents), { profileName: profileName });
|
|
78
|
+
var baseUrl = finalEnv.baseURL;
|
|
79
|
+
// Return the configuration object
|
|
80
|
+
return (0, cypress_1.defineConfig)({
|
|
81
|
+
e2e: {
|
|
82
|
+
experimentalOriginDependencies: true,
|
|
83
|
+
baseUrl: baseUrl,
|
|
84
|
+
env: finalEnv,
|
|
85
|
+
},
|
|
86
|
+
});
|
|
87
|
+
};
|
|
88
|
+
exports.default = genConfiguration;
|
|
89
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/genConfiguration/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DependentValue.js","sourceRoot":"","sources":["../../../../src/genConfiguration/types/DependentValue.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GlobalsOrProfile.js","sourceRoot":"","sources":["../../../../src/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":["../../../../src/genConfiguration/types/SplitEnv.ts"],"names":[],"mappings":""}
|
|
@@ -3,11 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.genConfiguration = exports.init = void 0;
|
|
7
|
+
// Import helpers
|
|
7
8
|
var init_1 = __importDefault(require("./init"));
|
|
8
9
|
exports.init = init_1.default;
|
|
9
10
|
var genConfiguration_1 = __importDefault(require("./genConfiguration"));
|
|
10
11
|
exports.genConfiguration = genConfiguration_1.default;
|
|
11
|
-
// Automatically initialize upon importing the library
|
|
12
|
-
(
|
|
12
|
+
// Automatically initialize upon importing the library, only run in Cypress context
|
|
13
|
+
if (typeof Cypress !== 'undefined') {
|
|
14
|
+
(0, init_1.default)();
|
|
15
|
+
}
|
|
13
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,iBAAiB;AACjB,gDAA0B;AAUxB,eAVK,cAAI,CAUL;AATN,wEAAkD;AAUhD,2BAVK,0BAAgB,CAUL;AARlB,mFAAmF;AACnF,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE,CAAC;IACnC,IAAA,cAAI,GAAE,CAAC;AACT,CAAC"}
|
package/lib/src/init.js
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
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
|
+
// Import all commands
|
|
7
|
+
var assertDoesNotHaveClass_1 = __importDefault(require("./commands/assertDoesNotHaveClass"));
|
|
8
|
+
var assertHasClass_1 = __importDefault(require("./commands/assertHasClass"));
|
|
9
|
+
var assertNumElements_1 = __importDefault(require("./commands/assertNumElements"));
|
|
10
|
+
var extractDataFromClass_1 = __importDefault(require("./commands/extractDataFromClass"));
|
|
11
|
+
var extractDataFromClassByContents_1 = __importDefault(require("./commands/extractDataFromClassByContents"));
|
|
12
|
+
var getJSON_1 = __importDefault(require("./commands/getJSON"));
|
|
13
|
+
var getNumElements_1 = __importDefault(require("./commands/getNumElements"));
|
|
14
|
+
var handleHarvardKey_1 = __importDefault(require("./commands/handleHarvardKey"));
|
|
15
|
+
var launchAs_1 = __importDefault(require("./commands/launchAs"));
|
|
16
|
+
var launchLTIUsingToken_1 = __importDefault(require("./commands/launchLTIUsingToken"));
|
|
17
|
+
var navigateToHref_1 = __importDefault(require("./commands/navigateToHref"));
|
|
18
|
+
var runScript_1 = __importDefault(require("./commands/runScript"));
|
|
19
|
+
var typeInto_1 = __importDefault(require("./commands/typeInto"));
|
|
20
|
+
var visitCanvasGETEndpoint_1 = __importDefault(require("./commands/visitCanvasGETEndpoint"));
|
|
21
|
+
var waitForElementVisible_1 = __importDefault(require("./commands/waitForElementVisible"));
|
|
22
|
+
/**
|
|
23
|
+
* Initialize custom commands
|
|
24
|
+
* @author Gabe Abrams
|
|
25
|
+
*/
|
|
26
|
+
var init = function () {
|
|
27
|
+
// Execute each command adder
|
|
28
|
+
(0, assertDoesNotHaveClass_1.default)();
|
|
29
|
+
(0, assertHasClass_1.default)();
|
|
30
|
+
(0, assertNumElements_1.default)();
|
|
31
|
+
(0, getNumElements_1.default)();
|
|
32
|
+
(0, handleHarvardKey_1.default)();
|
|
33
|
+
(0, launchAs_1.default)();
|
|
34
|
+
(0, launchLTIUsingToken_1.default)();
|
|
35
|
+
(0, navigateToHref_1.default)();
|
|
36
|
+
(0, runScript_1.default)();
|
|
37
|
+
(0, typeInto_1.default)();
|
|
38
|
+
(0, visitCanvasGETEndpoint_1.default)();
|
|
39
|
+
(0, waitForElementVisible_1.default)();
|
|
40
|
+
(0, extractDataFromClass_1.default)();
|
|
41
|
+
(0, extractDataFromClassByContents_1.default)();
|
|
42
|
+
(0, getJSON_1.default)();
|
|
43
|
+
};
|
|
44
|
+
exports.default = init;
|
|
45
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/init.ts"],"names":[],"mappings":";;;;;AAAA,sBAAsB;AACtB,6FAAuE;AACvE,6EAAuD;AACvD,mFAA6D;AAC7D,yFAAmE;AACnE,6GAAuF;AACvF,+DAAyC;AACzC,6EAAuD;AACvD,iFAA2D;AAC3D,iEAA2C;AAC3C,uFAAiE;AACjE,6EAAuD;AACvD,mEAA6C;AAC7C,iEAA2C;AAC3C,6FAAuE;AACvE,2FAAqE;AAErE;;;GAGG;AACH,IAAM,IAAI,GAAG;IACX,6BAA6B;IAC7B,IAAA,gCAAsB,GAAE,CAAC;IACzB,IAAA,wBAAc,GAAE,CAAC;IACjB,IAAA,2BAAiB,GAAE,CAAC;IACpB,IAAA,wBAAc,GAAE,CAAC;IACjB,IAAA,0BAAgB,GAAE,CAAC;IACnB,IAAA,kBAAQ,GAAE,CAAC;IACX,IAAA,6BAAmB,GAAE,CAAC;IACtB,IAAA,wBAAc,GAAE,CAAC;IACjB,IAAA,mBAAS,GAAE,CAAC;IACZ,IAAA,kBAAQ,GAAE,CAAC;IACX,IAAA,gCAAsB,GAAE,CAAC;IACzB,IAAA,+BAAqB,GAAE,CAAC;IACxB,IAAA,8BAAoB,GAAE,CAAC;IACvB,IAAA,wCAA8B,GAAE,CAAC;IACjC,IAAA,iBAAO,GAAE,CAAC;AACZ,CAAC,CAAC;AAEF,kBAAe,IAAI,CAAC"}
|