@auxcode/auxta 1.3.51-beta.8 → 1.3.51

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.
Files changed (79) hide show
  1. package/build/{cjs/auxta → auxta}/configs/config.js +1 -1
  2. package/build/{cjs/auxta → auxta}/utilities/screenshot.helper.js +1 -0
  3. package/build/{cjs/macros → macros}/helpers/AuxGoogleAuth.js +36 -23
  4. package/build/{cjs/puppeteer → puppeteer}/puppeteer.d.ts +2 -2
  5. package/build/{cjs/puppeteer → puppeteer}/puppeteer.js +5 -3
  6. package/package.json +8 -6
  7. package/build/esm/AuxTA.d.ts +0 -62
  8. package/build/esm/AuxTA.js +0 -125
  9. package/build/esm/auxta/configs/config.d.ts +0 -57
  10. package/build/esm/auxta/configs/config.js +0 -64
  11. package/build/esm/auxta/enums/status-of.step.d.ts +0 -7
  12. package/build/esm/auxta/enums/status-of.step.js +0 -8
  13. package/build/esm/auxta/helpers/response.helper.d.ts +0 -10
  14. package/build/esm/auxta/helpers/response.helper.js +0 -11
  15. package/build/esm/auxta/helpers/start.helper.d.ts +0 -1
  16. package/build/esm/auxta/helpers/start.helper.js +0 -24
  17. package/build/esm/auxta/hooks/report.hook.d.ts +0 -14
  18. package/build/esm/auxta/hooks/report.hook.js +0 -59
  19. package/build/esm/auxta/models/upload.model.d.ts +0 -35
  20. package/build/esm/auxta/models/upload.model.js +0 -78
  21. package/build/esm/auxta/services/log.service.d.ts +0 -31
  22. package/build/esm/auxta/services/log.service.js +0 -57
  23. package/build/esm/auxta/services/report.service.d.ts +0 -31
  24. package/build/esm/auxta/services/report.service.js +0 -168
  25. package/build/esm/auxta/services/runtime.service.d.ts +0 -16
  26. package/build/esm/auxta/services/runtime.service.js +0 -37
  27. package/build/esm/auxta/utilities/runtime.helper.d.ts +0 -15
  28. package/build/esm/auxta/utilities/runtime.helper.js +0 -15
  29. package/build/esm/auxta/utilities/screenshot.helper.d.ts +0 -4
  30. package/build/esm/auxta/utilities/screenshot.helper.js +0 -50
  31. package/build/esm/auxta/utilities/start-suite.helper.d.ts +0 -17
  32. package/build/esm/auxta/utilities/start-suite.helper.js +0 -26
  33. package/build/esm/macros/helpers/Aux2faAuth.d.ts +0 -7
  34. package/build/esm/macros/helpers/Aux2faAuth.js +0 -25
  35. package/build/esm/macros/helpers/AuxGoogleAuth.d.ts +0 -22
  36. package/build/esm/macros/helpers/AuxGoogleAuth.js +0 -177
  37. package/build/esm/macros/helpers/code.helper.d.ts +0 -23
  38. package/build/esm/macros/helpers/code.helper.js +0 -218
  39. package/build/esm/macros/helpers/emailHelper.d.ts +0 -19
  40. package/build/esm/macros/helpers/emailHelper.js +0 -170
  41. package/build/esm/macros/helpers/extend-default-page.d.ts +0 -6
  42. package/build/esm/macros/helpers/extend-default-page.js +0 -82
  43. package/build/esm/puppeteer/puppeteer.d.ts +0 -25
  44. package/build/esm/puppeteer/puppeteer.js +0 -203
  45. package/build/tsconfig-cjs.tsbuildinfo +0 -1
  46. package/build/tsconfig.tsbuildinfo +0 -1
  47. /package/build/{cjs/AuxTA.d.ts → AuxTA.d.ts} +0 -0
  48. /package/build/{cjs/AuxTA.js → AuxTA.js} +0 -0
  49. /package/build/{cjs/auxta → auxta}/configs/config.d.ts +0 -0
  50. /package/build/{cjs/auxta → auxta}/enums/status-of.step.d.ts +0 -0
  51. /package/build/{cjs/auxta → auxta}/enums/status-of.step.js +0 -0
  52. /package/build/{cjs/auxta → auxta}/helpers/response.helper.d.ts +0 -0
  53. /package/build/{cjs/auxta → auxta}/helpers/response.helper.js +0 -0
  54. /package/build/{cjs/auxta → auxta}/helpers/start.helper.d.ts +0 -0
  55. /package/build/{cjs/auxta → auxta}/helpers/start.helper.js +0 -0
  56. /package/build/{cjs/auxta → auxta}/hooks/report.hook.d.ts +0 -0
  57. /package/build/{cjs/auxta → auxta}/hooks/report.hook.js +0 -0
  58. /package/build/{cjs/auxta → auxta}/models/upload.model.d.ts +0 -0
  59. /package/build/{cjs/auxta → auxta}/models/upload.model.js +0 -0
  60. /package/build/{cjs/auxta → auxta}/services/log.service.d.ts +0 -0
  61. /package/build/{cjs/auxta → auxta}/services/log.service.js +0 -0
  62. /package/build/{cjs/auxta → auxta}/services/report.service.d.ts +0 -0
  63. /package/build/{cjs/auxta → auxta}/services/report.service.js +0 -0
  64. /package/build/{cjs/auxta → auxta}/services/runtime.service.d.ts +0 -0
  65. /package/build/{cjs/auxta → auxta}/services/runtime.service.js +0 -0
  66. /package/build/{cjs/auxta → auxta}/utilities/runtime.helper.d.ts +0 -0
  67. /package/build/{cjs/auxta → auxta}/utilities/runtime.helper.js +0 -0
  68. /package/build/{cjs/auxta → auxta}/utilities/screenshot.helper.d.ts +0 -0
  69. /package/build/{cjs/auxta → auxta}/utilities/start-suite.helper.d.ts +0 -0
  70. /package/build/{cjs/auxta → auxta}/utilities/start-suite.helper.js +0 -0
  71. /package/build/{cjs/macros → macros}/helpers/Aux2faAuth.d.ts +0 -0
  72. /package/build/{cjs/macros → macros}/helpers/Aux2faAuth.js +0 -0
  73. /package/build/{cjs/macros → macros}/helpers/AuxGoogleAuth.d.ts +0 -0
  74. /package/build/{cjs/macros → macros}/helpers/code.helper.d.ts +0 -0
  75. /package/build/{cjs/macros → macros}/helpers/code.helper.js +0 -0
  76. /package/build/{cjs/macros → macros}/helpers/emailHelper.d.ts +0 -0
  77. /package/build/{cjs/macros → macros}/helpers/emailHelper.js +0 -0
  78. /package/build/{cjs/macros → macros}/helpers/extend-default-page.d.ts +0 -0
  79. /package/build/{cjs/macros → macros}/helpers/extend-default-page.js +0 -0
