dceky 1.1.2 → 1.1.4

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/README.md CHANGED
@@ -6,7 +6,12 @@ A Cypress-based testing framework by Harvard DCE
6
6
 
7
7
  It's easy to use `ky` as your testing framework. To get started, follow these steps:
8
8
 
9
- ### 1. Install and Configure Cypress
9
+ ### 1. Create a New NPM Project
10
+
11
+ 1. Create a Git repo and clone it
12
+ 2. Initialize the project using `npm init` and fill out the questions in the wizard
13
+
14
+ ### 2. Install and Configure Cypress
10
15
 
11
16
  Install Cypress: `npm i --save-dev cypress`
12
17
 
@@ -19,7 +24,7 @@ Configure Cypress:
19
24
 
20
25
  From this point onward, you won't run cypress directly
21
26
 
22
- ### 2. Install and Set Up Ky
27
+ ### 3. Install and Set Up Ky
23
28
 
24
29
  Install ky: `npm i --save-dev dceky`
25
30
 
@@ -14,6 +14,8 @@ const getRootPath_1 = __importDefault(require("../helpers/getRootPath"));
14
14
  */
15
15
  const genEmptyProfileFile = (name) => {
16
16
  const root = (0, getRootPath_1.default)();
17
+ // Check if this is the default profile
18
+ const isDefaultProfile = (name.toLowerCase() === 'default');
17
19
  // Log the action
18
20
  // eslint-disable-next-line no-console
19
21
  console.log(`Adding missing profile file: ${name}.Profile.ts`);
@@ -24,6 +26,14 @@ const genEmptyProfileFile = (name) => {
24
26
  // Create the directory
25
27
  fs_1.default.mkdirSync(profilesDir, { recursive: true });
26
28
  }
29
+ // Create baseURL lines if this is the default profile
30
+ const baseURLLines = (isDefaultProfile
31
+ ? [
32
+ ' // Base URL (hostname/prefix for all paths)',
33
+ ' baseURL: \'formy-project.herokuapp.com\',',
34
+ '',
35
+ ]
36
+ : []);
27
37
  // Create an empty file with a comment
28
38
  const fileContents = [
29
39
  '/**',
@@ -31,8 +41,8 @@ const genEmptyProfileFile = (name) => {
31
41
  ' */',
32
42
  '',
33
43
  `const ${name}Profile = {`,
44
+ ...baseURLLines,
34
45
  ' // Static Value Examples:',
35
- ' // baseURL: \'immersive.dcex.harvard.edu\'',
36
46
  ' // loginSystem: \'HarvardKey\'',
37
47
  '',
38
48
  ' // Dependent Value Example:',
@@ -1 +1 @@
1
- {"version":3,"file":"genEmptyProfileFile.js","sourceRoot":"","sources":["../../../setup/checkRequiredFiles/genEmptyProfileFile.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,wBAAwB;AACxB,yEAAiD;AAEjD;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAU,EAAE;IACnD,MAAM,IAAI,GAAG,IAAA,qBAAW,GAAE,CAAC;IAE3B,iBAAiB;IACjB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,aAAa,CAAC,CAAC;IAE/D,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IACxD,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IAEhE,gCAAgC;IAChC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,uBAAuB;QACvB,YAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,sCAAsC;IACtC,MAAM,YAAY,GAAG;QACnB,KAAK;QACL,MAAM,IAAI,UAAU;QACpB,KAAK;QACL,EAAE;QACF,SAAS,IAAI,aAAa;QAC1B,6BAA6B;QAC7B,8CAA8C;QAC9C,kCAAkC;QAClC,EAAE;QACF,+BAA+B;QAC/B,mBAAmB;QACnB,oCAAoC;QACpC,2CAA2C;QAC3C,sDAAsD;QACtD,SAAS;QACT,EAAE;QACF,4CAA4C;QAC5C,iBAAiB;QACjB,gCAAgC;QAChC,0CAA0C;QAC1C,mEAAmE;QACnE,SAAS;QACT,IAAI;QACJ,EAAE;QACF,kBAAkB,IAAI,UAAU;QAChC,EAAE;KACH,CAAC;IACF,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"genEmptyProfileFile.js","sourceRoot":"","sources":["../../../setup/checkRequiredFiles/genEmptyProfileFile.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,wBAAwB;AACxB,yEAAiD;AAEjD;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAU,EAAE;IACnD,MAAM,IAAI,GAAG,IAAA,qBAAW,GAAE,CAAC;IAE3B,uCAAuC;IACvC,MAAM,gBAAgB,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,CAAC;IAE5D,iBAAiB;IACjB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,aAAa,CAAC,CAAC;IAE/D,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IACxD,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IAEhE,gCAAgC;IAChC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,uBAAuB;QACvB,YAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,sDAAsD;IACtD,MAAM,YAAY,GAAG,CACnB,gBAAgB;QACd,CAAC,CAAC;YACA,+CAA+C;YAC/C,6CAA6C;YAC7C,EAAE;SACH;QACD,CAAC,CAAC,EAAE,CACP,CAAC;IAEF,sCAAsC;IACtC,MAAM,YAAY,GAAG;QACnB,KAAK;QACL,MAAM,IAAI,UAAU;QACpB,KAAK;QACL,EAAE;QACF,SAAS,IAAI,aAAa;QAC1B,GAAG,YAAY;QACf,6BAA6B;QAC7B,kCAAkC;QAClC,EAAE;QACF,+BAA+B;QAC/B,mBAAmB;QACnB,oCAAoC;QACpC,2CAA2C;QAC3C,sDAAsD;QACtD,SAAS;QACT,EAAE;QACF,4CAA4C;QAC5C,iBAAiB;QACjB,gCAAgC;QAChC,0CAA0C;QAC1C,mEAAmE;QACnE,SAAS;QACT,IAAI;QACJ,EAAE;QACF,kBAAkB,IAAI,UAAU;QAChC,EAAE;KACH,CAAC;IACF,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9D,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Generate an example test file at /cypress/e2e/example.cy.ts
2
+ * Generate an example test file at /cypress/e2e/example.ky.ts
3
3
  * Does not create test file if e2e folder already exists
4
4
  * @author Gabe Abrams
5
5
  * @author Yuen Ler Chow
@@ -8,7 +8,7 @@ const path_1 = __importDefault(require("path"));
8
8
  // Import shared helpers
9
9
  const getRootPath_1 = __importDefault(require("../helpers/getRootPath"));
10
10
  /**
11
- * Generate an example test file at /cypress/e2e/example.cy.ts
11
+ * Generate an example test file at /cypress/e2e/example.ky.ts
12
12
  * Does not create test file if e2e folder already exists
13
13
  * @author Gabe Abrams
14
14
  * @author Yuen Ler Chow
@@ -17,7 +17,7 @@ const getRootPath_1 = __importDefault(require("../helpers/getRootPath"));
17
17
  const genExampleTest = () => {
18
18
  const root = (0, getRootPath_1.default)();
19
19
  const e2eDir = path_1.default.join(root, 'cypress/e2e');
20
- const outputFile = path_1.default.join(e2eDir, 'example.cy.ts');
20
+ const outputFile = path_1.default.join(e2eDir, 'example.ky.ts');
21
21
  // Check if the directory exists
22
22
  if (!fs_1.default.existsSync(e2eDir)) {
23
23
  // Create the directory
@@ -28,14 +28,14 @@ const genExampleTest = () => {
28
28
  }
29
29
  // Log the action
30
30
  // eslint-disable-next-line no-console
31
- console.log('Adding example test file: e2e/example.cy.ts');
31
+ console.log('Adding example test file: e2e/example.ky.ts');
32
32
  // Create an empty file with a comment
33
33
  const fileContents = [
34
34
  'describe(\'Example Test Suite\', () => {',
35
35
  ' it(\'Should fill out form\', () => {',
36
- ' cy.visit(\'https://formy-project.herokuapp.com/form\');',
37
- ' cy.typeInto({ item: \'#first-name\', text: \'John\' });',
38
- ' cy.tap(\'#radio-button-2\');',
36
+ ' ky.visit(\'/form\');',
37
+ ' ky.typeInto({ item: \'#first-name\', text: \'John\' });',
38
+ ' ky.tap(\'#radio-button-2\');',
39
39
  ' });',
40
40
  '});',
41
41
  '',
@@ -1 +1 @@
1
- {"version":3,"file":"genExampleTest.js","sourceRoot":"","sources":["../../../setup/checkRequiredFiles/genExampleTest.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,wBAAwB;AACxB,yEAAiD;AAEjD;;;;;;GAMG;AACH,MAAM,cAAc,GAAG,GAAG,EAAE;IAC1B,MAAM,IAAI,GAAG,IAAA,qBAAW,GAAE,CAAC;IAE3B,MAAM,MAAM,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAEtD,gCAAgC;IAChC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,uBAAuB;QACvB,YAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,OAAO;IACT,CAAC;IAED,iBAAiB;IACjB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAE3D,sCAAsC;IACtC,MAAM,YAAY,GAAG;QACnB,0CAA0C;QAC1C,wCAAwC;QACxC,6DAA6D;QAC7D,6DAA6D;QAC7D,kCAAkC;QAClC,OAAO;QACP,KAAK;QACL,EAAE;KACH,CAAC;IACF,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF,kBAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"genExampleTest.js","sourceRoot":"","sources":["../../../setup/checkRequiredFiles/genExampleTest.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,wBAAwB;AACxB,yEAAiD;AAEjD;;;;;;GAMG;AACH,MAAM,cAAc,GAAG,GAAG,EAAE;IAC1B,MAAM,IAAI,GAAG,IAAA,qBAAW,GAAE,CAAC;IAE3B,MAAM,MAAM,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAEtD,gCAAgC;IAChC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,uBAAuB;QACvB,YAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,OAAO;IACT,CAAC;IAED,iBAAiB;IACjB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAE3D,sCAAsC;IACtC,MAAM,YAAY,GAAG;QACnB,0CAA0C;QAC1C,wCAAwC;QACxC,0BAA0B;QAC1B,6DAA6D;QAC7D,kCAAkC;QAClC,OAAO;QACP,KAAK;QACL,EAAE;KACH,CAAC;IACF,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF,kBAAe,cAAc,CAAC"}
@@ -24,6 +24,7 @@ const genTsConfigFile = () => {
24
24
  esModuleInterop: true,
25
25
  noImplicitAny: true,
26
26
  noEmitOnError: true,
27
+ ignoreDeprecations: '6.0', // TODO: remove once Cypress updates past 15.13.1
27
28
  removeComments: false,
28
29
  declaration: true,
29
30
  sourceMap: true,
@@ -1 +1 @@
1
- {"version":3,"file":"genTsConfigFile.js","sourceRoot":"","sources":["../../setup/genTsConfigFile.ts"],"names":[],"mappings":";;;;;AAAA,cAAc;AACd,4CAAoB;AACpB,gDAAwB;AAExB,wBAAwB;AACxB,wEAAgD;AAEhD;;;GAGG;AACH,MAAM,eAAe,GAAG,GAAG,EAAE;IAC3B,MAAM,IAAI,GAAG,IAAA,qBAAW,GAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAEpD,IAAI,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG;QACf,eAAe,EAAE;YACf,MAAM,EAAE,UAAU;YAClB,eAAe,EAAE,IAAI;YACrB,aAAa,EAAE,IAAI;YACnB,aAAa,EAAE,IAAI;YACnB,cAAc,EAAE,KAAK;YACrB,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,KAAK;YACb,GAAG,EAAE;gBACH,KAAK;gBACL,KAAK;aACN;YACD,KAAK,EAAE;gBACL,MAAM;aACP;YACD,OAAO,EAAE,WAAW;SACrB;QACD,OAAO,EAAE;YACP,WAAW;SACZ;QACD,SAAS,EAAE;YACT,KAAK,EAAE,IAAI;SACZ;KACF,CAAC;IAEF,YAAE,CAAC,aAAa,CACd,UAAU,EACV,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CACzC,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,kBAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"genTsConfigFile.js","sourceRoot":"","sources":["../../setup/genTsConfigFile.ts"],"names":[],"mappings":";;;;;AAAA,cAAc;AACd,4CAAoB;AACpB,gDAAwB;AAExB,wBAAwB;AACxB,wEAAgD;AAEhD;;;GAGG;AACH,MAAM,eAAe,GAAG,GAAG,EAAE;IAC3B,MAAM,IAAI,GAAG,IAAA,qBAAW,GAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAEpD,IAAI,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG;QACf,eAAe,EAAE;YACf,MAAM,EAAE,UAAU;YAClB,eAAe,EAAE,IAAI;YACrB,aAAa,EAAE,IAAI;YACnB,aAAa,EAAE,IAAI;YACnB,kBAAkB,EAAE,KAAK,EAAE,iDAAiD;YAC5E,cAAc,EAAE,KAAK;YACrB,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,KAAK;YACb,GAAG,EAAE;gBACH,KAAK;gBACL,KAAK;aACN;YACD,KAAK,EAAE;gBACL,MAAM;aACP;YACD,OAAO,EAAE,WAAW;SACrB;QACD,OAAO,EAAE;YACP,WAAW;SACZ;QACD,SAAS,EAAE;YACT,KAAK,EAAE,IAAI;SACZ;KACF,CAAC;IAEF,YAAE,CAAC,aAAa,CACd,UAAU,EACV,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CACzC,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,kBAAe,eAAe,CAAC"}
@@ -99,6 +99,8 @@ const genConfiguration = () => {
99
99
  baseUrl,
100
100
  expose: exposed,
101
101
  env: securedEnv,
102
+ allowCypressEnv: false,
103
+ specPattern: 'cypress/e2e/**/*.ky.ts',
102
104
  },
103
105
  });
104
106
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/genConfiguration/index.ts"],"names":[],"mappings":";;;;;AAAA,+BAA+B;AAC/B,mCAAmC;AACnC,8CAA8C;AAC9C,gDAAwB;AAExB,iBAAiB;AACjB,qCAAuC;AAEvC,4BAA4B;AAC5B,0DAAkC;AAElC,iBAAiB;AACjB,kEAA0C;AAC1C,oFAA4D;AAC5D,wEAAgD;AAMhD,8BAA8B;AAC9B,MAAM,GAAG,GAAG,IAAA,qBAAW,GAAE,CAAC;AAE1B;;;;;GAKG;AACH,MAAM,gBAAgB,GAAG,GAAG,EAAE;;IAC5B,eAAe;IACf,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAE1D,gCAAgC;IAChC,MAAM,iBAAiB,GAAqB,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC;IAC3G,MAAM,eAAe,GAAqB,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC;IACvG,MAAM,YAAY,GAAqB,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC;IAEjG,iDAAiD;IACjD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,OAAO,CAAC;IAC3D,MAAM,kBAAkB,GAAG,SAAS,CAAC;IAErC,uCAAuC;IACvC,IAAI,cAAc,GAAqB,EAAE,CAAC;IAC1C,IAAI,CAAC;QACH,8DAA8D;QAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,WAAW,UAAU,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,4CAA4C,WAAW,WAAW,EAAE,CAAC,CAAC,CAAC;QACpF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,qCAAqC;IACrC,IAAI,qBAAqB,GAAqB,EAAE,CAAC;IACjD,IAAI,CAAC;QACH,8DAA8D;QAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,kBAAkB,UAAU,CAAC,CAAC,CAAC;QAChF,qBAAqB,GAAG,CAAC,MAAA,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,mCAAI,GAAG,mCAAI,EAAE,CAAqB,CAAC;IAC1E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,4CAA4C,kBAAkB,WAAW,EAAE,CAAC,CAAC,CAAC;QAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,gDAAgD;IAChD,MAAM,OAAO,GAAuB;QAClC,eAAe;QACf,YAAY;QACZ,cAAc;QACd,qBAAqB;KACtB,CAAC;IAEF,6CAA6C;IAC7C,MAAM,MAAM,GAAe,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAChD,OAAO,IAAA,kBAAQ,EAAC,MAAM,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,iDAAiD;IACjD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnC,OAAO,CAAC,CAAC,KAAK,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACvC,OAAO,CAAC,CAAC,SAAS,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,0BAA0B;IAC1B,MAAM,MAAM,GAAqB,mBAAS,CAAC,GAAG,CAAmB,WAAW,CAAC,CAAC;IAE9E,uBAAuB;IACvB,MAAM,UAAU,GAAqB,IAAA,2BAAiB,EAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAEhF,0DAA0D;IAC1D,MAAM,OAAO,iDACR,MAAM,GACN,UAAU,KACb,WAAW,GACZ,CAAC;IAEF,2DAA2D;IAC3D,oEAAoE;IACpE,MAAM,UAAU,mCACX,iBAAiB,GACjB,OAAO,CACX,CAAC;IAEF,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;SAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACvC,OAAO,GAAG,WAAW,OAAO,EAAE,CAAC;IACjC,CAAC;IAED,kCAAkC;IAClC,OAAO,IAAA,sBAAY,EAAC;QAClB,GAAG,EAAE;YACH,yBAAyB,EAAE,IAAI;YAC/B,8BAA8B,EAAE,IAAI;YACpC,OAAO;YACP,MAAM,EAAE,OAAO;YACf,GAAG,EAAE,UAAU;SAChB;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,kBAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/genConfiguration/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dceky",
3
- "version": "1.1.2",
3
+ "version": "1.1.4",
4
4
  "description": "Cypress toolkit for Harvard DCE",
5
5
  "main": "./lib/src/index.js",
6
6
  "types": "./lib/src/index.d.ts",
@@ -54,6 +54,6 @@
54
54
  "typescript": "^5.9.3"
55
55
  },
56
56
  "peerDependencies": {
57
- "cypress": "^15.11.0"
57
+ "cypress": "^x.x.x"
58
58
  }
59
59
  }
