@zohodesk/testinglibrary 0.0.10-n20-experimental → 0.0.12-n20-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.
package/.gitlab-ci.yml CHANGED
@@ -188,4 +188,19 @@ uat-data_generator:
188
188
  paths:
189
189
  - examples/uat/playwright-report
190
190
 
191
+ uat-search_indexing:
192
+ stage: uat
193
+ script:
194
+ - cd examples
195
+ - npm install $(npm pack ../../testing-framework | tail -1)
196
+ - output=$(npm run uat-search_indexing)
197
+ - echo "$output"
198
+ - node ../ValidateUATReport.js examples
199
+
200
+ artifacts:
201
+ when: always
202
+ paths:
203
+ - examples/uat/playwright-report
204
+
205
+
191
206
 
package/README.md CHANGED
@@ -17,7 +17,28 @@
17
17
 
18
18
  - npm run report
19
19
 
20
- ## Version History
20
+ ### v3.2.11 - 13-10-2025
21
+
22
+ ### Feature
23
+
24
+ - New step a search entity using {string} provided for search indexing, This step will use run time data generation response as input for the indexing
25
+
26
+ ### Issue fix
27
+ - Custom teardown comment provided
28
+
29
+ ### v3.2.10 - 09-10-2025
30
+
31
+ #### Enhancement
32
+ - A teardown option has been introduced in the configuration to manage and clean up login sessions stored in the NFS environment.
33
+
34
+
35
+ ### v3.2.9 - 26-09-2025
36
+
37
+ ### Enhancement
38
+
39
+ - Authentication deatils for data generation can be configured in org level
40
+ - reference link : https://learn.zoho.in/portal/zohocorp/knowledge/manual/client-uat/article/data-generation#_Tocpd3n7yt9ngeg
41
+
21
42
 
22
43
  ### v3.2.8 - 18-09-2025
23
44
 
