@zeesoft/i18n-verify 2.1.4 → 2.1.6

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 (61) hide show
  1. package/dist/genrc.mjs +1 -0
  2. package/dist/i18n.mjs +1 -0
  3. package/dist/index.mjs +1 -0
  4. package/package.json +25 -17
  5. package/postinstall.js +28 -0
  6. package/readme.md +21 -1
  7. package/dist/driver/adapters/cypress.js +0 -161
  8. package/dist/driver/adapters/nightwatch.js +0 -160
  9. package/dist/driver/adapters/selenium.js +0 -90
  10. package/dist/driver/adapters/webdriver.io.js +0 -81
  11. package/dist/driver/baseDriver.js +0 -93
  12. package/dist/driver/factory.js +0 -27
  13. package/dist/index.js +0 -52
  14. package/dist/lib/config.js +0 -102
  15. package/dist/lib/i18n.js +0 -259
  16. package/dist/lib/reports.js +0 -140
  17. package/dist/lib/validator/base.js +0 -125
  18. package/dist/lib/validator/currency.js +0 -94
  19. package/dist/lib/validator/date.js +0 -72
  20. package/dist/lib/validator/datetime.js +0 -72
  21. package/dist/lib/validator/index.js +0 -156
  22. package/dist/lib/validator/number.js +0 -58
  23. package/dist/lib/validator/percentage.js +0 -78
  24. package/dist/lib/validator/string.js +0 -172
  25. package/dist/lib/validator/time.js +0 -72
  26. package/dist/template/report.html +0 -1678
  27. package/dist/utils/cache.js +0 -47
  28. package/dist/utils/common.js +0 -18
  29. package/dist/utils/configFile.js +0 -65
  30. package/dist/utils/constants.js +0 -148
  31. package/dist/utils/cypress.js +0 -120
  32. package/dist/utils/dateUtils/chronoNode.js +0 -52
  33. package/dist/utils/file.js +0 -61
  34. package/dist/utils/graphic.js +0 -57
  35. package/dist/utils/logs.js +0 -79
  36. package/dist/utils/objects/cacheData.js +0 -72
  37. package/dist/utils/objects/metaData.js +0 -29
  38. package/dist/utils/objects/reportData.js +0 -30
  39. package/dist/utils/objects/statData.js +0 -380
  40. package/dist/utils/objects/stringData.js +0 -64
  41. package/dist/utils/objects/stringInfo.js +0 -51
  42. package/dist/utils/regex.js +0 -8
  43. package/dist/utils/reportFactory/base.js +0 -59
  44. package/dist/utils/reportFactory/html/index.js +0 -51
  45. package/dist/utils/reportFactory/html/template/body.js +0 -117
  46. package/dist/utils/reportFactory/html/template/css.js +0 -476
  47. package/dist/utils/reportFactory/html/template/html.js +0 -63
  48. package/dist/utils/reportFactory/html/template/javascript/data.js +0 -66
  49. package/dist/utils/reportFactory/html/template/javascript/global.js +0 -45
  50. package/dist/utils/reportFactory/html/template/javascript/grid.js +0 -129
  51. package/dist/utils/reportFactory/html/template/javascript/index.js +0 -22
  52. package/dist/utils/reportFactory/html/template/javascript/insight.js +0 -248
  53. package/dist/utils/reportFactory/html/template/javascript/log.js +0 -19
  54. package/dist/utils/reportFactory/html/template/javascript/menuBar.js +0 -123
  55. package/dist/utils/reportFactory/html/template/javascript/overview.js +0 -818
  56. package/dist/utils/reportFactory/index.js +0 -36
  57. package/dist/utils/reportFactory/table.js +0 -95
  58. package/dist/utils/resource.js +0 -58
  59. package/dist/utils/runtime.js +0 -36
  60. package/dist/utils/scripts/genreport.js +0 -1
  61. package/dist/utils/scripts/postinstall.js +0 -22
