@digital-ai/devops-page-object-release 0.0.0-pikachu-20250828144727 → 0.0.0-snapshot-20250901143100

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/dist/module.js CHANGED
@@ -18,7 +18,6 @@ import $hOLA6$lodashtoPairs from "lodash/toPairs";
18
18
 
19
19
 
20
20
 
21
-
22
21
  class $9626bc9256ce31f7$export$2b65d1d97338f32b {
23
22
  constructor(page){
24
23
  this.page = page;
@@ -26,6 +25,8 @@ class $9626bc9256ce31f7$export$2b65d1d97338f32b {
26
25
  }
27
26
 
28
27
 
28
+
29
+
29
30
  class $05d91a1d3381a287$export$34addcca3f0ae43f extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
30
31
  constructor(page){
31
32
  super(page);
@@ -120,125 +121,7 @@ class $05d91a1d3381a287$export$34addcca3f0ae43f extends (0, $9626bc9256ce31f7$ex
120
121
  }
121
122
 
122
123
 
123
-
124
-
125
- class $b34a21212642e54d$export$7034f81075184002 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
126
- constructor(page){
127
- super(page);
128
- }
129
- getHeaderSelector() {
130
- return ".release-list-header";
131
- }
132
- getBaseDrawerSelector() {
133
- return `${this.getHeaderSelector()} .releases-filter-drawer`;
134
- }
135
- getFilterDrawerSelector() {
136
- return `${this.getBaseDrawerSelector()} div[role="dialog"]`;
137
- }
138
- getStatusInputSelector() {
139
- return `${this.getBaseDrawerSelector()} input#release-status-filter-autocomplete`;
140
- }
141
- getBasePopperSelector() {
142
- return '.dot-popper[role="presentation"]';
143
- }
144
- getSelectAllStatusesButtonSelector() {
145
- return `${this.getBasePopperSelector()} button[data-testid="dot-action-item-btn"]`;
146
- }
147
- getTitleInputSelector() {
148
- return `${this.getHeaderSelector()} input#title-filter`;
149
- }
150
- getRiskLevelInputSelector() {
151
- return `${this.getBaseDrawerSelector()} input#risk`;
152
- }
153
- async setReleaseStatusFilter(statuses) {
154
- for (const status of statuses){
155
- await this.page.locator(this.getStatusInputSelector()).click();
156
- await this.page.locator(`${this.getBasePopperSelector()} ul li`).filter({
157
- hasText: status
158
- }).click();
159
- }
160
- return this;
161
- }
162
- async setReleaseTagsFilter(tags) {
163
- for (const tag of tags){
164
- await this.page.locator(`${this.getBaseDrawerSelector()} input#release-tags`).click();
165
- await this.page.locator(`${this.getBasePopperSelector()} ul li`).filter({
166
- hasText: tag.toLowerCase()
167
- }).click();
168
- }
169
- return this;
170
- }
171
- async setTaskTagsFilter(tags) {
172
- for (const tag of tags){
173
- await this.page.locator(`${this.getBaseDrawerSelector()} input#task-tags`).click();
174
- await this.page.locator(`${this.getBasePopperSelector()} ul li`).filter({
175
- hasText: tag.toLowerCase()
176
- }).click();
177
- }
178
- return this;
179
- }
180
- async setRiskLevelFilter(riskLevel) {
181
- await this.page.locator(this.getRiskLevelInputSelector()).click();
182
- await this.page.locator(`${this.getBasePopperSelector()} ul li:has-text("${riskLevel}")`).click({
183
- force: true
184
- });
185
- return this;
186
- }
187
- async filterReleaseByTitle(releaseTitle) {
188
- await this.page.locator(this.getTitleInputSelector()).fill(releaseTitle);
189
- }
190
- async clearTitleFilter() {
191
- await this.page.locator(this.getTitleInputSelector()).fill("");
192
- return this;
193
- }
194
- async openFilterDrawer() {
195
- await this.page.locator(`${this.getHeaderSelector()} button`, {
196
- hasText: "Filters"
197
- }).click();
198
- await (0, $hOLA6$expect)(this.page.locator(this.getFilterDrawerSelector())).toBeVisible();
199
- return this;
200
- }
201
- async closeFilterDrawer() {
202
- await this.page.locator(`${this.getBaseDrawerSelector()} .dot-icon-btn[data-testid="close-btn"]`).click();
203
- await (0, $hOLA6$expect)(this.page.locator(this.getFilterDrawerSelector())).not.toBeVisible();
204
- return this;
205
- }
206
- async clearAllFilters() {
207
- await this.page.locator(`${this.getHeaderSelector()} .release-list-filter-row button[data-testid="clear-all-btn"]`).click();
208
- return this;
209
- }
210
- async clearAllStatusFilters() {
211
- await this.page.locator(this.getStatusInputSelector()).click();
212
- await this.page.locator(`${this.getBaseDrawerSelector()} div.filter-release-status-autocomplete button[title="Clear"]`).click();
213
- return this;
214
- }
215
- async selectAllStatusFilters() {
216
- await this.page.locator(this.getStatusInputSelector()).click();
217
- await this.page.locator(this.getSelectAllStatusesButtonSelector()).click();
218
- return this;
219
- }
220
- async gotoListView() {
221
- await this.clickOnReleasesPageTab("List");
222
- await (0, $hOLA6$expect)(this.page.locator(".release-list")).toBeVisible();
223
- }
224
- async gotoCalendarView() {
225
- await this.clickOnReleasesPageTab("Calendar");
226
- await (0, $hOLA6$expect)(this.page.locator(".tl-viewport")).toBeVisible();
227
- }
228
- async clickOnReleasesPageTab(tabName) {
229
- await this.page.locator("releases-tabs .dot-tab-label").filter({
230
- hasText: tabName
231
- }).click();
232
- return this;
233
- }
234
- async toggleFilterFlaggedOnly() {
235
- await this.page.locator(`${this.getBaseDrawerSelector()} .flagged-releases-switch input[aria-label="Flagged releases"]`).click();
236
- return this;
237
- }
238
- }
239
-
240
-
241
- class $5359280e98d97ff9$export$a678525e79c4ccc4 extends (0, $b34a21212642e54d$export$7034f81075184002) {
124
+ class $5359280e98d97ff9$export$a678525e79c4ccc4 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
242
125
  constructor(page){
243
126
  super(page);
244
127
  this.releaseCreatePage = new (0, $05d91a1d3381a287$export$34addcca3f0ae43f)(page);
@@ -305,12 +188,49 @@ class $5359280e98d97ff9$export$a678525e79c4ccc4 extends (0, $b34a21212642e54d$ex
305
188
  await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Releases")).toBeVisible();
306
189
  await (0, $hOLA6$expect)(this.page.locator(".release-list")).toBeVisible();
307
190
  }
191
+ async filterReleaseByAllStatus() {
192
+ await this.page.locator(".ci-status .remaining-tags").getByText("more").click();
193
+ await this.page.locator(".ci-status .xl-react-link").getByText("Select all").click();
194
+ }
195
+ async filterReleaseByStatus(release_status) {
196
+ await this.page.locator(".react-tagsinput-wrapper .remaining-tags").click();
197
+ await this.page.getByTitle(release_status).locator("i").first().click();
198
+ }
308
199
  async openReleaseByName(releaseTitle) {
309
200
  await this.page.locator(".release-line .row-wrapper .release-title-wrapper a", {
310
201
  hasText: releaseTitle
311
202
  }).click();
312
203
  return new (0, $43cbcdfccb6c2a76$export$f43492e8ac3c566)(this.page);
313
204
  }
205
+ async openSearchFilter() {
206
+ await this.page.locator(".toggle-search-filter").click();
207
+ }
208
+ async filterReleaseByTitle(releaseTitle) {
209
+ const searchTitle = this.page.locator(".searchFilter");
210
+ const searchCount = await searchTitle.count();
211
+ if (searchCount == 0) {
212
+ await this.openSearchFilter();
213
+ await searchTitle.fill(releaseTitle);
214
+ await searchTitle.press("Enter");
215
+ await (0, $hOLA6$expect)(this.page.locator(".release").getByText(releaseTitle)).toBeVisible();
216
+ } else {
217
+ await searchTitle.press("Enter");
218
+ await searchTitle.fill(releaseTitle);
219
+ await searchTitle.press("Enter");
220
+ await (0, $hOLA6$expect)(this.page.locator(".release").getByText(releaseTitle)).toBeVisible();
221
+ }
222
+ }
223
+ async clearTitleFilter() {
224
+ const search = await this.page.locator(".searchFilter").count();
225
+ if (search == 0) {
226
+ await this.openSearchFilter();
227
+ await this.page.locator(".searchFilter").clear();
228
+ await this.page.locator(".searchFilter").press("Enter");
229
+ } else {
230
+ await this.page.locator(".searchFilter").clear();
231
+ await this.page.locator(".searchFilter").press("Enter");
232
+ }
233
+ }
314
234
  async createNewRelease(releaseName, description) {
315
235
  await this.releaseCreatePage.setName(releaseName);
316
236
  await this.releaseCreatePage.setDescription(description);
@@ -323,6 +243,18 @@ class $5359280e98d97ff9$export$a678525e79c4ccc4 extends (0, $b34a21212642e54d$ex
323
243
  await this.releaseCreatePage.setOwner(ownerName);
324
244
  await this.releaseCreatePage.create();
325
245
  }
246
+ async gotoListView() {
247
+ await this.page.getByRole("tab", {
248
+ name: "release icon List"
249
+ }).click();
250
+ await (0, $hOLA6$expect)(this.page.locator(".release-list")).toBeVisible();
251
+ }
252
+ async gotoCalendarView() {
253
+ await this.page.getByRole("tab", {
254
+ name: "calendar icon Calendar"
255
+ }).click();
256
+ await (0, $hOLA6$expect)(this.page.locator(".tl-viewport")).toBeVisible();
257
+ }
326
258
  async openReleasesList() {
327
259
  await this.page.goto("./#/releases");
328
260
  await (0, $hOLA6$expect)(this.page.locator(".release-list")).toBeVisible();
@@ -3310,8 +3242,7 @@ class $43cbcdfccb6c2a76$export$f43492e8ac3c566 extends (0, $9626bc9256ce31f7$exp
3310
3242
  async abort(comment = "Abort for testing") {
3311
3243
  await this.page.getByTestId("abort-btn").waitFor();
3312
3244
  await this.page.getByTestId("abort-btn").click();
3313
- await this.page.getByPlaceholder("Give feedback or place a").click();
3314
- await this.page.getByPlaceholder("Give feedback or place a").fill(comment);
3245
+ await this.page.getByPlaceholder("Provide a reason").fill(comment);
3315
3246
  await this.page.getByRole("button", {
3316
3247
  name: "Abort"
3317
3248
  }).click();
@@ -4085,7 +4016,7 @@ class $43cbcdfccb6c2a76$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97
4085
4016
  }
4086
4017
  await this.page.getByTestId("save-select-task-btn").click();
4087
4018
  await (0, $hOLA6$expect)(this.page.locator("p").filter({
4088
- hasText: "Your request has been rejected, your permissions may have been revoked."
4019
+ hasText: "You don’t have permission to view this page."
4089
4020
  })).toBeVisible();
4090
4021
  }
4091
4022
  async expectCurrentTaskCount(count) {
@@ -4781,9 +4712,6 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
4781
4712
  this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
4782
4713
  this.variables = new (0, $dfc4ce40cbd0eb71$export$f8e64fcf447db2bf)(page);
4783
4714
  }
4784
- getFolderSearchInputLocator() {
4785
- return this.page.locator(".folder-list .folder-list-search input");
4786
- }
4787
4715
  async openFoldersPage() {
4788
4716
  await this.page.goto("./#/folders");
4789
4717
  await (0, $hOLA6$expect)(this.page).toHaveTitle("Folders / Home - Digital.ai Release");
@@ -4888,9 +4816,9 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
4888
4816
  })).not.toBeVisible();
4889
4817
  }
4890
4818
  async searchFolderByName(folderName) {
4891
- await this.getFolderSearchInputLocator().click();
4892
- await this.getFolderSearchInputLocator().clear();
4893
- await this.getFolderSearchInputLocator().fill(folderName);
4819
+ await this.page.getByLabel("Start typing to filter").click();
4820
+ await this.page.getByLabel("Start typing to filter").clear();
4821
+ await this.page.getByLabel("Start typing to filter").fill(folderName);
4894
4822
  await (0, $hOLA6$expect)(this.page.getByRole("link", {
4895
4823
  name: folderName
4896
4824
  })).toBeVisible();
@@ -5925,8 +5853,7 @@ class $9ca6e63d357957dd$export$922081b54f2ab994 extends (0, $9626bc9256ce31f7$ex
5925
5853
 
5926
5854
 
5927
5855
 
5928
-
5929
- class $3a340a3f4fd8f04d$export$43682cddead1dd78 extends (0, $b34a21212642e54d$export$7034f81075184002) {
5856
+ class $3a340a3f4fd8f04d$export$43682cddead1dd78 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
5930
5857
  async openReleaseCalendarPage() {
5931
5858
  await this.page.goto("./#/releases/calendar");
5932
5859
  //Define date format to verify different calendar views
@@ -6031,6 +5958,61 @@ class $3a340a3f4fd8f04d$export$43682cddead1dd78 extends (0, $b34a21212642e54d$ex
6031
5958
  await (0, $hOLA6$expect)(this.page.getByText(title)).toBeVisible();
6032
5959
  }
6033
5960
  }
5961
+ async filterReleaseByTitle(title) {
5962
+ await this.page.getByPlaceholder("Filter by release title").click();
5963
+ await this.page.getByPlaceholder("Filter by release title").fill(title);
5964
+ await this.page.getByPlaceholder("Filter by release title").press("Enter");
5965
+ //Verify Page has correct Year format displayed at the page bottom
5966
+ await this.verifyPageContent(title);
5967
+ }
5968
+ async filterReleaseByTags(tags, release_title) {
5969
+ await this.page.locator(".tl-filter-release-tags").locator(".react-tagsinput").click();
5970
+ for (let tag of tags){
5971
+ tag = tag.toString();
5972
+ await this.page.locator(".tl-filter-release-tags").locator(".react-tagsinput-input").fill(tag);
5973
+ await this.page.getByTitle(tag).locator("i").click();
5974
+ }
5975
+ await this.verifyPageContent(release_title);
5976
+ }
5977
+ async filterTaskByTags(tags, task_title, release_title) {
5978
+ await this.page.locator(".tl-filter-task-tags").locator(".react-tagsinput").click();
5979
+ for (let tag of tags){
5980
+ tag = tag.toString();
5981
+ await this.page.locator(".tl-filter-task-tags").locator(".react-tagsinput-input").fill(tag);
5982
+ await this.page.getByTitle(tag).locator("i").click();
5983
+ }
5984
+ //Make sure task is visible on calnedar page
5985
+ await this.verifyPageContent(task_title);
5986
+ //Make sure parent release of the selected task is visible on calnedar page
5987
+ await this.verifyPageContent(release_title);
5988
+ }
5989
+ async filterReleaseByStatus(release_status, release_title) {
5990
+ if (!await this.page.locator(".tl-filter-advanced").isVisible()) await this.page.getByRole("button", {
5991
+ name: "Advanced filters"
5992
+ }).click();
5993
+ await this.page.locator(".tl-filter-release-status").locator(".react-tagsinput").click();
5994
+ await this.page.getByTitle(release_status).locator("i").first().click();
5995
+ await this.verifyPageContent(release_title);
5996
+ }
5997
+ async filterReleaseByRisk(release_risk, release_title) {
5998
+ if (!await this.page.locator(".tl-filter-advanced").isVisible()) await this.page.getByRole("button", {
5999
+ name: "Advanced filters"
6000
+ }).click();
6001
+ await this.page.locator(".tl-filter-risk-filter").getByRole("combobox").click();
6002
+ await this.page.getByRole("option", {
6003
+ name: release_risk
6004
+ }).click();
6005
+ await this.verifyPageContent(release_title);
6006
+ }
6007
+ async filterFlaggedRelease(release_title) {
6008
+ if (!await this.page.locator(".tl-filter-advanced").isVisible()) await this.page.getByRole("button", {
6009
+ name: "Advanced filters"
6010
+ }).click();
6011
+ if (await this.page.locator(".tl-filter-flag-only.btn.btn-flat.btn-fixed.button-toggle-filter.active").isVisible()) await this.page.getByRole("button", {
6012
+ name: " Flagged"
6013
+ }).click();
6014
+ await this.verifyPageContent(release_title);
6015
+ }
6034
6016
  async viewRelease(release_title, release_id) {
6035
6017
  await this.page.locator(".tl-header-navigation").getByRole("combobox").click();
6036
6018
  await this.page.getByRole("option", {
@@ -8575,7 +8557,7 @@ class $6c0f5b52769b32c3$export$9823ddf5e80770e7 extends (0, $9626bc9256ce31f7$ex
8575
8557
  async addNewInstance(typeName) {
8576
8558
  await this.page.locator(`.configuration-type`).filter({
8577
8559
  hasText: typeName
8578
- }).locator(`.new-instance .button`).click({
8560
+ }).locator(`.new-instance .button`).first().click({
8579
8561
  force: true
8580
8562
  });
8581
8563
  return new $6c0f5b52769b32c3$var$ConfigurationInstancePage(this.page);