@digital-ai/devops-page-object-release 0.0.0-snapshot-20250904084626 → 0.0.0-snapshot-20250904103638
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/CHANGELOG.md +2 -20
- package/dist/main.js +153 -138
- package/dist/main.js.map +1 -1
- package/dist/module.js +153 -138
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +25 -30
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -3
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);
|
|
@@ -73,6 +74,12 @@ class $05d91a1d3381a287$export$34addcca3f0ae43f extends (0, $9626bc9256ce31f7$ex
|
|
|
73
74
|
await this.page.getByPlaceholder("No template").fill(templateName);
|
|
74
75
|
await this.page.getByText(templateName).click();
|
|
75
76
|
}
|
|
77
|
+
async selectFolder(folderName) {
|
|
78
|
+
await this.page.locator("div.xl__value-container div.xl__placeholder").click();
|
|
79
|
+
await this.page.locator("div.xl__value-container").click();
|
|
80
|
+
await this.page.locator('input[id^="react-select"][type="text"]').fill(folderName);
|
|
81
|
+
await this.page.getByLabel("grid").getByText(folderName).click();
|
|
82
|
+
}
|
|
76
83
|
async removeTemplate() {
|
|
77
84
|
await this.page.locator(".template-select .close-icon").click();
|
|
78
85
|
}
|
|
@@ -120,125 +127,7 @@ class $05d91a1d3381a287$export$34addcca3f0ae43f extends (0, $9626bc9256ce31f7$ex
|
|
|
120
127
|
}
|
|
121
128
|
|
|
122
129
|
|
|
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) {
|
|
130
|
+
class $5359280e98d97ff9$export$a678525e79c4ccc4 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
242
131
|
constructor(page){
|
|
243
132
|
super(page);
|
|
244
133
|
this.releaseCreatePage = new (0, $05d91a1d3381a287$export$34addcca3f0ae43f)(page);
|
|
@@ -305,12 +194,49 @@ class $5359280e98d97ff9$export$a678525e79c4ccc4 extends (0, $b34a21212642e54d$ex
|
|
|
305
194
|
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Releases")).toBeVisible();
|
|
306
195
|
await (0, $hOLA6$expect)(this.page.locator(".release-list")).toBeVisible();
|
|
307
196
|
}
|
|
197
|
+
async filterReleaseByAllStatus() {
|
|
198
|
+
await this.page.locator(".ci-status .remaining-tags").getByText("more").click();
|
|
199
|
+
await this.page.locator(".ci-status .xl-react-link").getByText("Select all").click();
|
|
200
|
+
}
|
|
201
|
+
async filterReleaseByStatus(release_status) {
|
|
202
|
+
await this.page.locator(".react-tagsinput-wrapper .remaining-tags").click();
|
|
203
|
+
await this.page.getByTitle(release_status).locator("i").first().click();
|
|
204
|
+
}
|
|
308
205
|
async openReleaseByName(releaseTitle) {
|
|
309
206
|
await this.page.locator(".release-line .row-wrapper .release-title-wrapper a", {
|
|
310
207
|
hasText: releaseTitle
|
|
311
208
|
}).click();
|
|
312
209
|
return new (0, $43cbcdfccb6c2a76$export$f43492e8ac3c566)(this.page);
|
|
313
210
|
}
|
|
211
|
+
async openSearchFilter() {
|
|
212
|
+
await this.page.locator(".toggle-search-filter").click();
|
|
213
|
+
}
|
|
214
|
+
async filterReleaseByTitle(releaseTitle) {
|
|
215
|
+
const searchTitle = this.page.locator(".searchFilter");
|
|
216
|
+
const searchCount = await searchTitle.count();
|
|
217
|
+
if (searchCount == 0) {
|
|
218
|
+
await this.openSearchFilter();
|
|
219
|
+
await searchTitle.fill(releaseTitle);
|
|
220
|
+
await searchTitle.press("Enter");
|
|
221
|
+
await (0, $hOLA6$expect)(this.page.locator(".release").getByText(releaseTitle)).toBeVisible();
|
|
222
|
+
} else {
|
|
223
|
+
await searchTitle.press("Enter");
|
|
224
|
+
await searchTitle.fill(releaseTitle);
|
|
225
|
+
await searchTitle.press("Enter");
|
|
226
|
+
await (0, $hOLA6$expect)(this.page.locator(".release").getByText(releaseTitle)).toBeVisible();
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
async clearTitleFilter() {
|
|
230
|
+
const search = await this.page.locator(".searchFilter").count();
|
|
231
|
+
if (search == 0) {
|
|
232
|
+
await this.openSearchFilter();
|
|
233
|
+
await this.page.locator(".searchFilter").clear();
|
|
234
|
+
await this.page.locator(".searchFilter").press("Enter");
|
|
235
|
+
} else {
|
|
236
|
+
await this.page.locator(".searchFilter").clear();
|
|
237
|
+
await this.page.locator(".searchFilter").press("Enter");
|
|
238
|
+
}
|
|
239
|
+
}
|
|
314
240
|
async createNewRelease(releaseName, description) {
|
|
315
241
|
await this.releaseCreatePage.setName(releaseName);
|
|
316
242
|
await this.releaseCreatePage.setDescription(description);
|
|
@@ -323,6 +249,18 @@ class $5359280e98d97ff9$export$a678525e79c4ccc4 extends (0, $b34a21212642e54d$ex
|
|
|
323
249
|
await this.releaseCreatePage.setOwner(ownerName);
|
|
324
250
|
await this.releaseCreatePage.create();
|
|
325
251
|
}
|
|
252
|
+
async gotoListView() {
|
|
253
|
+
await this.page.getByRole("tab", {
|
|
254
|
+
name: "release icon List"
|
|
255
|
+
}).click();
|
|
256
|
+
await (0, $hOLA6$expect)(this.page.locator(".release-list")).toBeVisible();
|
|
257
|
+
}
|
|
258
|
+
async gotoCalendarView() {
|
|
259
|
+
await this.page.getByRole("tab", {
|
|
260
|
+
name: "calendar icon Calendar"
|
|
261
|
+
}).click();
|
|
262
|
+
await (0, $hOLA6$expect)(this.page.locator(".tl-viewport")).toBeVisible();
|
|
263
|
+
}
|
|
326
264
|
async openReleasesList() {
|
|
327
265
|
await this.page.goto("./#/releases");
|
|
328
266
|
await (0, $hOLA6$expect)(this.page.locator(".release-list")).toBeVisible();
|
|
@@ -1370,6 +1308,9 @@ class $90bb70a7e909e500$export$519356f6c50361f7 extends (0, $9626bc9256ce31f7$ex
|
|
|
1370
1308
|
async expectRiskProfileValue(value) {
|
|
1371
1309
|
await (0, $hOLA6$expect)(this.railLocator.locator("#riskProfileId")).toHaveValue(value);
|
|
1372
1310
|
}
|
|
1311
|
+
async expectServerFieldValue(label, value) {
|
|
1312
|
+
await (0, $hOLA6$expect)(this.railLocator.getByTestId("jiraServer-input")).toHaveValue(value);
|
|
1313
|
+
}
|
|
1373
1314
|
async expectTo(value) {
|
|
1374
1315
|
return await (0, $hOLA6$expect)(this.railLocator.getByTestId(`dot-autocomplete-chip`)).toHaveText(value);
|
|
1375
1316
|
}
|
|
@@ -2476,6 +2417,7 @@ class $8e39246218b802fc$export$e946776eae644790 extends (0, $9626bc9256ce31f7$ex
|
|
|
2476
2417
|
|
|
2477
2418
|
|
|
2478
2419
|
|
|
2420
|
+
|
|
2479
2421
|
class $a546aadb4e6fa16a$export$5a82be0a2a261cc6 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
2480
2422
|
constructor(page){
|
|
2481
2423
|
super(page);
|
|
@@ -2488,6 +2430,19 @@ class $a546aadb4e6fa16a$export$5a82be0a2a261cc6 extends (0, $9626bc9256ce31f7$ex
|
|
|
2488
2430
|
async disableShowDates() {
|
|
2489
2431
|
await this.page.locator("#toggleIsDatesColumnsShown").uncheck();
|
|
2490
2432
|
}
|
|
2433
|
+
async expectStartDateDisplayed(name, date) {
|
|
2434
|
+
const formattedDate = (0, $hOLA6$moment)(date).format("M/D/YY");
|
|
2435
|
+
const inputLocator = this.page.locator(".gantt_row", {
|
|
2436
|
+
hasText: name
|
|
2437
|
+
}).locator('.gantt_cell input[type="text"]').first(); // assumes start date is the first text input
|
|
2438
|
+
await (0, $hOLA6$expect)(inputLocator).toHaveValue(formattedDate);
|
|
2439
|
+
}
|
|
2440
|
+
async clickOnReleaseName(releaseName) {
|
|
2441
|
+
await this.page.getByRole("link", {
|
|
2442
|
+
name: releaseName
|
|
2443
|
+
}).click();
|
|
2444
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText(releaseName)).toBeVisible();
|
|
2445
|
+
}
|
|
2491
2446
|
async expectPlanningDataColumnsHidden() {
|
|
2492
2447
|
(0, $hOLA6$expect)(await this.page.locator(`#gantt .gantt_grid_data .gantt_row`).first().locator(`.gantt_cell`).count()).toEqual(1);
|
|
2493
2448
|
}
|
|
@@ -2928,9 +2883,20 @@ class $96c6280ff1c47b81$export$3bc3e140e0dcb075 extends (0, $9626bc9256ce31f7$ex
|
|
|
2928
2883
|
const releaseAdminRow = this.page.locator("#teams-permissions-table tr", {
|
|
2929
2884
|
hasText: teamName
|
|
2930
2885
|
});
|
|
2931
|
-
await (
|
|
2932
|
-
|
|
2933
|
-
|
|
2886
|
+
await releaseAdminRow.first().waitFor({
|
|
2887
|
+
state: "visible",
|
|
2888
|
+
timeout: 4000
|
|
2889
|
+
});
|
|
2890
|
+
const userTag = releaseAdminRow.locator(`text=${userName}`);
|
|
2891
|
+
await (0, $hOLA6$expect)(userTag).toBeVisible({
|
|
2892
|
+
timeout: 4000
|
|
2893
|
+
});
|
|
2894
|
+
}
|
|
2895
|
+
async expectTeamContains(teamName, ...members) {
|
|
2896
|
+
const teamEditor = this.page.locator("tr", {
|
|
2897
|
+
hasText: teamName
|
|
2898
|
+
});
|
|
2899
|
+
for (const member of members)await (0, $hOLA6$expect)(teamEditor.locator(`text=${member}`)).toBeVisible();
|
|
2934
2900
|
}
|
|
2935
2901
|
}
|
|
2936
2902
|
|
|
@@ -3310,7 +3276,8 @@ class $43cbcdfccb6c2a76$export$f43492e8ac3c566 extends (0, $9626bc9256ce31f7$exp
|
|
|
3310
3276
|
async abort(comment = "Abort for testing") {
|
|
3311
3277
|
await this.page.getByTestId("abort-btn").waitFor();
|
|
3312
3278
|
await this.page.getByTestId("abort-btn").click();
|
|
3313
|
-
await this.page.getByPlaceholder("
|
|
3279
|
+
await this.page.getByPlaceholder("Give feedback or place a").click();
|
|
3280
|
+
await this.page.getByPlaceholder("Give feedback or place a").fill(comment);
|
|
3314
3281
|
await this.page.getByRole("button", {
|
|
3315
3282
|
name: "Abort"
|
|
3316
3283
|
}).click();
|
|
@@ -4084,7 +4051,7 @@ class $43cbcdfccb6c2a76$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97
|
|
|
4084
4051
|
}
|
|
4085
4052
|
await this.page.getByTestId("save-select-task-btn").click();
|
|
4086
4053
|
await (0, $hOLA6$expect)(this.page.locator("p").filter({
|
|
4087
|
-
hasText: "
|
|
4054
|
+
hasText: "Your request has been rejected, your permissions may have been revoked."
|
|
4088
4055
|
})).toBeVisible();
|
|
4089
4056
|
}
|
|
4090
4057
|
async expectCurrentTaskCount(count) {
|
|
@@ -4780,9 +4747,6 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
|
|
|
4780
4747
|
this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
|
|
4781
4748
|
this.variables = new (0, $dfc4ce40cbd0eb71$export$f8e64fcf447db2bf)(page);
|
|
4782
4749
|
}
|
|
4783
|
-
getFolderSearchInputLocator() {
|
|
4784
|
-
return this.page.locator(".folder-list .folder-list-search input");
|
|
4785
|
-
}
|
|
4786
4750
|
async openFoldersPage() {
|
|
4787
4751
|
await this.page.goto("./#/folders");
|
|
4788
4752
|
await (0, $hOLA6$expect)(this.page).toHaveTitle("Folders / Home - Digital.ai Release");
|
|
@@ -4887,9 +4851,9 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
|
|
|
4887
4851
|
})).not.toBeVisible();
|
|
4888
4852
|
}
|
|
4889
4853
|
async searchFolderByName(folderName) {
|
|
4890
|
-
await this.
|
|
4891
|
-
await this.
|
|
4892
|
-
await this.
|
|
4854
|
+
await this.page.getByLabel("Start typing to filter").click();
|
|
4855
|
+
await this.page.getByLabel("Start typing to filter").clear();
|
|
4856
|
+
await this.page.getByLabel("Start typing to filter").fill(folderName);
|
|
4893
4857
|
await (0, $hOLA6$expect)(this.page.getByRole("link", {
|
|
4894
4858
|
name: folderName
|
|
4895
4859
|
})).toBeVisible();
|
|
@@ -5924,8 +5888,7 @@ class $9ca6e63d357957dd$export$922081b54f2ab994 extends (0, $9626bc9256ce31f7$ex
|
|
|
5924
5888
|
|
|
5925
5889
|
|
|
5926
5890
|
|
|
5927
|
-
|
|
5928
|
-
class $3a340a3f4fd8f04d$export$43682cddead1dd78 extends (0, $b34a21212642e54d$export$7034f81075184002) {
|
|
5891
|
+
class $3a340a3f4fd8f04d$export$43682cddead1dd78 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
5929
5892
|
async openReleaseCalendarPage() {
|
|
5930
5893
|
await this.page.goto("./#/releases/calendar");
|
|
5931
5894
|
//Define date format to verify different calendar views
|
|
@@ -6030,6 +5993,61 @@ class $3a340a3f4fd8f04d$export$43682cddead1dd78 extends (0, $b34a21212642e54d$ex
|
|
|
6030
5993
|
await (0, $hOLA6$expect)(this.page.getByText(title)).toBeVisible();
|
|
6031
5994
|
}
|
|
6032
5995
|
}
|
|
5996
|
+
async filterReleaseByTitle(title) {
|
|
5997
|
+
await this.page.getByPlaceholder("Filter by release title").click();
|
|
5998
|
+
await this.page.getByPlaceholder("Filter by release title").fill(title);
|
|
5999
|
+
await this.page.getByPlaceholder("Filter by release title").press("Enter");
|
|
6000
|
+
//Verify Page has correct Year format displayed at the page bottom
|
|
6001
|
+
await this.verifyPageContent(title);
|
|
6002
|
+
}
|
|
6003
|
+
async filterReleaseByTags(tags, release_title) {
|
|
6004
|
+
await this.page.locator(".tl-filter-release-tags").locator(".react-tagsinput").click();
|
|
6005
|
+
for (let tag of tags){
|
|
6006
|
+
tag = tag.toString();
|
|
6007
|
+
await this.page.locator(".tl-filter-release-tags").locator(".react-tagsinput-input").fill(tag);
|
|
6008
|
+
await this.page.getByTitle(tag).locator("i").click();
|
|
6009
|
+
}
|
|
6010
|
+
await this.verifyPageContent(release_title);
|
|
6011
|
+
}
|
|
6012
|
+
async filterTaskByTags(tags, task_title, release_title) {
|
|
6013
|
+
await this.page.locator(".tl-filter-task-tags").locator(".react-tagsinput").click();
|
|
6014
|
+
for (let tag of tags){
|
|
6015
|
+
tag = tag.toString();
|
|
6016
|
+
await this.page.locator(".tl-filter-task-tags").locator(".react-tagsinput-input").fill(tag);
|
|
6017
|
+
await this.page.getByTitle(tag).locator("i").click();
|
|
6018
|
+
}
|
|
6019
|
+
//Make sure task is visible on calnedar page
|
|
6020
|
+
await this.verifyPageContent(task_title);
|
|
6021
|
+
//Make sure parent release of the selected task is visible on calnedar page
|
|
6022
|
+
await this.verifyPageContent(release_title);
|
|
6023
|
+
}
|
|
6024
|
+
async filterReleaseByStatus(release_status, release_title) {
|
|
6025
|
+
if (!await this.page.locator(".tl-filter-advanced").isVisible()) await this.page.getByRole("button", {
|
|
6026
|
+
name: "Advanced filters"
|
|
6027
|
+
}).click();
|
|
6028
|
+
await this.page.locator(".tl-filter-release-status").locator(".react-tagsinput").click();
|
|
6029
|
+
await this.page.getByTitle(release_status).locator("i").first().click();
|
|
6030
|
+
await this.verifyPageContent(release_title);
|
|
6031
|
+
}
|
|
6032
|
+
async filterReleaseByRisk(release_risk, release_title) {
|
|
6033
|
+
if (!await this.page.locator(".tl-filter-advanced").isVisible()) await this.page.getByRole("button", {
|
|
6034
|
+
name: "Advanced filters"
|
|
6035
|
+
}).click();
|
|
6036
|
+
await this.page.locator(".tl-filter-risk-filter").getByRole("combobox").click();
|
|
6037
|
+
await this.page.getByRole("option", {
|
|
6038
|
+
name: release_risk
|
|
6039
|
+
}).click();
|
|
6040
|
+
await this.verifyPageContent(release_title);
|
|
6041
|
+
}
|
|
6042
|
+
async filterFlaggedRelease(release_title) {
|
|
6043
|
+
if (!await this.page.locator(".tl-filter-advanced").isVisible()) await this.page.getByRole("button", {
|
|
6044
|
+
name: "Advanced filters"
|
|
6045
|
+
}).click();
|
|
6046
|
+
if (await this.page.locator(".tl-filter-flag-only.btn.btn-flat.btn-fixed.button-toggle-filter.active").isVisible()) await this.page.getByRole("button", {
|
|
6047
|
+
name: " Flagged"
|
|
6048
|
+
}).click();
|
|
6049
|
+
await this.verifyPageContent(release_title);
|
|
6050
|
+
}
|
|
6033
6051
|
async viewRelease(release_title, release_id) {
|
|
6034
6052
|
await this.page.locator(".tl-header-navigation").getByRole("combobox").click();
|
|
6035
6053
|
await this.page.getByRole("option", {
|
|
@@ -7506,7 +7524,7 @@ class $171d52b372748c0b$export$7e1d435fa474ee21 extends (0, $9626bc9256ce31f7$ex
|
|
|
7506
7524
|
async clickNewReleaseIcon(templateName) {
|
|
7507
7525
|
await this.page.locator("xlr-template-row-component").filter({
|
|
7508
7526
|
hasText: templateName
|
|
7509
|
-
}).locator(".link .add-icon").click();
|
|
7527
|
+
}).locator(".link .add-icon").first().click();
|
|
7510
7528
|
await (0, $hOLA6$expect)(this.page.getByRole("heading", {
|
|
7511
7529
|
name: "Create new release"
|
|
7512
7530
|
})).toBeVisible();
|
|
@@ -8479,9 +8497,6 @@ class $2cbb78eec86d0a9f$export$2edf430132ca35d0 extends (0, $9626bc9256ce31f7$ex
|
|
|
8479
8497
|
hasText: "Changes saved successfully"
|
|
8480
8498
|
})).toBeVisible();
|
|
8481
8499
|
await this.page.locator(".success").getByRole("button").click();
|
|
8482
|
-
await (0, $hOLA6$expect)(this.page.locator(".success").filter({
|
|
8483
|
-
hasText: "Changes saved successfully"
|
|
8484
|
-
})).not.toBeVisible();
|
|
8485
8500
|
return this;
|
|
8486
8501
|
}
|
|
8487
8502
|
async reset() {
|
|
@@ -8577,7 +8592,7 @@ class $6c0f5b52769b32c3$export$9823ddf5e80770e7 extends (0, $9626bc9256ce31f7$ex
|
|
|
8577
8592
|
async addNewInstance(typeName) {
|
|
8578
8593
|
await this.page.locator(`.configuration-type`).filter({
|
|
8579
8594
|
hasText: typeName
|
|
8580
|
-
}).locator(`.new-instance .button`).
|
|
8595
|
+
}).locator(`.new-instance .button`).click({
|
|
8581
8596
|
force: true
|
|
8582
8597
|
});
|
|
8583
8598
|
return new $6c0f5b52769b32c3$var$ConfigurationInstancePage(this.page);
|