@zohodesk/testinglibrary 0.4.14-experimental → 0.4.16-experimental

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 (130) hide show
  1. package/.gitlab-ci.yml +2 -1
  2. package/README.md +32 -6
  3. package/build/core/playwright/fixtures.js +24 -0
  4. package/build/core/playwright/helpers/auth/checkAuthCookies.js +8 -2
  5. package/build/core/playwright/helpers/auth/loginSteps.js +18 -28
  6. package/build/core/playwright/index.js +10 -23
  7. package/build/core/playwright/setup/config-creator.js +6 -5
  8. package/build/core/playwright/setup/config-utils.js +8 -25
  9. package/build/core/playwright/tagProcessor.js +18 -28
  10. package/build/core/playwright/test-runner.js +1 -1
  11. package/build/decorators.d.ts +1 -1
  12. package/build/decorators.js +1 -1
  13. package/build/setup-folder-structure/samples/actors-index.js +2 -0
  14. package/build/setup-folder-structure/samples/auth-setup-sample.js +14 -66
  15. package/build/setup-folder-structure/samples/editions-index.js +3 -0
  16. package/build/setup-folder-structure/samples/free-sample.json +25 -0
  17. package/build/setup-folder-structure/samples/settings.json +7 -0
  18. package/build/setup-folder-structure/setupProject.js +18 -5
  19. package/nobdd/uat/conf/nobdd/uat.config.js +4 -11
  20. package/nobdd/uat.config.js +3 -8
  21. package/npm-shrinkwrap.json +7245 -3251
  22. package/package.json +9 -9
  23. package/build/bdd-framework/cli/commands/env.js +0 -42
  24. package/build/bdd-framework/cli/commands/export.js +0 -62
  25. package/build/bdd-framework/cli/commands/test.js +0 -64
  26. package/build/bdd-framework/cli/index.js +0 -11
  27. package/build/bdd-framework/cli/options.js +0 -19
  28. package/build/bdd-framework/cli/worker.js +0 -13
  29. package/build/bdd-framework/config/configDir.js +0 -35
  30. package/build/bdd-framework/config/enrichReporterData.js +0 -23
  31. package/build/bdd-framework/config/env.js +0 -50
  32. package/build/bdd-framework/config/index.js +0 -94
  33. package/build/bdd-framework/config/lang.js +0 -14
  34. package/build/bdd-framework/cucumber/buildStepDefinition.js +0 -43
  35. package/build/bdd-framework/cucumber/createTestStep.js +0 -43
  36. package/build/bdd-framework/cucumber/formatter/EventDataCollector.js +0 -126
  37. package/build/bdd-framework/cucumber/formatter/GherkinDocumentParser.js +0 -72
  38. package/build/bdd-framework/cucumber/formatter/PickleParser.js +0 -25
  39. package/build/bdd-framework/cucumber/formatter/durationHelpers.js +0 -13
  40. package/build/bdd-framework/cucumber/formatter/getColorFns.js +0 -57
  41. package/build/bdd-framework/cucumber/formatter/index.js +0 -16
  42. package/build/bdd-framework/cucumber/formatter/locationHelpers.js +0 -16
  43. package/build/bdd-framework/cucumber/loadConfig.js +0 -17
  44. package/build/bdd-framework/cucumber/loadFeatures.js +0 -70
  45. package/build/bdd-framework/cucumber/loadSnippetBuilder.js +0 -20
  46. package/build/bdd-framework/cucumber/loadSteps.js +0 -47
  47. package/build/bdd-framework/cucumber/resolveFeaturePaths.js +0 -62
  48. package/build/bdd-framework/cucumber/stepArguments.js +0 -21
  49. package/build/bdd-framework/cucumber/types.js +0 -5
  50. package/build/bdd-framework/cucumber/valueChecker.js +0 -23
  51. package/build/bdd-framework/decorators.js +0 -18
  52. package/build/bdd-framework/gen/fixtures.js +0 -48
  53. package/build/bdd-framework/gen/formatter.js +0 -167
  54. package/build/bdd-framework/gen/i18n.js +0 -39
  55. package/build/bdd-framework/gen/index.js +0 -197
  56. package/build/bdd-framework/gen/specialTags.js +0 -70
  57. package/build/bdd-framework/gen/testFile.js +0 -470
  58. package/build/bdd-framework/gen/testMeta.js +0 -60
  59. package/build/bdd-framework/gen/testNode.js +0 -35
  60. package/build/bdd-framework/gen/testPoms.js +0 -133
  61. package/build/bdd-framework/hooks/scenario.js +0 -130
  62. package/build/bdd-framework/hooks/worker.js +0 -89
  63. package/build/bdd-framework/index.js +0 -52
  64. package/build/bdd-framework/playwright/fixtureParameterNames.js +0 -93
  65. package/build/bdd-framework/playwright/getLocationInFile.js +0 -79
  66. package/build/bdd-framework/playwright/loadConfig.js +0 -42
  67. package/build/bdd-framework/playwright/loadUtils.js +0 -33
  68. package/build/bdd-framework/playwright/testTypeImpl.js +0 -79
  69. package/build/bdd-framework/playwright/transform.js +0 -88
  70. package/build/bdd-framework/playwright/types.js +0 -12
  71. package/build/bdd-framework/playwright/utils.js +0 -56
  72. package/build/bdd-framework/reporter/cucumber/base.js +0 -52
  73. package/build/bdd-framework/reporter/cucumber/custom.js +0 -73
  74. package/build/bdd-framework/reporter/cucumber/helper.js +0 -12
  75. package/build/bdd-framework/reporter/cucumber/html.js +0 -40
  76. package/build/bdd-framework/reporter/cucumber/index.js +0 -74
  77. package/build/bdd-framework/reporter/cucumber/json.js +0 -312
  78. package/build/bdd-framework/reporter/cucumber/junit.js +0 -205
  79. package/build/bdd-framework/reporter/cucumber/message.js +0 -20
  80. package/build/bdd-framework/reporter/cucumber/messagesBuilder/AttachmentMapper.js +0 -82
  81. package/build/bdd-framework/reporter/cucumber/messagesBuilder/Builder.js +0 -197
  82. package/build/bdd-framework/reporter/cucumber/messagesBuilder/GherkinDocument.js +0 -43
  83. package/build/bdd-framework/reporter/cucumber/messagesBuilder/GherkinDocumentClone.js +0 -52
  84. package/build/bdd-framework/reporter/cucumber/messagesBuilder/GherkinDocuments.js +0 -105
  85. package/build/bdd-framework/reporter/cucumber/messagesBuilder/Hook.js +0 -70
  86. package/build/bdd-framework/reporter/cucumber/messagesBuilder/Meta.js +0 -45
  87. package/build/bdd-framework/reporter/cucumber/messagesBuilder/Pickles.js +0 -27
  88. package/build/bdd-framework/reporter/cucumber/messagesBuilder/Projects.js +0 -38
  89. package/build/bdd-framework/reporter/cucumber/messagesBuilder/TestCase.js +0 -128
  90. package/build/bdd-framework/reporter/cucumber/messagesBuilder/TestCaseRun.js +0 -154
  91. package/build/bdd-framework/reporter/cucumber/messagesBuilder/TestCaseRunHooks.js +0 -123
  92. package/build/bdd-framework/reporter/cucumber/messagesBuilder/TestStepAttachments.js +0 -67
  93. package/build/bdd-framework/reporter/cucumber/messagesBuilder/TestStepRun.js +0 -114
  94. package/build/bdd-framework/reporter/cucumber/messagesBuilder/index.js +0 -30
  95. package/build/bdd-framework/reporter/cucumber/messagesBuilder/pwStepUtils.js +0 -70
  96. package/build/bdd-framework/reporter/cucumber/messagesBuilder/timing.js +0 -35
  97. package/build/bdd-framework/reporter/cucumber/messagesBuilder/types.js +0 -5
  98. package/build/bdd-framework/run/StepInvoker.js +0 -69
  99. package/build/bdd-framework/run/bddData/index.js +0 -59
  100. package/build/bdd-framework/run/bddData/types.js +0 -5
  101. package/build/bdd-framework/run/bddFixtures.js +0 -192
  102. package/build/bdd-framework/run/bddWorld.js +0 -79
  103. package/build/bdd-framework/run/bddWorldInternal.js +0 -11
  104. package/build/bdd-framework/snippets/index.js +0 -132
  105. package/build/bdd-framework/snippets/snippetSyntax.js +0 -43
  106. package/build/bdd-framework/snippets/snippetSyntaxDecorators.js +0 -26
  107. package/build/bdd-framework/snippets/snippetSyntaxTs.js +0 -18
  108. package/build/bdd-framework/stepDefinitions/createBdd.js +0 -66
  109. package/build/bdd-framework/stepDefinitions/decorators/class.js +0 -68
  110. package/build/bdd-framework/stepDefinitions/decorators/steps.js +0 -99
  111. package/build/bdd-framework/stepDefinitions/defineStep.js +0 -62
  112. package/build/bdd-framework/stepDefinitions/stepConfig.js +0 -24
  113. package/build/bdd-framework/steps/createBdd.js +0 -78
  114. package/build/bdd-framework/steps/decorators/class.js +0 -68
  115. package/build/bdd-framework/steps/decorators/steps.js +0 -98
  116. package/build/bdd-framework/steps/defineStep.js +0 -62
  117. package/build/bdd-framework/steps/stepConfig.js +0 -24
  118. package/build/bdd-framework/utils/AutofillMap.js +0 -20
  119. package/build/bdd-framework/utils/exit.js +0 -62
  120. package/build/bdd-framework/utils/index.js +0 -93
  121. package/build/bdd-framework/utils/jsStringWrap.js +0 -44
  122. package/build/bdd-framework/utils/logger.js +0 -30
  123. package/build/bdd-framework/utils/stripAnsiEscapes.js +0 -20
  124. package/build/core/playwright/constants/fileMutexConfig.js +0 -15
  125. package/build/core/playwright/helpers/checkAuthDirectory.js +0 -17
  126. package/build/core/playwright/helpers/fileMutex.js +0 -56
  127. package/build/setup-folder-structure/samples/authUsers-sample.json +0 -9
  128. package/build/setup-folder-structure/samples/env-config-sample.json +0 -21
  129. package/build/test/core/playwright/helpers/__tests__/fileMutex.test.js +0 -94
  130. package/nobdd/src/App.js +0 -7