@@ -1,160 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _baseDriver = _interopRequireDefault(require("../baseDriver.js"));
8
- var _logs = _interopRequireDefault(require("../../utils/logs.js"));
9
- var _chromeRemoteInterface = _interopRequireDefault(require("chrome-remote-interface"));
10
- var _fs = _interopRequireDefault(require("fs"));
11
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
- // Default import to access CDP
13
-
14
- class NightWatchDriver extends _baseDriver.default {
15
- constructor(driver) {
16
- super(driver);
17
- }
18
- getElement(locator) {
19
- return this.$driver.element.find({
20
- selector: locator,
21
- locateStrategy: locator.startsWith('/') ? 'xpath' : 'css selector'
22
- });
23
- }
24
- async getElements(locator) {
25
- return await this.$driver.element.findAll({
26
- selector: locator,
27
- locateStrategy: locator.startsWith('/') ? 'xpath' : 'css selector'
28
- });
29
- }
30
- async getText(element) {
31
- return await element.getText();
32
- }
33
- async getTitle(element) {
34
- return await element.getAttribute('title');
35
- }
36
- async getPlaceholderText(element) {
37
- return await element.getAttribute('placeholder');
38
- }
39
- async getAltText(element) {
40
- return await element.getAttribute('alt');
41
- }
42
- async getTagName(element) {
43
- return await element.getTagName();
44
- }
45
- async getValue(element) {
46
- return await element.getAttribute('value');
47
- }
48
- async getElementID(element) {
49
- return await element.getAttribute('id');
50
- }
51
- async getElementDimension(element) {
52
- const eleSize = await element.getRect();
53
- if (![null, '', undefined].includes(eleSize)) {
54
- return [eleSize.x, eleSize.y, eleSize.height, eleSize.width];
55
- }
56
- }
57
- async isElementDisplayed(element) {
58
- return await this.$driver.isVisible(element);
59
- }
60
- async isElementPresent(element) {
61
- return await this.$driver.isPresent(element);
62
- }
63
- async getElementStrings(element) {
64
- const elementStrings = [];
65
- const textFields = [{
66
- type: 'eleTxt',
67
- value: await this.getText(element)
68
- }, {
69
- type: 'altTxt',
70
- value: await this.getAltText(element)
71
- }, {
72
- type: 'titleTxt',
73
- value: await this.getTitle(element)
74
- }, {
75
- type: 'placeTxt',
76
- value: await this.getPlaceholderText(element)
77
- }, {
78
- type: 'valueTxt',
79
- value: await this.getValue(element)
80
- }];
81
- textFields.forEach(({
82
- value
83
- }) => {
84
- if (this.checkIfNullOrEmpty(value)) {
85
- elementStrings.push(value);
86
- }
87
- });
88
- return elementStrings;
89
- }
90
- async getElementString(element) {
91
- let eleStr = null;
92
- const textFunctions = [this.getText, this.getAltText, this.getTitle, this.getPlaceholderText, this.getValue];
93
- for (const func of textFunctions) {
94
- eleStr = await func(element);
95
- if (eleStr !== null) return eleStr;
96
- }
97
- return eleStr;
98
- }
99
- async captureScreenshot(file) {
100
- await captureFullPage(this.$driver, file);
101
- }
102
- async getElementsCount(elements) {
103
- return elements.length;
104
- }
105
- async switchIframe(frameValue) {
106
- await this.$driver.frame(frameValue, () => {
107
- _logs.default.debug(`Switching to ${frameValue} frame`);
108
- });
109
- }
110
- async switchToParentframe() {
111
- await this.$driver.frame(null);
112
- }
113
- pause(time) {
114
- this.$driver.pause(time * 1000);
115
- }
116
- async onScreenStringHighlight(el, color) {
117
- await this.$driver.execute((el, color) => {
118
- el.style.border = `3px solid ${color}`;
119
- setTimeout(() => {
120
- el.style.border = 'none';
121
- }, 50);
122
- }, [el, color]);
123
- }
124
- async checkIfIframeIsPresent() {
125
- return new Promise(res => {
126
- this.$driver.isPresent({
127
- selector: '//iframe',
128
- locateStrategy: 'xpath',
129
- suppressNotFoundErrors: true
130
- }, result => {
131
- res(result.value);
132
- });
133
- });
134
- }
135
- async checkIfIframeBodyIsEmpty() {
136
- const bodyContent = await this.$driver.executeScript('return document.body.innerHTML');
137
- return (await bodyContent.trim()) === '' ? true : false;
138
- }
139
- }
140
- exports.default = NightWatchDriver;
141
- const captureFullPage = async ($driver, filePath) => {
142
- const client = await (0, _chromeRemoteInterface.default)({
143
- host: 'localhost',
144
- port: 9222
145
- });
146
- const {
147
- Page
148
- } = client;
149
- await Page.enable();
150
- const {
151
- data
152
- } = await Page.captureScreenshot({
153
- format: 'png',
154
- captureBeyondViewport: true
155
- });
156
- const screenshotBuffer = Buffer.from(data, 'base64');
157
- _fs.default.writeFileSync(filePath, screenshotBuffer);
158
- console.log(`Screenshot saved as: ${filePath}`);
159
- await client.close();
160
- };
@@ -1,90 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _baseDriver = _interopRequireDefault(require("../baseDriver.js"));
8
- var _fs = _interopRequireDefault(require("fs"));
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- class SeleniumDriver extends _baseDriver.default {
11
- constructor(driver) {
12
- super(driver);
13
- }
14
- async getElement(locator) {
15
- return await this.driver.findElement(locator);
16
- }
17
- async getElements(locator) {
18
- return await this.driver.findElements(locator);
19
- }
20
- async getText(element) {
21
- return await element.getText();
22
- }
23
- async getTitle() {
24
- return await this.driver.getTitle();
25
- }
26
-
27
- // async getTitle(element) {
28
- // return await element.getAttribute('title');
29
- // }
30
-
31
- // async getPlaceholderText(element, placeholder) {
32
- // return await element.getAttribute(placeholder);
33
- // }
34
-
35
- // async getAltText(element, alt) {
36
- // return await element.getAttribute(alt);
37
- // }
38
-
39
- async getAttribute(element, attributeName) {
40
- return await element.getAttribute(attributeName);
41
- }
42
- async getTagName(element) {
43
- return await element.getTagName();
44
- }
45
-
46
- // async getValue(element, value) {
47
- // return await element.getAttribute(value);
48
- // }
49
-
50
- async getElementDimension(element) {
51
- const eleSize = await element.getRect();
52
- if (![null, '', undefined].includes(eleSize)) {
53
- return [eleSize.x, eleSize.y, eleSize.height, eleSize.width];
54
- }
55
- }
56
- async isElementDisplayed(element) {
57
- return await element.isDisplayed();
58
- }
59
- async getElementStrings(element) {
60
- const elementStrings = [];
61
- const textFields = [{
62
- type: 'eleTxt',
63
- value: await this.getText(element)
64
- }, {
65
- type: 'altTxt',
66
- value: await this.getAttribute(element, 'alt')
67
- }, {
68
- type: 'titleTxt',
69
- value: await this.getAttribute(element, 'title')
70
- }, {
71
- type: 'placeTxt',
72
- value: await this.getAttribute(element, 'placeholder')
73
- }, {
74
- type: 'valueTxt',
75
- value: await this.getAttribute(element, 'value')
76
- }];
77
- textFields.forEach(({
78
- value
79
- }) => {
80
- if (this.checkIfNullOrEmpty(value)) {
81
- elementStrings.push(value);
82
- }
83
- });
84
- return elementStrings;
85
- }
86
- async getElementsCount(elements) {
87
- return elements.length;
88
- }
89
- }
90
- exports.default = SeleniumDriver;
@@ -1,81 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _baseDriver = _interopRequireDefault(require("../baseDriver.js"));
8
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
- class WebDriverIoDriver extends _baseDriver.default {
10
- constructor(driver) {
11
- super(driver);
12
- }
13
- getElement(locator) {
14
- return this.$driver.findElement('xpath', locator);
15
- }
16
- async getElements(locator) {
17
- const eleArray = await this.$driver.findElements('xpath', locator);
18
- return eleArray;
19
- }
20
- async getText(element) {
21
- return await $(element).getText();
22
- }
23
- async getTitle(element) {
24
- return await $(element).getAttribute('title');
25
- }
26
- async getPlaceholderText(element) {
27
- return await $(element).getAttribute('placeholder');
28
- }
29
- async getAltText(element) {
30
- return await $(element).getAttribute('alt');
31
- }
32
- async getTagName(element) {
33
- return await $(element).getTagName();
34
- }
35
- async getValue(element) {
36
- return await $(element).getValue();
37
- }
38
- async getElementDimension(element) {
39
- const eleSize = await this.$driver.getElementRect(element['element-6066-11e4-a52e-4f735466cecf']);
40
- if (![null, '', undefined].includes(eleSize)) {
41
- return [eleSize.x, eleSize.y, eleSize.height, eleSize.width];
42
- }
43
- }
44
- isElementDisplayed(element) {
45
- return $(element).isDisplayed();
46
- }
47
- async getElementStrings(element) {
48
- const elementStrings = [];
49
- const textFields = [{
50
- type: 'eleTxt',
51
- value: await this.getText(element)
52
- }, {
53
- type: 'altTxt',
54
- value: await this.getAltText(element)
55
- }, {
56
- type: 'titleTxt',
57
- value: await this.getTitle(element)
58
- }, {
59
- type: 'placeTxt',
60
- value: await this.getPlaceholderText(element)
61
- }, {
62
- type: 'valueTxt',
63
- value: await this.getValue(element)
64
- }];
65
- textFields.forEach(({
66
- value
67
- }) => {
68
- if (this.checkIfNullOrEmpty(value)) {
69
- elementStrings.push(value);
70
- }
71
- });
72
- return elementStrings;
73
- }
74
- async captureScreenshot(file) {
75
- await this.$driver.saveScreenshot(file);
76
- }
77
- async getElementsCount(elements) {
78
- return elements.length;
79
- }
80
- }
81
- exports.default = WebDriverIoDriver;
@@ -1,93 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- class BaseDriver {
8
- constructor(driver) {
9
- this.$driver = driver;
10
- }
11
- checkIfNullOrEmpty(value) {
12
- return ![null, '', undefined].includes(value);
13
- }
14
- getElement() {
15
- throw new Error('implementation is missing');
16
- }
17
- getElements() {
18
- throw new Error('implementation is missing');
19
- }
20
- getText() {
21
- throw new Error('implementation is missing');
22
- }
23
- getTitle() {
24
- throw new Error('implementation is missing');
25
- }
26
- getPlaceholderText() {
27
- throw new Error('implementation is missing');
28
- }
29
- getAltText() {
30
- throw new Error('implementation is missing');
31
- }
32
- getWidth() {
33
- throw new Error('implementation is missing');
34
- }
35
- getHeight() {
36
- throw new Error('implementation is missing');
37
- }
38
- getTagName() {
39
- throw new Error('implementation is missing');
40
- }
41
- getValue() {
42
- throw new Error('implementation is missing');
43
- }
44
- getLocation() {
45
- throw new Error('implementation is missing');
46
- }
47
- getElementDimension() {
48
- throw new Error('implementation is missing');
49
- }
50
- getElementID() {
51
- throw new Error('implementation is missing');
52
- }
53
- isElementDisplayed() {
54
- throw new Error('implementation is missing');
55
- }
56
- isElementPresent() {
57
- throw new Error('implementation is missing');
58
- }
59
- getElementString() {
60
- throw new Error('implementation is missing');
61
- }
62
- getElementStrings() {
63
- throw new Error('implementation is missing');
64
- }
65
- captureScreenshot() {
66
- throw new Error('implementation is missing');
67
- }
68
- getElementsCount() {
69
- throw new Error('implementation is missing');
70
- }
71
- switchIframe() {
72
- throw new Error('implementation is missing');
73
- }
74
- switchToParentframe() {
75
- throw new Error('implementation is missing');
76
- }
77
- pause() {
78
- throw new Error('implementation is missing');
79
- }
80
- onScreenStringHighlight() {
81
- throw new Error('implementation is missing');
82
- }
83
- checkIfIframeIsPresent() {
84
- throw new Error('implementation is missing');
85
- }
86
- checkIfIframeBodyIsEmpty() {
87
- throw new Error('implementation is missing');
88
- }
89
- printOnConsole(str) {
90
- console.log(str);
91
- }
92
- }
93
- exports.default = BaseDriver;
@@ -1,27 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.build = void 0;
7
- var _constants = require("../utils/constants.js");
8
- var _nightwatch = _interopRequireDefault(require("./adapters/nightwatch.js"));
9
- var _webdriverIo = _interopRequireDefault(require("./adapters/webdriver.io.js"));
10
- var _cypress = _interopRequireDefault(require("./adapters/cypress.js"));
11
- var _selenium = _interopRequireDefault(require("./adapters/selenium.js"));
12
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
- const build = (type, driver) => {
14
- switch (type) {
15
- case _constants.SYSTEM_TYPES.NIGHT_WATCH:
16
- return new _nightwatch.default(driver);
17
- case _constants.SYSTEM_TYPES.WEB_DRIVER_IO:
18
- return new _webdriverIo.default(driver);
19
- case _constants.SYSTEM_TYPES.CYPRESS:
20
- return new _cypress.default(driver);
21
- case _constants.SYSTEM_TYPES.SELENIUMJS:
22
- return new _selenium.default(driver);
23
- default:
24
- throw new Error("Unsupported framework");
25
- }
26
- };
27
- exports.build = build;
package/dist/index.js DELETED
@@ -1,52 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.verify = exports.systems = exports.setLocale = exports.logger = exports.getLocale = exports.genReportTable = exports.config = void 0;
7
- var _i18n = _interopRequireDefault(require("./lib/i18n.js"));
8
- var _constants = require("./utils/constants.js");
9
- var _config = _interopRequireDefault(require("./lib/config.js"));
10
- var _runtime = require("./utils/runtime.js");
11
- var _reports = _interopRequireDefault(require("./lib/reports.js"));
12
- var _logs = _interopRequireDefault(require("./utils/logs.js"));
13
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
- /// <reference path="../types/index.d.ts" />
15
-
16
- const logger = exports.logger = _logs.default;
17
- const config = (driver, locale) => {
18
- _config.default.set(driver, locale);
19
- (0, _runtime.loadDependencies)();
20
- };
21
- exports.config = config;
22
- const setLocale = locale => {
23
- _config.default.setLocale(locale);
24
- };
25
- exports.setLocale = setLocale;
26
- const genReportTable = () => {
27
- _reports.default.generateAsciiTable();
28
- _reports.default.generateHtml();
29
- };
30
- exports.genReportTable = genReportTable;
31
- const getLocale = () => {
32
- return _config.default.getLocale();
33
- };
34
- exports.getLocale = getLocale;
35
- const verify = async ({
36
- verificationArea,
37
- staticLocators,
38
- description
39
- }) => {
40
- const runner = _config.default.getRunner();
41
- if (!runner || !(runner instanceof _i18n.default)) {
42
- throw new Error('I18n runner is missing, make sure to set configuration');
43
- }
44
- await runner.verify({
45
- verificationArea,
46
- staticLocators,
47
- description
48
- });
49
- };
50
- exports.verify = verify;
51
- _config.default.init();
52
- const systems = exports.systems = _constants.SYSTEM_TYPES;
@@ -1,102 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _factory = require("../driver/factory.js");
8
- var _i18n = _interopRequireDefault(require("./i18n.js"));
9
- var _constants = require("../utils/constants.js");
10
- var _configFile = require("../utils/configFile.js");
11
- var _logs = _interopRequireDefault(require("../utils/logs.js"));
12
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
- class Config {
14
- static #driver;
15
- static #runner;
16
- static #type;
17
- static #locale;
18
- static #qaLocale;
19
- static #options;
20
- static #resources;
21
- static #ssCount;
22
- static init() {
23
- try {
24
- const config = (0, _configFile.readConfigFile)();
25
- (0, _configFile.validateConfig)(config);
26
- this.#type = config?.type;
27
- this.#qaLocale = config?.qaLocale;
28
- this.#options = config;
29
- this.#ssCount = 0;
30
- this.getGarbledChars();
31
- } catch (ex) {
32
- _logs.default.error(ex.message);
33
- throw ex;
34
- }
35
- }
36
- static set(driver, locale) {
37
- this.#locale = locale;
38
- this.#driver = (0, _factory.build)(this.#type, driver);
39
- }
40
- static getGarbledChars() {
41
- return [...(this.#options.garbledChars || []), ..._constants.GARBLED_CHARACTERS];
42
- }
43
- static getL10nReportsPath() {
44
- return this.#options.l10nReportsPath;
45
- }
46
- static setDriver(driver) {
47
- this.#driver = driver;
48
- }
49
- static setType(type) {
50
- this.#type = type;
51
- }
52
- static setLocale(locale) {
53
- this.#locale = locale;
54
- }
55
- static setOptions(options) {
56
- this.#options = options;
57
- }
58
- static getRunner() {
59
- if (Config.#runner) {
60
- return Config.#runner;
61
- }
62
- if (!Config.#driver) {
63
- throw new Error('Unable to initialize I18n Runner');
64
- }
65
- this.#runner = new _i18n.default(this.#driver);
66
- return this.#runner;
67
- }
68
- static getDriver() {
69
- return this.#driver;
70
- }
71
- static getLocale() {
72
- return this.#locale;
73
- }
74
- static getDefaultLocale() {
75
- return this.#options.defaultLocale;
76
- }
77
- static getType() {
78
- return this.#type;
79
- }
80
- static getOptions() {
81
- return this.#options;
82
- }
83
- static setQALocale(locale) {
84
- this.#qaLocale = locale;
85
- }
86
- static getQALocale() {
87
- return this.#qaLocale;
88
- }
89
- static setResourceBundle(resources) {
90
- this.#resources = resources;
91
- }
92
- static getResourceBundle(value) {
93
- return this.#resources?.[value] || this.#resources || [];
94
- }
95
- static incrementCounter() {
96
- this.#ssCount++;
97
- }
98
- static getSSCount() {
99
- return this.#ssCount;
100
- }
101
- }
102
- exports.default = Config;