@@ -12,6 +12,9 @@ import getRootPath from '../helpers/getRootPath';
12
12
  const genEmptyProfileFile = (name: string): string => {
13
13
  const root = getRootPath();
14
14
 
15
+ // Check if this is the default profile
16
+ const isDefaultProfile = (name.toLowerCase() === 'default');
17
+
15
18
  // Log the action
16
19
  // eslint-disable-next-line no-console
17
20
  console.log(`Adding missing profile file: ${name}.Profile.ts`);
@@ -25,6 +28,17 @@ const genEmptyProfileFile = (name: string): string => {
25
28
  fs.mkdirSync(profilesDir, { recursive: true });
26
29
  }
27
30
 
31
+ // Create baseURL lines if this is the default profile
32
+ const baseURLLines = (
33
+ isDefaultProfile
34
+ ? [
35
+ ' // Base URL (hostname/prefix for all paths)',
36
+ ' baseURL: \'formy-project.herokuapp.com\',',
37
+ '',
38
+ ]
39
+ : []
40
+ );
41
+
28
42
  // Create an empty file with a comment
29
43
  const fileContents = [
30
44
  '/**',
@@ -32,8 +46,8 @@ const genEmptyProfileFile = (name: string): string => {
32
46
  ' */',
33
47
  '',
34
48
  `const ${name}Profile = {`,
49
+ ...baseURLLines,
35
50
  ' // Static Value Examples:',
36
- ' // baseURL: \'immersive.dcex.harvard.edu\'',
37
51
  ' // loginSystem: \'HarvardKey\'',
38
52
  '',
39
53
  ' // Dependent Value Example:',
@@ -5,7 +5,7 @@ import path from 'path';
5
5
  import getRootPath from '../helpers/getRootPath';
6
6
 
7
7
  /**
8
- * Generate an example test file at /cypress/e2e/example.cy.ts
8
+ * Generate an example test file at /cypress/e2e/example.ky.ts
9
9
  * Does not create test file if e2e folder already exists
10
10
  * @author Gabe Abrams
11
11
  * @author Yuen Ler Chow
@@ -15,7 +15,7 @@ const genExampleTest = () => {
15
15
  const root = getRootPath();
16
16
 
17
17
  const e2eDir = path.join(root, 'cypress/e2e');
18
- const outputFile = path.join(e2eDir, 'example.cy.ts');
18
+ const outputFile = path.join(e2eDir, 'example.ky.ts');
19
19
 
20
20
  // Check if the directory exists
21
21
  if (!fs.existsSync(e2eDir)) {
@@ -27,15 +27,15 @@ const genExampleTest = () => {
27
27
 
28
28
  // Log the action
29
29
  // eslint-disable-next-line no-console
30
- console.log('Adding example test file: e2e/example.cy.ts');
30
+ console.log('Adding example test file: e2e/example.ky.ts');
31
31
 
32
32
  // Create an empty file with a comment
33
33
  const fileContents = [
34
34
  'describe(\'Example Test Suite\', () => {',
35
35
  ' it(\'Should fill out form\', () => {',
36
- ' cy.visit(\'https://formy-project.herokuapp.com/form\');',
37
- ' cy.typeInto({ item: \'#first-name\', text: \'John\' });',
38
- ' cy.tap(\'#radio-button-2\');',
36
+ ' ky.visit(\'/form\');',
37
+ ' ky.typeInto({ item: \'#first-name\', text: \'John\' });',
38
+ ' ky.tap(\'#radio-button-2\');',
39
39
  ' });',
40
40
  '});',
41
41
  '',
@@ -23,6 +23,7 @@ const genTsConfigFile = () => {
23
23
  esModuleInterop: true,
24
24
  noImplicitAny: true,
25
25
  noEmitOnError: true,
26
+ ignoreDeprecations: '6.0', // TODO: remove once Cypress updates past 15.13.1
26
27
  removeComments: false,
27
28
  declaration: true,
28
29
  sourceMap: true,
@@ -119,6 +119,8 @@ const genConfiguration = () => {
119
119
  baseUrl,
120
120
  expose: exposed,
121
121
  env: securedEnv,
122
+ allowCypressEnv: false,
123
+ specPattern: 'cypress/e2e/**/*.ky.ts',
122
124
  },
123
125
  });
124
126
  };
package/tsconfig.json CHANGED
@@ -9,6 +9,7 @@
9
9
  "sourceMap": true,
10
10
  "target": "es6",
11
11
  "lib": ["es6", "es2015.promise", "es2017.object", "dom"],
12
+ "types": ["node", "cypress"],
12
13
  "outDir": "./lib"
13
14
  },
14
15
  "include": [