@@ -49,7 +49,7 @@ function setupOverrideConfig(overrideConfig) {
49
49
  }
50
50
  exports.setupOverrideConfig = setupOverrideConfig;
51
51
  exports.config = {
52
- auxtaURL: "http://localhost:8888/.netlify/functions/",
52
+ auxtaURL: "https://auxta.live/.netlify/functions/",
53
53
  baseURL: "",
54
54
  siteURL: "",
55
55
  organization: "",
@@ -25,6 +25,7 @@ function captureScreenshot() {
25
25
  const lastPage = pages[pages.length - 1] || puppeteer_1.default.defaultPage;
26
26
  const screenshotBuffer = yield lastPage.screenshot({
27
27
  fullPage: true,
28
+ captureBeyondViewport: false,
28
29
  encoding: 'binary'
29
30
  });
30
31
  if (Buffer.isBuffer(screenshotBuffer))
@@ -13,10 +13,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.AuxGoogleAuth = void 0;
16
- const fs = require('fs');
17
- const readline = require('readline');
16
+ const config_1 = require("../../auxta/configs/config");
18
17
  const puppeteer_1 = __importDefault(require("../../puppeteer/puppeteer"));
19
18
  const code_helper_1 = __importDefault(require("../helpers/code.helper"));
19
+ const status_of_step_1 = __importDefault(require("../../auxta/enums/status-of.step"));
20
+ const fs = require('fs');
21
+ const readline = require('readline');
20
22
  const { google } = require("googleapis");
21
23
  const SCOPES = [
22
24
  'https://www.googleapis.com/auth/gmail.addons.current.action.compose',
@@ -84,8 +86,8 @@ class AuxGoogleAuth {
84
86
  const { client_secret, client_id, redirect_uris } = credentials.installed;
85
87
  const oAuth2Client = new google.auth.OAuth2(client_id, client_secret, redirect_uris[0]);
86
88
  try {
87
- if (TOKEN.length > 0) {
88
- oAuth2Client.setCredentials(JSON.parse(TOKEN));
89
+ if (TOKEN) {
90
+ oAuth2Client.setCredentials(TOKEN);
89
91
  this._oAuth2Client = oAuth2Client;
90
92
  return;
91
93
  }
@@ -132,39 +134,50 @@ class AuxGoogleAuth {
132
134
  scope: SCOPES,
133
135
  });
134
136
  const code = yield this.LogIn(authUrl);
135
- oAuth2Client.getToken(code, (err, token) => {
136
- if (err)
137
- return console.error('Error retrieving access token', err);
138
- oAuth2Client.setCredentials(token);
139
- TOKEN = token;
140
- this._oAuth2Client = oAuth2Client;
141
- });
137
+ this._oAuth2Client = yield (new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
138
+ yield oAuth2Client.getToken(code, (err, token) => {
139
+ if (err)
140
+ return console.error('Error retrieving access token', err);
141
+ oAuth2Client.setCredentials(token);
142
+ TOKEN = token;
143
+ this._oAuth2Client = oAuth2Client;
144
+ code_helper_1.default.log('Then', 'I login with the google account', status_of_step_1.default.PASSED);
145
+ resolve(oAuth2Client);
146
+ });
147
+ })));
142
148
  });