@@ -30,11 +30,22 @@ async function entityIdReConstructor(payload) {
30
30
  if (typeof payload !== 'object' || payload === null) {
31
31
  throw new Error('Invalid payload. It must be a non-null object.');
32
32
  }
33
- if (!payload.arguments || typeof payload.arguments.entityId !== 'string') {
34
- throw new Error('Invalid payload.arguments.entityId. It must be a non-empty string.');
33
+
34
+ if (!payload.arguments || (!payload.arguments.entityId)) {
35
+ throw new Error('Invalid payload.arguments.entityId. It must be a non-empty string or array of strings.');
36
+ }
37
+
38
+ const entityId = payload.arguments.entityId;
39
+
40
+ // If it's already an array, validate and clean it
41
+ if (Array.isArray(entityId)) {
42
+ payload.arguments.entityId = entityId.map(id => id.trim());
43
+ }
44
+ // If it's a string, split and convert to array
45
+ else if (typeof entityId === 'string') {
46
+ payload.arguments.entityId = entityId.split(',').map(id => id.trim());
35
47
  }
36
48
 
37
- payload.arguments.entityId = payload.arguments.entityId.split(',').map(id => id.trim());
38
49
  return payload;
39
50
  }
40
51
 
@@ -1,8 +1,14 @@
1
1
  import {createBdd } from '@zohodesk/testinglibrary';
2
2
  import { executeRpcRequest , entityIdReConstructor } from '../helpers/rpcRequestHelper';
3
+ // import jp from 'jsonpath';
3
4
 
4
5
  const { Given } = createBdd();
5
6
 
7
+
8
+ // Given a search entity
9
+ // | moduleName | entityId | entityName | searchString |
10
+ // | contact | 122000006785675, 122000007141665, 122000006636472 | QA Team | testinguat |
11
+
6
12
  Given('a search entity', async ({page}, dataTable)=>{
7
13
  const data = dataTable.hashes();
8
14
 
@@ -22,5 +28,50 @@ Given('a search entity', async ({page}, dataTable)=>{
22
28
 
23
29
  await executeRpcRequest(page, payload);
24
30
  }
25
-
26
31
  });
32
+
33
+ // Given data generation step
34
+ // Given a search entity using "C1"
35
+ // | moduleName | searchString | searchEntity (response of the previous data generation step) |
36
+ // | contact | testinguat | $.id |
37
+ // | contact | testinguat | $.ids |
38
+ // | contact | testinguat |
39
+
40
+ Given('a search entity using {string}', async ({page,cacheLayer}, reference,dataTable)=>{
41
+ const data = dataTable.hashes();
42
+
43
+ const row = data[0];
44
+ if (!row || !row.moduleName || !row.searchString) {
45
+ throw new Error('Invalid or missing data in dataTable');
46
+ }
47
+
48
+ const { moduleName, searchEntity, searchString } = row;
49
+
50
+ const searchObj = cacheLayer.get(reference);
51
+ let entityIdValue;
52
+
53
+ if (typeof searchObj === 'string') {
54
+ entityIdValue = searchObj;
55
+ } else {
56
+ const jsonPath = searchEntity?.startsWith?.('$') ? searchEntity : `$.${searchEntity}`;
57
+ const result = null;//jp.query(searchObj, jsonPath);
58
+
59
+ if (!result || result.length === 0) {
60
+ throw new Error(`JSONPath query '${jsonPath}' returned no results from cache object for reference: ${reference}`);
61
+ }
62
+
63
+ entityIdValue = result.length === 1 ? result[0] : result;
64
+ }
65
+
66
+ const payload = {
67
+ className: 'applicationDriver.rpc.desk.integrations.search.SearchFakeDataPopulator',
68
+ methodName: 'populateSearchData',
69
+ arguments: {
70
+ module: moduleName,
71
+ searchString: searchString,
72
+ entityId: entityIdValue
73
+ }
74
+ };
75
+ await entityIdReConstructor(payload);
76
+ await executeRpcRequest(page, payload);
77
+ });
@@ -4,4 +4,4 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.CUSTOM_COMMANDS = void 0;
7
- const CUSTOM_COMMANDS = exports.CUSTOM_COMMANDS = ['mode', 'tags', 'edition', 'browsers', 'filePath', 'headless', 'modules'];
7
+ const CUSTOM_COMMANDS = exports.CUSTOM_COMMANDS = ['mode', 'tags', 'edition', 'browsers', 'filePath', 'headless', 'modules', 'isTearDown'];
@@ -19,6 +19,7 @@ var _ConfigurationHelper = require("./configuration/ConfigurationHelper");
19
19
  let cachedConfig = null;
20
20
  function getDefaultConfig() {
21
21
  return {
22
+ isTearDown: true,
22
23
  uatDirectory: _path.default.join(process.cwd(), 'uat'),
23
24
  headless: false,
24
25
  browsers: ['Chrome'],
@@ -32,7 +32,6 @@ class SpawnRunner extends _Runner.default {
32
32
  }
33
33
  runPreprocessing() {
34
34
  console.log("Node version:", process.version);
35
- _logger.Logger.log(_logger.Logger.SUCCESS_TYPE, "Node version- " + process.version);
36
35
  //This below functoin is called to copy the data generator spec files to the current project
37
36
  (0, _commonUtils.copyCommonSpecs)();
38
37
  const {
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ class Project {
4
+ constructor(name) {
5
+ this.properties = {};
6
+ this.properties.name = name;
7
+ }
8
+ setTestDir(value) {
9
+ this.properties.testDir = value;
10
+ }
11
+ setTestMatch(value) {
12
+ this.properties.testMatch = value;
13
+ }
14
+ setRetries(value) {
15
+ this.properties.retries = value;
16
+ }
17
+ setUse(value) {
18
+ this.properties.use = value;
19
+ }
20
+ setTearDown(value) {
21
+ this.properties.teardown = value;
22
+ }
23
+ setDependencies(value) {
24
+ this.properties.dependencies = value;
25
+ }
26
+ setProperty(key, value) {
27
+ this.properties[key] = value;
28
+ }
29
+ getProperties() {
30
+ return this.properties;
31
+ }
32
+ }
33
+ module.exports = {
34
+ Project
35
+ };
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.cleanupConfig = cleanupConfig;
8
+ exports.setupConfig = setupConfig;
9
+ exports.smokeTestConfig = smokeTestConfig;
10
+ var _path = _interopRequireDefault(require("path"));
11
+ var _Project = require("./Project");
12
+ var _configUtils = require("./config-utils");
13
+ var _readConfigFile = require("../readConfigFile");
14
+ const uatConfig = (0, _readConfigFile.generateConfigFromFile)();
15
+ const {
16
+ isAuthMode,
17
+ isSmokeTest,
18
+ bddMode,
19
+ authFilePath,
20
+ trace,
21
+ video,
22
+ testIdAttribute,
23
+ viewport
24
+ } = uatConfig;
25
+ function setupConfig() {
26
+ const setupProject = new _Project.Project('setup');
27
+ setupProject.setTestMatch(/.*\.setup\.js/);
28
+ setupProject.setTestDir(_path.default.join(process.cwd(), 'uat'));
29
+ const isTearDown = JSON.parse(process.env.tearDown);
30
+ setupProject.setTearDown(isTearDown ? 'cleanup' : '');
31
+ const setupProjectConfig = [setupProject.getProperties()];
32
+ return setupProjectConfig;
33
+ }
34
+ function smokeTestConfig() {
35
+ const smokeTestProject = new _Project.Project('smokeTest');
36
+ const smokeTestDir = (0, _configUtils.getTestDir)(bddMode, {
37
+ featureFilesFolder: _path.default.join(process.cwd(), 'uat', 'smokeTest', '**', '*.feature'),
38
+ stepDefinitionsFolder: _path.default.join(process.cwd(), 'uat', '**', 'steps', '*.spec.js'),
39
+ outputDir: _path.default.join(process.cwd(), 'uat', '.features-smoke-gen'),
40
+ uatPath: _path.default.join(process.cwd(), 'uat', 'smokeTest')
41
+ });
42
+ const commonConfig = {
43
+ storageState: isAuthMode ? (0, _readConfigFile.getAuthFilePath)(_path.default.resolve(process.cwd(), authFilePath)) : {}
44
+ };
45
+ smokeTestProject.setTestDir(smokeTestDir);
46
+ smokeTestProject.setRetries(0);
47
+ smokeTestProject.setUse({
48
+ ...commonConfig
49
+ });
50
+ smokeTestProject.setDependencies(isAuthMode ? ['setup'] : []);
51
+ const smokeTestProjectConfig = [smokeTestProject.getProperties()];
52
+ return smokeTestProjectConfig;
53
+ }
54
+ function defaultConfig() {
55
+ const defaultProject = new _Project.Project('default');
56
+ const testDir = (0, _configUtils.getTestDir)(bddMode, {
57
+ featureFilesFolder: (0, _configUtils.getPathsForFeatureFiles)(process.cwd()),
58
+ stepDefinitionsFolder: _path.default.join(process.cwd(), 'uat', '**', 'steps', '*.spec.js'),
59
+ outputDir: _path.default.join(process.cwd(), 'uat', '.features-gen'),
60
+ uatPath: _path.default.join(process.cwd(), 'uat')
61
+ });
62
+ const use = {
63
+ trace,
64
+ video,
65
+ viewport,
66
+ testIdAttribute
67
+ };
68
+ defaultProject.setUse(use);
69
+ defaultProject.setTestDir(testDir);
70
+ defaultProject.setDependencies(isSmokeTest ? ['smokeTest'] : []);
71
+ const defaultProjectConfig = [defaultProject.getProperties()];
72
+ return defaultProjectConfig;
73
+ }
74
+ function cleanupConfig() {
75
+ const cleanupProject = new _Project.Project('cleanup');
76
+ cleanupProject.setTestMatch(/.*\.teardown\.js/);
77
+ cleanupProject.setTestDir(_path.default.join(process.cwd(), 'uat'));
78
+ const cleanupProjectConfig = [cleanupProject.getProperties()];
79
+ return cleanupProjectConfig;
80
+ }
@@ -9,25 +9,24 @@ var _test = require("@playwright/test");
9
9
  var _path = _interopRequireDefault(require("path"));
10
10
  var _readConfigFile = require("../readConfigFile");
11
11
  var _configUtils = require("./config-utils");
12
+ var _ProjectConfiguration = require("./ProjectConfiguration");
12
13
  const uatConfig = (0, _readConfigFile.generateConfigFromFile)();
13
14
  const {
15
+ bddMode,
14
16
  browsers,
15
17
  isSmokeTest,
16
- trace,
17
- video,
18
18
  isAuthMode,
19
19
  openReportOn,
20
20
  reportPath,
21
- bddMode,
22
21
  expectTimeout,
23
22
  testTimeout,
24
23
  authFilePath,
25
24
  viewport,
26
- featureFilesFolder,
27
- stepDefinitionsFolder,
28
- testIdAttribute,
29
25
  globalTimeout,
30
- customReporter
26
+ customReporter,
27
+ trace,
28
+ video,
29
+ testIdAttribute
31
30
  } = uatConfig;
32
31
  const projects = (0, _configUtils.getProjects)({
33
32
  browsers,
@@ -38,18 +37,6 @@ const projects = (0, _configUtils.getProjects)({
38
37
  testTimeout,
39
38
  viewport
40
39
  });
41
- const testDir = (0, _configUtils.getTestDir)(bddMode, {
42
- featureFilesFolder: (0, _configUtils.getPathsForFeatureFiles)(process.cwd()),
43
- stepDefinitionsFolder: _path.default.join(process.cwd(), 'uat', '**', 'steps', '*.spec.js'),
44
- outputDir: _path.default.join(process.cwd(), 'uat', '.features-gen'),
45
- uatPath: _path.default.join(process.cwd(), 'uat')
46
- });
47
- const use = {
48
- trace,
49
- video,
50
- viewport,
51
- testIdAttribute
52
- };
53
40
  let reporter = [['html', {
54
41
  outputFolder: reportPath,
55
42
  open: openReportOn
@@ -66,29 +53,23 @@ if (customReporter) {
66
53
  * @returns {import('@playwright/test').PlaywrightTestConfig}
67
54
  */
68
55
 
56
+ const use = {
57
+ trace,
58
+ video,
59
+ viewport,
60
+ testIdAttribute
61
+ };
62
+ const testDir = (0, _configUtils.getTestDir)(bddMode, {
63
+ featureFilesFolder: (0, _configUtils.getPathsForFeatureFiles)(process.cwd()),
64
+ stepDefinitionsFolder: _path.default.join(process.cwd(), 'uat', '**', 'steps', '*.spec.js'),
65
+ outputDir: _path.default.join(process.cwd(), 'uat', '.features-gen'),
66
+ uatPath: _path.default.join(process.cwd(), 'uat')
67
+ });
69
68
  function getPlaywrightConfig() {
70
- const commonConfig = {
71
- storageState: isAuthMode ? (0, _readConfigFile.getAuthFilePath)(_path.default.resolve(process.cwd(), authFilePath)) : {}
72
- };
73
- const dependencies = isAuthMode ? ['setup'] : [];
74
- const smokeTestProject = isSmokeTest ? smokeTestConfig() : [];
75
- function smokeTestConfig() {
76
- const smokeTestDir = (0, _configUtils.getTestDir)(bddMode, {
77
- featureFilesFolder: _path.default.join(process.cwd(), 'uat', 'smokeTest', '**', '*.feature'),
78
- stepDefinitionsFolder: _path.default.join(process.cwd(), 'uat', '**', 'steps', '*.spec.js'),
79
- outputDir: _path.default.join(process.cwd(), 'uat', '.features-smoke-gen'),
80
- uatPath: _path.default.join(process.cwd(), 'uat', 'smokeTest')
81
- });
82
- return [{
83
- name: 'smokeTest',
84
- testDir: smokeTestDir,
85
- use: {
86
- ...commonConfig
87
- },
88
- dependencies: dependencies,
89
- retries: 0
90
- }];
91
- }
69
+ const smokeTestProject = isSmokeTest ? (0, _ProjectConfiguration.smokeTestConfig)() : [];
70
+ const setupProject = isAuthMode ? (0, _ProjectConfiguration.setupConfig)() : [];
71
+ const isTearDown = JSON.parse(process.env.tearDown);
72
+ const cleanupProject = isTearDown ? (0, _ProjectConfiguration.cleanupConfig)() : [];
92
73
  const playwrightConfig = {
93
74
  testDir,
94
75
  globalTimeout: globalTimeout || 3600000,
@@ -100,16 +81,7 @@ function getPlaywrightConfig() {
100
81
  timeout: expectTimeout
101
82
  },
102
83
  use,
103
- projects: isAuthMode ? [{
104
- name: 'setup',
105
- testMatch: /.*\.setup\.js/,
106
- testDir: _path.default.join(process.cwd(), 'uat'),
107
- teardown: 'cleanup'
108
- }, ...smokeTestProject, {
109
- name: 'cleanup',
110
- testMatch: /.*\.teardown\.js/,
111
- testDir: _path.default.join(process.cwd(), 'uat')
112
- }, ...projects] : [...projects, ...smokeTestProject],
84
+ projects: [...setupProject, ...smokeTestProject, ...projects, ...cleanupProject],
113
85
  ...uatConfig
114
86
  };
115
87
  return playwrightConfig;
@@ -90,9 +90,11 @@ function main() {
90
90
  // overriding the user config's from CLI
91
91
  uatConfig.addAll(userArgConfig);
92
92
  const modules = uatConfig.get('modules');
93
+ const tearDown = uatConfig.get('isTearDown');
93
94
 
94
95
  //We need to change this process.env variable to pass the module name in future.
95
96
  process.env.modules = modules;
97
+ process.env.tearDown = tearDown;
96
98
  const {
97
99
  isAuthMode,
98
100
  editionOrder,
@@ -1,23 +1,22 @@
1
1
  {
2
2
  "name": "@zohodesk/testinglibrary",
3
- "version": "0.0.10-n20-experimental",
3
+ "version": "0.0.12-n20-experimental",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@zohodesk/testinglibrary",
9
- "version": "0.0.10-n20-experimental",
9
+ "version": "0.0.12-n20-experimental",
10
10
  "hasInstallScript": true,
11
11
  "license": "ISC",
12
12
  "dependencies": {
13
13
  "@babel/code-frame": "7.27.1",
14
- "@babel/preset-react": "7.27.1",
14
+ "@babel/preset-react": "7.28.5",
15
15
  "@cucumber/cucumber": "12.2.0",
16
- "@playwright/test": "1.56.0",
16
+ "@playwright/test": "1.56.1",
17
17
  "@reportportal/agent-js-playwright": "5.2.2",
18
- "@testing-library/jest-dom": "6.8.0",
18
+ "@testing-library/jest-dom": "6.9.1",
19
19
  "@testing-library/react": "16.3.0",
20
- "@zohodesk/testinglibrary": "file:zohodesk-testinglibrary-0.0.10-n20-experimental.tgz",
21
20
  "babel-jest": "30.1.2",
22
21
  "babel-plugin-transform-dynamic-import": "2.1.0",
23
22
  "fast-glob": "3.3.3",
@@ -1902,14 +1901,14 @@
1902
1901
  }
1903
1902
  },
1904
1903
  "node_modules/@babel/preset-react": {
1905
- "version": "7.27.1",
1906
- "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.27.1.tgz",
1907
- "integrity": "sha512-oJHWh2gLhU9dW9HHr42q0cI0/iHHXTLGe39qvpAZZzagHy0MzYLCnCVV0symeRvzmjHyVU7mw2K06E6u/JwbhA==",
1904
+ "version": "7.28.5",
1905
+ "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.28.5.tgz",
1906
+ "integrity": "sha512-Z3J8vhRq7CeLjdC58jLv4lnZ5RKFUJWqH5emvxmv9Hv3BD1T9R/Im713R4MTKwvFaV74ejZ3sM01LyEKk4ugNQ==",
1908
1907
  "license": "MIT",
1909
1908
  "dependencies": {
1910
1909
  "@babel/helper-plugin-utils": "^7.27.1",
1911
1910
  "@babel/helper-validator-option": "^7.27.1",
1912
- "@babel/plugin-transform-react-display-name": "^7.27.1",
1911
+ "@babel/plugin-transform-react-display-name": "^7.28.0",
1913
1912
  "@babel/plugin-transform-react-jsx": "^7.27.1",
1914
1913
  "@babel/plugin-transform-react-jsx-development": "^7.27.1",
1915
1914
  "@babel/plugin-transform-react-pure-annotations": "^7.27.1"
@@ -3658,18 +3657,50 @@
3658
3657
  }
3659
3658
  },
3660
3659
  "node_modules/@playwright/test": {
3661
- "version": "1.56.0",
3662
- "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.56.0.tgz",
3663
- "integrity": "sha512-Tzh95Twig7hUwwNe381/K3PggZBZblKUe2wv25oIpzWLr6Z0m4KgV1ZVIjnR6GM9ANEqjZD7XsZEa6JL/7YEgg==",
3660
+ "version": "1.56.1",
3661
+ "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.56.1.tgz",
3662
+ "integrity": "sha512-vSMYtL/zOcFpvJCW71Q/OEGQb7KYBPAdKh35WNSkaZA75JlAO8ED8UN6GUNTm3drWomcbcqRPFqQbLae8yBTdg==",
3663
+ "license": "Apache-2.0",
3664
+ "dependencies": {
3665
+ "playwright": "1.56.1"
3666
+ },
3667
+ "bin": {
3668
+ "playwright": "cli.js"
3669
+ },
3670
+ "engines": {
3671
+ "node": ">=18"
3672
+ }
3673
+ },
3674
+ "node_modules/@playwright/test/node_modules/fsevents": {
3675
+ "version": "2.3.2",
3676
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
3677
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
3678
+ "hasInstallScript": true,
3679
+ "license": "MIT",
3680
+ "optional": true,
3681
+ "os": [
3682
+ "darwin"
3683
+ ],
3684
+ "engines": {
3685
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
3686
+ }
3687
+ },
3688
+ "node_modules/@playwright/test/node_modules/playwright": {
3689
+ "version": "1.56.1",
3690
+ "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.56.1.tgz",
3691
+ "integrity": "sha512-aFi5B0WovBHTEvpM3DzXTUaeN6eN0qWnTkKx4NQaH4Wvcmc153PdaY2UBdSYKaGYw+UyWXSVyxDUg5DoPEttjw==",
3664
3692
  "license": "Apache-2.0",
3665
3693
  "dependencies": {
3666
- "playwright": "1.56.0"
3694
+ "playwright-core": "1.56.1"
3667
3695
  },
3668
3696
  "bin": {
3669
3697
  "playwright": "cli.js"
3670
3698
  },
3671
3699
  "engines": {
3672
3700
  "node": ">=18"
3701
+ },
3702
+ "optionalDependencies": {
3703
+ "fsevents": "2.3.2"
3673
3704
  }
3674
3705
  },
3675
3706
  "node_modules/@reportportal/agent-js-playwright": {
@@ -3810,9 +3841,9 @@
3810
3841
  }
3811
3842
  },
3812
3843
  "node_modules/@testing-library/jest-dom": {
3813
- "version": "6.8.0",
3814
- "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.8.0.tgz",
3815
- "integrity": "sha512-WgXcWzVM6idy5JaftTVC8Vs83NKRmGJz4Hqs4oyOuO2J4r/y79vvKZsb+CaGyCSEbUPI6OsewfPd0G1A0/TUZQ==",
3844
+ "version": "6.9.1",
3845
+ "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.9.1.tgz",
3846
+ "integrity": "sha512-zIcONa+hVtVSSep9UT3jZ5rizo2BsxgyDYU7WFD5eICBE7no3881HGeb/QkGfsJs6JTkY1aQhT7rIPC7e+0nnA==",
3816
3847
  "license": "MIT",
3817
3848
  "dependencies": {
3818
3849
  "@adobe/css-tools": "^4.4.0",
@@ -4284,39 +4315,6 @@
4284
4315
  "win32"
4285
4316
  ]
4286
4317
  },
4287
- "node_modules/@zohodesk/testinglibrary": {
4288
- "version": "0.0.10-n20-experimental",
4289
- "resolved": "file:zohodesk-testinglibrary-0.0.10-n20-experimental.tgz",
4290
- "integrity": "sha512-hiS4ZxGeP3IK1S6aYR8zCyl22SWBJhF78D9IFxgnMrYLaPnu385Um4UaL9ue+vt79lbN5HF2iqGMAcdLViLrsw==",
4291
- "hasInstallScript": true,
4292
- "license": "ISC",
4293
- "dependencies": {
4294
- "@babel/code-frame": "7.27.1",
4295
- "@babel/preset-react": "7.27.1",
4296
- "@cucumber/cucumber": "12.2.0",
4297
- "@playwright/test": "1.56.0",
4298
- "@reportportal/agent-js-playwright": "5.2.2",
4299
- "@testing-library/jest-dom": "6.8.0",
4300
- "@testing-library/react": "16.3.0",
4301
- "babel-jest": "30.1.2",
4302
- "babel-plugin-transform-dynamic-import": "2.1.0",
4303
- "fast-glob": "3.3.3",
4304
- "jest": "30.1.2",
4305
- "jest-environment-jsdom": "30.1.2",
4306
- "msw": "2.11.2",
4307
- "playwright": "1.56.0",
4308
- "playwright-bdd": "8.4.1",
4309
- "supports-color": "10.2.2"
4310
- },
4311
- "bin": {
4312
- "ZDTestingFramework": "bin/cli.js"
4313
- },
4314
- "peerDependencies": {
4315
- "eslint": "*",
4316
- "react": "*",
4317
- "react-dom": "*"
4318
- }
4319
- },
4320
4318
  "node_modules/acorn": {
4321
4319
  "version": "8.15.0",
4322
4320
  "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz",
@@ -9787,6 +9785,18 @@
9787
9785
  "node": ">= 0.6"
9788
9786
  }
9789
9787
  },
9788
+ "node_modules/playwright-core": {
9789
+ "version": "1.56.1",
9790
+ "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.56.1.tgz",
9791
+ "integrity": "sha512-hutraynyn31F+Bifme+Ps9Vq59hKuUCz7H1kDOcBs+2oGguKkWTU50bBWrtz34OUWmIwpBTWDxaRPXrIXkgvmQ==",
9792
+ "license": "Apache-2.0",
9793
+ "bin": {
9794
+ "playwright-core": "cli.js"
9795
+ },
9796
+ "engines": {
9797
+ "node": ">=18"
9798
+ }
9799
+ },
9790
9800
  "node_modules/playwright/node_modules/fsevents": {
9791
9801
  "version": "2.3.2",
9792
9802
  "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zohodesk/testinglibrary",
3
- "version": "0.0.10-n20-experimental",
3
+ "version": "0.0.12-n20-experimental",
4
4
  "description": "",
5
5
  "main": "./build/index.js",
6
6
  "scripts": {
@@ -23,13 +23,12 @@
23
23
  "license": "ISC",
24
24
  "dependencies": {
25
25
  "@babel/code-frame": "7.27.1",
26
- "@babel/preset-react": "7.27.1",
26
+ "@babel/preset-react": "7.28.5",
27
27
  "@cucumber/cucumber": "12.2.0",
28
- "@playwright/test": "1.56.0",
28
+ "@playwright/test": "1.56.1",
29
29
  "@reportportal/agent-js-playwright": "5.2.2",
30
- "@testing-library/jest-dom": "6.8.0",
30
+ "@testing-library/jest-dom": "6.9.1",
31
31
  "@testing-library/react": "16.3.0",
32
- "@zohodesk/testinglibrary": "file:zohodesk-testinglibrary-0.0.10-n20-experimental.tgz",
33
32
  "babel-jest": "30.1.2",
34
33
  "babel-plugin-transform-dynamic-import": "2.1.0",
35
34
  "fast-glob": "3.3.3",
@@ -37,8 +36,8 @@
37
36
  "jest-environment-jsdom": "30.1.2",
38
37
  "msw": "2.11.2",
39
38
  "playwright": "1.56.0",
40
- "playwright-bdd": "8.4.1",
41
- "supports-color": "10.2.2"
39
+ "supports-color": "10.2.2",
40
+ "playwright-bdd": "8.4.1"
42
41
  },
43
42
  "bin": {
44
43
  "ZDTestingFramework": "./bin/cli.js"