@@ -1,56 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _path = _interopRequireDefault(require("path"));
9
- var _properLockfile = _interopRequireDefault(require("proper-lockfile"));
10
- var _fs = require("fs");
11
- function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
12
- function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
13
- function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
14
- var _getLockFilePath = /*#__PURE__*/new WeakSet();
15
- var _createDirectoryIfNotExist = /*#__PURE__*/new WeakSet();
16
- class FileMutex {
17
- constructor(directory, lockFileName, options = {}) {
18
- _classPrivateMethodInitSpec(this, _createDirectoryIfNotExist);
19
- _classPrivateMethodInitSpec(this, _getLockFilePath);
20
- this.directory = directory;
21
- this.lockFileName = lockFileName + ".lock";
22
- this.options = options;
23
- }
24
- async acquire() {
25
- _classPrivateMethodGet(this, _createDirectoryIfNotExist, _createDirectoryIfNotExist2).call(this);
26
- const lockFilePath = _path.default.resolve(this.directory, this.lockFileName);
27
- try {
28
- if (!(0, _fs.existsSync)(lockFilePath)) {
29
- console.warn(`[DEBUG] Recreating missing lock file:`, this.lockFileName);
30
- (0, _fs.writeFileSync)(lockFilePath, 'locked');
31
- }
32
- await _properLockfile.default.lock(_classPrivateMethodGet(this, _getLockFilePath, _getLockFilePath2).call(this), this.options);
33
- } catch (err) {
34
- throw new Error(`Failed to acquire lock after ${this.options.retries.retries} attempts: ${err.message}`);
35
- }
36
- }
37
- async release() {
38
- try {
39
- await _properLockfile.default.unlock(_classPrivateMethodGet(this, _getLockFilePath, _getLockFilePath2).call(this));
40
- //unlinkSync(this.#getLockFilePath());
41
- } catch (err) {
42
- throw new Error(`Failed to release lock: ${err.message}`);
43
- }
44
- }
45
- }
46
- function _getLockFilePath2() {
47
- return _path.default.resolve(_path.default.join(this.directory, this.lockFileName));
48
- }
49
- function _createDirectoryIfNotExist2() {
50
- if (!(0, _fs.existsSync)(this.directory)) {
51
- (0, _fs.mkdirSync)(this.directory, {
52
- recursive: true
53
- });
54
- }
55
- }
56
- var _default = exports.default = FileMutex;
@@ -1,9 +0,0 @@
1
- [
2
- {
3
- "useremail": "/ user name /",
4
- "password": "/ password /",
5
- "description": "/ description/",
6
- "filename": "user.json",
7
- "locator": "/ selector to identify page has been loaded completely /"
8
- }
9
- ]
@@ -1,21 +0,0 @@
1
- {
2
- "dev": {
3
- "domain": "https://desk.localzoho.com/agent",
4
- "orgName": "org-name",
5
- "deptName": "dept-name",
6
- "moduleName": "module-name",
7
- "devURL": "Provide your devURL here"
8
- },
9
- "prod": {
10
- "domain": "https://desk.localzoho.com/agent",
11
- "orgName": "org-name",
12
- "deptName": "dept-name",
13
- "moduleName": "module-name"
14
- },
15
- "k8test": {
16
- "domain": "https://desk.localzoho.com/agent",
17
- "orgName": "org-name",
18
- "deptName": "dept-name",
19
- "moduleName": "module-name"
20
- }
21
- }
@@ -1,94 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _fileMutex = _interopRequireDefault(require("../../../../../core/playwright/helpers/fileMutex"));
5
- var _lockfile = _interopRequireDefault(require("lockfile"));
6
- var _path = _interopRequireDefault(require("path"));
7
- var _fs = _interopRequireDefault(require("fs"));
8
- jest.mock('lockfile');
9
- jest.mock('fs');
10
- describe('FileMutex', () => {
11
- const mockDirectory = '/tmp';
12
- const mockFileName = 'test_user';
13
- const mockTimeout = {
14
- wait: 5000,
15
- retries: 5,
16
- stale: 60000
17
- };
18
- let fileMutex;
19
- beforeEach(() => {
20
- fileMutex = new _fileMutex.default(mockDirectory, mockFileName, mockTimeout);
21
- });
22
- afterEach(() => {
23
- jest.clearAllMocks();
24
- });
25
- describe('acquire', () => {
26
- it('should resolve when lockfile.lock succeeds and call getLockFilePath correctly', async () => {
27
- const expectedPath = _path.default.resolve(_path.default.join(mockDirectory, `./${mockFileName}.lock`));
28
- _lockfile.default.lock.mockImplementation((lockPath, options, callback) => {
29
- expect(lockPath).toBe(expectedPath);
30
- expect(options).toEqual(mockTimeout);
31
- callback(null);
32
- });
33
- await expect(fileMutex.acquire()).resolves.toBeUndefined();
34
- expect(_lockfile.default.lock).toHaveBeenCalledWith(expectedPath, mockTimeout, expect.any(Function));
35
- });
36
- it('should reject when lockfile.lock fails', async () => {
37
- const mockError = new Error('Lock failed');
38
- _lockfile.default.lock.mockImplementation((lockPath, options, callback) => {
39
- expect(lockPath).toBe(_path.default.resolve(_path.default.join(mockDirectory, `./${mockFileName}.lock`)));
40
- expect(options).toEqual(mockTimeout);
41
- callback(mockError);
42
- });
43
- await expect(fileMutex.acquire()).rejects.toThrow('Lock failed');
44
- expect(_lockfile.default.lock).toHaveBeenCalled();
45
- });
46
- it('should create the directory if it does not exist and acquire the lock', async () => {
47
- _fs.default.existsSync.mockReturnValue(false);
48
- _fs.default.mkdirSync.mockImplementation((dir, options) => {
49
- expect(dir).toBe(mockDirectory);
50
- expect(options).toEqual({
51
- recursive: true
52
- });
53
- });
54
- _lockfile.default.lock.mockImplementation((lockPath, options, callback) => {
55
- expect(lockPath).toBe(_path.default.resolve(_path.default.join(mockDirectory, `./${mockFileName}.lock`)));
56
- expect(options).toEqual(mockTimeout);
57
- callback(null);
58
- });
59
- await expect(fileMutex.acquire()).resolves.toBeUndefined();
60
- expect(_fs.default.existsSync).toHaveBeenCalledWith(mockDirectory);
61
- expect(_fs.default.mkdirSync).toHaveBeenCalledWith(mockDirectory, {
62
- recursive: true
63
- });
64
- expect(_lockfile.default.lock).toHaveBeenCalled();
65
- });
66
- it('should not create the directory if it already exists', async () => {
67
- _fs.default.existsSync.mockReturnValue(true);
68
- _lockfile.default.lock.mockImplementation((lockPath, options, callback) => {
69
- callback(null);
70
- });
71
- await expect(fileMutex.acquire()).resolves.toBeUndefined();
72
- expect(_fs.default.mkdirSync).not.toHaveBeenCalled();
73
- expect(_lockfile.default.lock).toHaveBeenCalled();
74
- });
75
- });
76
- describe('release', () => {
77
- it('should resolve when lockfile.unlock succeeds and call getLockFilePath correctly', async () => {
78
- const expectedPath = _path.default.resolve(_path.default.join(mockDirectory, `./${mockFileName}.lock`));
79
- _lockfile.default.unlock.mockImplementation((path, callback) => {
80
- callback(null);
81
- });
82
- await expect(fileMutex.release()).resolves.toBeUndefined();
83
- expect(_lockfile.default.unlock).toHaveBeenCalledWith(expectedPath, expect.any(Function));
84
- });
85
- it('should reject when lockfile.unlock fails', async () => {
86
- const mockError = new Error('Unlock failed');
87
- _lockfile.default.unlock.mockImplementation((path, callback) => {
88
- callback(mockError);
89
- });
90
- await expect(fileMutex.release()).rejects.toThrow('Unlock failed');
91
- expect(_lockfile.default.unlock).toHaveBeenCalled();
92
- });
93
- });
94
- });
package/nobdd/src/App.js DELETED
@@ -1,7 +0,0 @@
1
- export function add(a, b) {
2
- return a + b;
3
- }
4
-
5
- export function greet(name) {
6
- return `Hello, ${name}!`;
7
- }