143
149
  }
144
150
  static LogIn(authUrl) {
145
- var _a, _b, _c;
151
+ var _a, _b;
146
152
  return __awaiter(this, void 0, void 0, function* () {
147
153
  const context = yield puppeteer_1.default.defaultPage.browser().createIncognitoBrowserContext();
148
154
  const page = yield context.newPage();
149
155
  yield page.goto(authUrl);
150
- yield page.waitForNetworkIdle();
151
- yield code_helper_1.default.waitForSelector('visible', '#identifierId');
156
+ yield code_helper_1.default.waitForSelector('visible', '#identifierId', config_1.config.timeout, page);
152
157
  yield ((_a = (yield page.$('#identifierId'))) === null || _a === void 0 ? void 0 : _a.type(EMAIL));
153
158
  yield (yield page.$$('button'))[3].click();
154
- yield page.waitForNetworkIdle();
155
- yield code_helper_1.default.waitForSelector('visible', 'input[type="password"]');
159
+ yield code_helper_1.default.timeout(3000);
160
+ yield code_helper_1.default.waitForSelector('visible', 'input[type="password"]', config_1.config.timeout, page);
156
161
  yield ((_b = (yield page.$('input[type="password"]'))) === null || _b === void 0 ? void 0 : _b.type(PASSWORD));
157
162
  yield (yield page.$$('button'))[1].click();
158
- yield page.waitForNetworkIdle();
159
- yield code_helper_1.default.waitForSelector('visible', '#headingText');
163
+ yield code_helper_1.default.timeout(3000);
164
+ yield code_helper_1.default.waitForSelector('visible', '#headingText', config_1.config.timeout, page);
160
165
  yield (yield page.$$('button'))[2].click();
161
- yield page.waitForNetworkIdle();
162
- yield code_helper_1.default.waitForSelector('visible', 'input[type="checkbox"]');
163
- yield ((_c = (yield page.$('input[type="checkbox"]'))) === null || _c === void 0 ? void 0 : _c.click());
164
- yield (yield page.$$('button'))[2].click();
165
- yield page.waitForNetworkIdle();
166
+ yield code_helper_1.default.timeout(3000);
167
+ const checkbox = yield page.$$('input[type="checkbox"]');
168
+ if (checkbox.length > 0) {
169
+ yield code_helper_1.default.waitForSelector('visible', 'input[type="checkbox"]', config_1.config.timeout, page);
170
+ yield checkbox[0].click();
171
+ yield (yield page.$$('button'))[2].click();
172
+ }
173
+ else {
174
+ yield (yield page.$$('button'))[2].click();
175
+ }
176
+ yield code_helper_1.default.timeout(3000);
166
177
  const currentUrl = page.url();
167
178
  const code = currentUrl.substring(currentUrl.indexOf("code=") + 5, currentUrl.lastIndexOf("&"));
179
+ code_helper_1.default.log('Then', 'I get the code form the url', status_of_step_1.default.PASSED);
180
+ yield page.close();
168
181
  return decodeURIComponent(code);
169
182
  });
170
183
  }
@@ -1,7 +1,7 @@
1
1
  import { UploadModel } from "../auxta/models/upload.model";
2
- import puppeteer = require("puppeteer");
2
+ import puppeteerN = require("puppeteer");
3
3
  export declare class Puppeteer {
4
- defaultPage: puppeteer.Page;
4
+ defaultPage: puppeteerN.Page;
5
5
  private browser;
6
6
  startBrowser(): Promise<void>;
7
7
  close(): Promise<void>;
@@ -21,7 +21,7 @@ const status_of_step_1 = require("../auxta/enums/status-of.step");
21
21
  const config_1 = require("../auxta/configs/config");
22
22
  const start_suite_helper_1 = require("../auxta/utilities/start-suite.helper");
23
23
  const report_service_1 = require("../auxta/services/report.service");
24
- const puppeteer = require("puppeteer");
24
+ const puppeteer = require("puppeteer-extra");
25
25
  class Puppeteer {
26
26
  startBrowser() {
27
27
  return __awaiter(this, void 0, void 0, function* () {
@@ -37,9 +37,11 @@ class Puppeteer {
37
37
  DISPLAY: ":10.0"
38
38
  };
39
39
  }
40
- this.browser = yield puppeteer.launch({
40
+ const StealthPlugin = require('puppeteer-extra-plugin-stealth');
41
+ puppeteer.default.use(StealthPlugin());
42
+ this.browser = yield puppeteer.default.launch({
41
43
  slowMo: process.env.slowMo ? Number(process.env.slowMo) : 0,
42
- executablePath: puppeteer.executablePath(),
44
+ executablePath: puppeteer.default.executablePath(),
43
45
  args,
44
46
  env,
45
47
  ignoreDefaultArgs: ["--enable-automation"],
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@auxcode/auxta",
3
- "version": "1.3.51-beta.8",
3
+ "version": "1.3.51",
4
4
  "description": "",
5
- "main": "./build/cjs/AuxTA.js",
6
- "module": "./build/esm/AuxTA.js",
5
+ "main": "./build/AuxTA.js",
6
+ "types": "./build/AuxTA.d.ts",
7
7
  "files": [
8
8
  "build/"
9
9
  ],
10
10
  "scripts": {
11
- "tsc": "tsc -p tsconfig.json && tsc -p tsconfig-cjs.json",
12
- "prepublish": "npm run tsc",
11
+ "tsc": "tsc -p tsconfig.json",
12
+ "prepublish": "tsc",
13
13
  "test": "npm run prepublish & node ./build/AuxTA.js"
14
14
  },
15
15
  "author": "auxcode",
@@ -26,7 +26,9 @@
26
26
  "nodemailer": "^6.9.2",
27
27
  "puppeteer": "^21.3.6",
28
28
  "readline": "^1.3.0",
29
- "typescript": "^5.2.2"
29
+ "typescript": "^5.2.2",
30
+ "puppeteer-extra": "^3.3.6",
31
+ "puppeteer-extra-plugin-stealth": "^2.11.2"
30
32
  },
31
33
  "devDependencies": {
32
34
  "@babel/preset-typescript": "^7.16.0"
@@ -1,62 +0,0 @@
1
- import { Puppeteer } from "./puppeteer/puppeteer";
2
- import { FunctionHelper } from "./macros/helpers/code.helper";
3
- import StatusOfStep from "./auxta/enums/status-of.step";
4
- import { UploadModel } from "./auxta/models/upload.model";
5
- import { AuxGoogleAuth } from "./macros/helpers/AuxGoogleAuth";
6
- declare class AuxTA extends FunctionHelper {
7
- puppeteer: Puppeteer;
8
- aux2fa: import("./macros/helpers/Aux2faAuth").Aux2faAuth;
9
- google: typeof AuxGoogleAuth;
10
- config: {
11
- auxtaURL: string;
12
- baseURL: string;
13
- siteURL: string;
14
- organization: string;
15
- netlifyPath: string;
16
- digitalProduct: string;
17
- bucket: string;
18
- token: string;
19
- screenWidth: number;
20
- screenHeight: number;
21
- timeout: number;
22
- suitesList: never[];
23
- googleEmail: string;
24
- auxtaCredentials: {
25
- email: string;
26
- password: string;
27
- };
28
- };
29
- email: import("./macros/helpers/emailHelper").EmailHelper;
30
- private readonly uploadModel;
31
- constructor();
32
- run(event: any, overrideConfig?: any): Promise<{
33
- nextSuites?: undefined;
34
- reportId?: undefined;
35
- currentSuite?: undefined;
36
- retries?: undefined;
37
- } | {
38
- nextSuites: string[];
39
- reportId: string | undefined;
40
- currentSuite: string | undefined;
41
- retries: string;
42
- }>;
43
- private changeModelData;
44
- startBrowser(event: any, callback: any, feature: string, scenario: string, overrideConfig?: any, singleFeature?: boolean, fileName?: string): Promise<{
45
- nextSuites?: undefined;
46
- reportId?: undefined;
47
- currentSuite?: undefined;
48
- retries?: undefined;
49
- } | {
50
- nextSuites: string[];
51
- reportId: string | undefined;
52
- currentSuite: string | undefined;
53
- retries: string;
54
- } | {
55
- statusCode: number;
56
- } | undefined>;
57
- startBrowserRPA(event: any, callback: any, baseURL: string, fileName?: string): Promise<any>;
58
- getUploadModel(): UploadModel;
59
- }
60
- export declare const StepStatus: typeof StatusOfStep;
61
- declare const auxta: AuxTA;
62
- export default auxta;
@@ -1,125 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import puppeteer from "./puppeteer/puppeteer";
11
- import { FunctionHelper } from "./macros/helpers/code.helper";
12
- import path from "path";
13
- import fs from "fs";
14
- import StatusOfStep from "./auxta/enums/status-of.step";
15
- import { UploadModel } from "./auxta/models/upload.model";
16
- import * as dotenv from "dotenv";
17
- import { setupConfig, config as c, setupOverrideConfig } from "./auxta/configs/config";
18
- import { startSuite } from "./auxta/utilities/start-suite.helper";
19
- import { createEmptyReport } from "./auxta/services/report.service";
20
- import Aux2faAuth from "./macros/helpers/Aux2faAuth";
21
- import { AuxGoogleAuth } from "./macros/helpers/AuxGoogleAuth";
22
- import emailHelper from "./macros/helpers/emailHelper";
23
- dotenv.config();
24
- class AuxTA extends FunctionHelper {
25
- constructor() {
26
- super();
27
- this.puppeteer = puppeteer;
28
- this.aux2fa = Aux2faAuth;
29
- this.google = AuxGoogleAuth;
30
- this.config = c;
31
- this.email = emailHelper;
32
- let file;
33
- if (!process.env.RPA) {
34
- try {
35
- let currentDir = "";
36
- while (true) {
37
- file = path.join(__dirname, currentDir, "auxta.json");
38
- if (!fs.existsSync(file)) {
39
- currentDir += "../";
40
- if (currentDir.length >= 30) {
41
- console.log("auxta.json file not found!");
42
- process.exit(1);
43
- return;
44
- }
45
- continue;
46
- }
47
- break;
48
- }
49
- const jsonConfig = JSON.parse(fs.readFileSync(file).toString());
50
- try {
51
- this.config = setupConfig(jsonConfig);
52
- }
53
- catch (e) {
54
- console.log("Missing field in auxta.json:", e);
55
- }
56
- this.uploadModel = new UploadModel(jsonConfig.organization, jsonConfig.baseURL, jsonConfig.digitalProduct, jsonConfig.environment, jsonConfig.bucket);
57
- }
58
- catch (e) {
59
- console.log("Missing or corrupted config: auxta.json. Searching in location:", file);
60
- console.log(e);
61
- process.exit(1);
62
- }
63
- }
64
- else {
65
- this.uploadModel = new UploadModel('', '', '', '', '');
66
- }
67
- }
68
- run(event, overrideConfig) {
69
- return __awaiter(this, void 0, void 0, function* () {
70
- this.changeModelData(overrideConfig);
71
- let reportId;
72
- try {
73
- if (event.reportId) {
74
- reportId = event.reportId;
75
- }
76
- }
77
- catch (e) {
78
- reportId = undefined;
79
- }
80
- const suites = this.config.suitesList.slice(0);
81
- return startSuite(suites, reportId || (yield createEmptyReport(this.uploadModel)));
82
- });
83
- }
84
- changeModelData(overrideConfig) {
85
- if (overrideConfig) {
86
- if (overrideConfig.digitalProduct)
87
- this.uploadModel.digitalProduct = overrideConfig.digitalProduct;
88
- if (overrideConfig.environment)
89
- this.uploadModel.environment = overrideConfig.environment;
90
- if (overrideConfig.baseURL)
91
- this.uploadModel.baseUrl = overrideConfig.baseURL;
92
- if (overrideConfig.bucket)
93
- this.uploadModel.bucket = overrideConfig.bucket;
94
- this.config = setupOverrideConfig(overrideConfig);
95
- }
96
- }
97
- startBrowser(event, callback, feature, scenario, overrideConfig, singleFeature = false, fileName = '') {
98
- return __awaiter(this, void 0, void 0, function* () {
99
- this.changeModelData(overrideConfig);
100
- if (singleFeature && process.env.ENVIRONMENT !== 'LOCAL') {
101
- this.uploadModel.reportId = yield createEmptyReport(this.uploadModel);
102
- this.uploadModel.currentSuite = fileName;
103
- this.uploadModel.nextSuites = [];
104
- }
105
- return this.puppeteer.run(event, callback, feature, scenario);
106
- });
107
- }
108
- startBrowserRPA(event, callback, baseURL, fileName = '') {
109
- return __awaiter(this, void 0, void 0, function* () {
110
- this.changeModelData({
111
- baseURL: baseURL,
112
- environment: '',
113
- digitalProduct: ''
114
- });
115
- this.uploadModel.currentSuite = fileName;
116
- return this.puppeteer.runRPA(event, callback);
117
- });
118
- }
119
- getUploadModel() {
120
- return this.uploadModel;
121
- }
122
- }
123
- export const StepStatus = StatusOfStep;
124
- const auxta = new AuxTA();
125
- export default auxta;
@@ -1,57 +0,0 @@
1
- export declare function setupConfig(jsonConfig: any): {
2
- auxtaURL: string;
3
- baseURL: string;
4
- siteURL: string;
5
- organization: string;
6
- netlifyPath: string;
7
- digitalProduct: string;
8
- bucket: string;
9
- token: string;
10
- screenWidth: number;
11
- screenHeight: number;
12
- timeout: number;
13
- suitesList: never[];
14
- googleEmail: string;
15
- auxtaCredentials: {
16
- email: string;
17
- password: string;
18
- };
19
- };
20
- export declare function setupOverrideConfig(overrideConfig: any): {
21
- auxtaURL: string;
22
- baseURL: string;
23
- siteURL: string;
24
- organization: string;
25
- netlifyPath: string;
26
- digitalProduct: string;
27
- bucket: string;
28
- token: string;
29
- screenWidth: number;
30
- screenHeight: number;
31
- timeout: number;
32
- suitesList: never[];
33
- googleEmail: string;
34
- auxtaCredentials: {
35
- email: string;
36
- password: string;
37
- };
38
- };
39
- export declare let config: {
40
- auxtaURL: string;
41
- baseURL: string;
42
- siteURL: string;
43
- organization: string;
44
- netlifyPath: string;
45
- digitalProduct: string;
46
- bucket: string;
47
- token: string;
48
- screenWidth: number;
49
- screenHeight: number;
50
- timeout: number;
51
- suitesList: never[];
52
- googleEmail: string;
53
- auxtaCredentials: {
54
- email: string;
55
- password: string;
56
- };
57
- };
@@ -1,64 +0,0 @@
1
- export function setupConfig(jsonConfig) {
2
- if (!jsonConfig.baseURL)
3
- throw new Error("baseURL");
4
- config.baseURL = jsonConfig.baseURL;
5
- if (!jsonConfig.digitalProduct)
6
- throw new Error("digitalProduct");
7
- config.digitalProduct = jsonConfig.digitalProduct;
8
- if (!jsonConfig.testsURL)
9
- throw new Error("testsURL");
10
- config.bucket = jsonConfig.bucket;
11
- if (!jsonConfig.testsURL)
12
- throw new Error("testsURL");
13
- config.netlifyPath = (process.env.ENVIRONMENT == 'LOCAL') ? 'http://localhost:9999/' : jsonConfig.testsURL;
14
- if (!jsonConfig.organization)
15
- throw new Error("organization");
16
- config.organization = jsonConfig.organization;
17
- if (!jsonConfig.email)
18
- throw new Error("email");
19
- config.auxtaCredentials.email = jsonConfig.email;
20
- if (!process.env.auxta_password)
21
- throw new Error("password");
22
- config.auxtaCredentials.password = process.env.auxta_password;
23
- if (!jsonConfig.suitesList)
24
- throw new Error("suitesList");
25
- config.suitesList = jsonConfig.suitesList;
26
- config.googleEmail = jsonConfig.googleEmail;
27
- if (jsonConfig.timeout)
28
- config.timeout = jsonConfig.timeout;
29
- if (jsonConfig.screenWidth)
30
- config.screenWidth = jsonConfig.screenWidth;
31
- if (jsonConfig.screenHeight)
32
- config.screenHeight = jsonConfig.screenHeight;
33
- return config;
34
- }
35
- export function setupOverrideConfig(overrideConfig) {
36
- if (overrideConfig.baseURL)
37
- config.baseURL = overrideConfig.baseURL;
38
- if (overrideConfig.digitalProduct)
39
- config.digitalProduct = overrideConfig.digitalProduct;
40
- if (overrideConfig.screenWidth)
41
- config.screenWidth = overrideConfig.screenWidth;
42
- if (overrideConfig.screenHeight)
43
- config.screenHeight = overrideConfig.screenHeight;
44
- return config;
45
- }
46
- export let config = {
47
- auxtaURL: "http://localhost:8888/.netlify/functions/",
48
- baseURL: "",
49
- siteURL: "",
50
- organization: "",
51
- netlifyPath: "",
52
- digitalProduct: "",
53
- bucket: "",
54
- token: "",
55
- screenWidth: 1920,
56
- screenHeight: 1080,
57
- timeout: 60000,
58
- suitesList: [],
59
- googleEmail: "",
60
- auxtaCredentials: {
61
- email: "",
62
- password: "",
63
- },
64
- };
@@ -1,7 +0,0 @@
1
- export declare enum StatusOfStep {
2
- PASSED = "passed",
3
- FAILED = "failed",
4
- SKIPPED = "skipped",
5
- SUGGESTION = "suggestion"
6
- }
7
- export default StatusOfStep;
@@ -1,8 +0,0 @@
1
- export var StatusOfStep;
2
- (function (StatusOfStep) {
3
- StatusOfStep["PASSED"] = "passed";
4
- StatusOfStep["FAILED"] = "failed";
5
- StatusOfStep["SKIPPED"] = "skipped";
6
- StatusOfStep["SUGGESTION"] = "suggestion";
7
- })(StatusOfStep || (StatusOfStep = {}));
8
- export default StatusOfStep;
@@ -1,10 +0,0 @@
1
- /// <reference types="node" />
2
- export declare function returnImage(code: number, screenshot: Buffer): {
3
- isBase64Encoded: boolean;
4
- statusCode: number;
5
- headers: {
6
- "Content-Type": string;
7
- "Content-Length": string;
8
- };
9
- body: string;
10
- };
@@ -1,11 +0,0 @@
1
- export function returnImage(code, screenshot) {
2
- return {
3
- isBase64Encoded: true,
4
- statusCode: code,
5
- headers: {
6
- "Content-Type": "image/png",
7
- "Content-Length": screenshot.length.toString()
8
- },
9
- body: screenshot.toString("base64")
10
- };
11
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,24 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import { join } from 'path';
11
- (() => __awaiter(void 0, void 0, void 0, function* () {
12
- const r = /^--params\.suite=(.*)$/g;
13
- let suite = process.argv.find(el => !!el.match(r));
14
- if (!suite)
15
- throw `Locale is undefined`;
16
- let suites = suite.replace('--params.suite=', '');
17
- let suitesArr = suites.split(',');
18
- if (!suitesArr)
19
- suitesArr = [suites];
20
- for (const suite of suitesArr) {
21
- let f = require(join(process.cwd(), 'build', 'functions', 'controllers', suite));
22
- yield f.handler();
23
- }
24
- }))();
@@ -1,14 +0,0 @@
1
- /// <reference types="node" />
2
- import { UploadModel } from "../models/upload.model";
3
- export declare function onTestEnd(body: any, featureName: string, scenarioName: string, statusCode: number, screenshotBuffer?: Buffer, errMessage?: object): Promise<{
4
- nextSuites?: undefined;
5
- reportId?: undefined;
6
- currentSuite?: undefined;
7
- retries?: undefined;
8
- } | {
9
- nextSuites: string[];
10
- reportId: string | undefined;
11
- currentSuite: string | undefined;
12
- retries: string;
13
- } | undefined>;
14
- export declare function afterComplete(body: UploadModel): Promise<void>;
@@ -1,59 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import { basename } from 'path';
11
- import log from "../services/log.service";
12
- import { postNotifications, updateReport, uploadScenario, uploadStep } from '../services/report.service';
13
- import { startSuite } from '../utilities/start-suite.helper';
14
- import { StatusOfStep } from "../enums/status-of.step";
15
- export function onTestEnd(body, featureName, scenarioName, statusCode, screenshotBuffer, errMessage) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- let isFinal = false;
18
- if (process.env.ENVIRONMENT == "LIVE") {
19
- console.log('--- Uploading scenario and feature for AUXTA report ---');
20
- const stepsArr = log.returnScenarioReport();
21
- try {
22
- const stepRes = yield uploadStep(stepsArr, scenarioName, screenshotBuffer, errMessage);
23
- const scenarioRes = yield uploadScenario(stepRes, featureName, basename(__filename), (statusCode != 200));
24
- const scenario = {
25
- scenarioId: scenarioRes.scenarioRef,
26
- scenarioName: scenarioRes.name,
27
- scenarioUri: scenarioRes.uri,
28
- status: scenarioRes.status,
29
- scenariosCount: scenarioRes.scenariosCount,
30
- lastFiveStepsHash: scenarioRes.lastFiveStepsHash
31
- };
32
- const stepCounts = {
33
- failedSteps: log.getStatusCount(StatusOfStep.FAILED),
34
- passedSteps: log.getStatusCount(StatusOfStep.PASSED),
35
- skippedSteps: log.getStatusCount(StatusOfStep.SKIPPED),
36
- suggestedSteps: log.getStatusCount(StatusOfStep.SUGGESTION)
37
- };
38
- isFinal = (!(body.nextSuites && body.nextSuites.length > 0));
39
- yield updateReport(body.reportId, scenario, stepCounts, isFinal);
40
- console.log('--- Finished uploading report data to AUXTA ---');
41
- }
42
- catch (error) {
43
- console.log('--- Failed to update report in AUXTA ---');
44
- console.log(error);
45
- }
46
- }
47
- if (isFinal)
48
- yield afterComplete(body);
49
- else if (body && body.nextSuites) {
50
- return yield startSuite(body.nextSuites, body.reportId);
51
- }
52
- });
53
- }
54
- export function afterComplete(body) {
55
- return __awaiter(this, void 0, void 0, function* () {
56
- if (process.env.ENVIRONMENT == "LIVE")
57
- yield postNotifications(body);
58
- });
59
- }