@digital-ai/devops-page-object-release 0.0.17 → 0.0.19
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 +19 -0
- package/dist/main.js +755 -60
- package/dist/main.js.map +1 -1
- package/dist/module.js +755 -60
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +157 -4
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/module.js
CHANGED
|
@@ -93,6 +93,18 @@ class $5359280e98d97ff9$export$a678525e79c4ccc4 extends (0, $9626bc9256ce31f7$ex
|
|
|
93
93
|
await this.releaseCreatePage.create();
|
|
94
94
|
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Flow")).toBeVisible();
|
|
95
95
|
}
|
|
96
|
+
async gotoListView() {
|
|
97
|
+
await this.page.getByRole("tab", {
|
|
98
|
+
name: "release icon List"
|
|
99
|
+
}).click();
|
|
100
|
+
await (0, $hOLA6$expect)(this.page.locator(".release-list")).toBeVisible();
|
|
101
|
+
}
|
|
102
|
+
async gotoCalendarView() {
|
|
103
|
+
await this.page.getByRole("tab", {
|
|
104
|
+
name: "calendar icon Calendar"
|
|
105
|
+
}).click();
|
|
106
|
+
await (0, $hOLA6$expect)(this.page.locator(".tl-viewport")).toBeVisible();
|
|
107
|
+
}
|
|
96
108
|
}
|
|
97
109
|
|
|
98
110
|
|
|
@@ -394,18 +406,12 @@ class $90bb70a7e909e500$export$519356f6c50361f7 extends (0, $9626bc9256ce31f7$ex
|
|
|
394
406
|
}
|
|
395
407
|
async expectDependencyText(dependencies) {
|
|
396
408
|
await (0, $hOLA6$expect)(this.railLocator.locator(".gate-task-dependencies")).toBeVisible();
|
|
397
|
-
await (0, $hOLA6$expect)(this.page.
|
|
398
|
-
name: dependencies,
|
|
399
|
-
exact: true
|
|
400
|
-
}).first()).toBeVisible();
|
|
409
|
+
await (0, $hOLA6$expect)(this.page.locator(`.gate-task-dependencies`).getByLabel(dependencies).first()).toBeVisible();
|
|
401
410
|
}
|
|
402
411
|
async clickEditDependency(dependencies) {
|
|
403
412
|
const depOptionsIcon = this.page.locator(".dependency").filter({
|
|
404
|
-
has: this.page.
|
|
405
|
-
|
|
406
|
-
exact: true
|
|
407
|
-
})
|
|
408
|
-
}).locator(".icon-options");
|
|
413
|
+
has: this.page.getByLabel(dependencies)
|
|
414
|
+
}).first().locator(".actions");
|
|
409
415
|
await depOptionsIcon.isVisible();
|
|
410
416
|
await depOptionsIcon.click();
|
|
411
417
|
const frame = this.page.getByTestId("undefined-menu");
|
|
@@ -460,12 +466,18 @@ class $90bb70a7e909e500$export$fbbf45eff21470e3 extends (0, $9626bc9256ce31f7$ex
|
|
|
460
466
|
async setPhase(phaseTitle) {
|
|
461
467
|
await this.phase.click();
|
|
462
468
|
await this.phase.fill("");
|
|
463
|
-
await this.page.getByRole("option", {
|
|
469
|
+
const count = await this.page.getByRole("option", {
|
|
464
470
|
name: phaseTitle
|
|
465
|
-
}).
|
|
466
|
-
await this.page.getByRole("option", {
|
|
471
|
+
}).count();
|
|
472
|
+
if (count > 0) await this.page.getByRole("option", {
|
|
467
473
|
name: phaseTitle
|
|
468
474
|
}).click();
|
|
475
|
+
else {
|
|
476
|
+
await this.page.locator(".phase-dependency").getByLabel("Open").click();
|
|
477
|
+
await this.page.getByRole("option", {
|
|
478
|
+
name: phaseTitle
|
|
479
|
+
}).click();
|
|
480
|
+
}
|
|
469
481
|
}
|
|
470
482
|
async setTask(taskTitle) {
|
|
471
483
|
await this.task.click();
|
|
@@ -593,6 +605,9 @@ class $8e39246218b802fc$export$e946776eae644790 extends (0, $9626bc9256ce31f7$ex
|
|
|
593
605
|
name: "arrow-down icon",
|
|
594
606
|
exact: true
|
|
595
607
|
});
|
|
608
|
+
this.completeButton = this.page.getByRole("button", {
|
|
609
|
+
name: "Complete"
|
|
610
|
+
});
|
|
596
611
|
}
|
|
597
612
|
async openOverviewRail() {
|
|
598
613
|
await this.openRail("Overview");
|
|
@@ -639,6 +654,11 @@ class $8e39246218b802fc$export$e946776eae644790 extends (0, $9626bc9256ce31f7$ex
|
|
|
639
654
|
await this.commentBox.fill(comment);
|
|
640
655
|
await this.confirm.click();
|
|
641
656
|
}
|
|
657
|
+
async completeTask(comment) {
|
|
658
|
+
await this.completeButton.click();
|
|
659
|
+
await this.commentBox.fill(comment);
|
|
660
|
+
await this.confirm.click();
|
|
661
|
+
}
|
|
642
662
|
async expectTaskTitle(taskTitle) {
|
|
643
663
|
(0, $hOLA6$expect)(await this.page.locator(".task-drawer .task-title-input .dot-view-mode-typography").innerText()).toContain(taskTitle);
|
|
644
664
|
}
|
|
@@ -666,6 +686,42 @@ class $8e39246218b802fc$export$e946776eae644790 extends (0, $9626bc9256ce31f7$ex
|
|
|
666
686
|
name: username
|
|
667
687
|
})).toBeVisible();
|
|
668
688
|
}
|
|
689
|
+
async expectStartNowButtonToBeVisible() {
|
|
690
|
+
await (0, $hOLA6$expect)(this.page.getByTestId("single-action-button")).toBeVisible();
|
|
691
|
+
}
|
|
692
|
+
async startNow(comment) {
|
|
693
|
+
await this.page.getByTestId("single-action-button").click();
|
|
694
|
+
await this.page.getByTestId("task-action-comment").fill(comment);
|
|
695
|
+
await this.page.getByTestId("dot-button").click();
|
|
696
|
+
await (0, $hOLA6$expect)(this.page.getByTestId("single-action-button")).not.toBeVisible();
|
|
697
|
+
}
|
|
698
|
+
async expectCommentsToContain(text) {
|
|
699
|
+
await (0, $hOLA6$expect)(this.page.locator(".task-comment-body .markdown-wrapper p")).toContainText(text);
|
|
700
|
+
}
|
|
701
|
+
async switchWaitForScheduledDate() {
|
|
702
|
+
await this.page.locator(".wait-for-start input").click();
|
|
703
|
+
}
|
|
704
|
+
async expectWaitForScheduledDateToBeChecked() {
|
|
705
|
+
await (0, $hOLA6$expect)(this.page.locator(".wait-for-start input")).toBeChecked();
|
|
706
|
+
}
|
|
707
|
+
async expectWaitForScheduledDateToBeUnchecked() {
|
|
708
|
+
await (0, $hOLA6$expect)(this.page.locator(".wait-for-start input")).not.toBeChecked();
|
|
709
|
+
}
|
|
710
|
+
// Other locators are flaky and it can be replaced if we get locator change in the frontend
|
|
711
|
+
async clickOnStartDate() {
|
|
712
|
+
await this.page.getByTestId("month-and-year").first().click();
|
|
713
|
+
}
|
|
714
|
+
async removeStartDate() {
|
|
715
|
+
await this.page.getByRole("button", {
|
|
716
|
+
name: "Set by user"
|
|
717
|
+
}).locator(".MuiChip-deleteIcon").click();
|
|
718
|
+
}
|
|
719
|
+
async setStartDate(date) {
|
|
720
|
+
await this.clickOnStartDate();
|
|
721
|
+
await this.page.locator(".MuiPickersDay-root", {
|
|
722
|
+
hasText: date
|
|
723
|
+
}).click();
|
|
724
|
+
}
|
|
669
725
|
async assignToMe(userName, existingUsername) {
|
|
670
726
|
await this.page.getByRole("button", {
|
|
671
727
|
name: existingUsername
|
|
@@ -921,6 +977,49 @@ class $71075ce65fcede1d$export$9b575f14aa5e09a1 extends (0, $9626bc9256ce31f7$ex
|
|
|
921
977
|
const value = await input.inputValue();
|
|
922
978
|
(0, $hOLA6$expect)(value).toBe(formattedDate);
|
|
923
979
|
}
|
|
980
|
+
/**
|
|
981
|
+
*
|
|
982
|
+
* @returns Getting current month and year in the format "MonthName YYYY"
|
|
983
|
+
*/ async getCurrentMonthYear() {
|
|
984
|
+
const monthNames = [
|
|
985
|
+
"January",
|
|
986
|
+
"February",
|
|
987
|
+
"March",
|
|
988
|
+
"April",
|
|
989
|
+
"May",
|
|
990
|
+
"June",
|
|
991
|
+
"July",
|
|
992
|
+
"August",
|
|
993
|
+
"September",
|
|
994
|
+
"October",
|
|
995
|
+
"November",
|
|
996
|
+
"December"
|
|
997
|
+
];
|
|
998
|
+
const d = new Date();
|
|
999
|
+
const month = monthNames[d.getMonth()];
|
|
1000
|
+
const year = d.getFullYear();
|
|
1001
|
+
return `${month} ${year}`;
|
|
1002
|
+
}
|
|
1003
|
+
/**
|
|
1004
|
+
*
|
|
1005
|
+
* @returns Getting current date in the format "dd MonthName YYYY"
|
|
1006
|
+
*/ async getCurrentDate() {
|
|
1007
|
+
const d = new Date();
|
|
1008
|
+
const date = d.getDate();
|
|
1009
|
+
const monthYear = await this.getCurrentMonthYear();
|
|
1010
|
+
return `${date} ${monthYear}`;
|
|
1011
|
+
}
|
|
1012
|
+
/**
|
|
1013
|
+
*
|
|
1014
|
+
* @param days Number of days to add to current date within the current month
|
|
1015
|
+
* @returns
|
|
1016
|
+
*/ async getFutureDate(days) {
|
|
1017
|
+
const d = new Date();
|
|
1018
|
+
d.setDate(d.getDate() + days);
|
|
1019
|
+
const date = d.getDate();
|
|
1020
|
+
const monthYear = await this.getCurrentMonthYear();
|
|
1021
|
+
return `${date} ${monthYear}`;
|
|
1022
|
+
}
|
|
924
1023
|
}
|
|
925
1024
|
|
|
926
1025
|
|
|
@@ -953,11 +1052,56 @@ class $87bbb6d35ad31a00$export$f8f26dd395d7e1bd extends (0, $9626bc9256ce31f7$ex
|
|
|
953
1052
|
async openSideNavMenu(menuItem) {
|
|
954
1053
|
await this.page.locator(`navigation-sidebar ul li`).getByText(menuItem, {
|
|
955
1054
|
exact: true
|
|
1055
|
+
}).scrollIntoViewIfNeeded();
|
|
1056
|
+
await this.page.locator(`navigation-sidebar ul li`).getByText(menuItem, {
|
|
1057
|
+
exact: true
|
|
1058
|
+
}).click();
|
|
1059
|
+
}
|
|
1060
|
+
async openNestedMenuItem(nestedMenuItem) {
|
|
1061
|
+
await this.page.locator(".MuiList-root li").getByText(nestedMenuItem, {
|
|
1062
|
+
exact: true
|
|
1063
|
+
}).scrollIntoViewIfNeeded();
|
|
1064
|
+
await this.page.locator(".MuiList-root li").getByText(nestedMenuItem, {
|
|
1065
|
+
exact: true
|
|
956
1066
|
}).click();
|
|
957
1067
|
}
|
|
958
1068
|
async clickCloseIcon() {
|
|
959
1069
|
await this.closeIcon.click();
|
|
960
1070
|
}
|
|
1071
|
+
async clickOnStatusField() {
|
|
1072
|
+
await this.page.locator(".ci-filter-status.ng-isolate-scope").click();
|
|
1073
|
+
}
|
|
1074
|
+
async clickOnStatus(statusNames) {
|
|
1075
|
+
await this.clickOnStatusClearAll();
|
|
1076
|
+
await this.clickOnStatusField();
|
|
1077
|
+
for(let i = 0; i < statusNames.length; i++)await this.page.locator(`i.xl-icon.icon-s.checkbox[data='${statusNames[i]}']`).click();
|
|
1078
|
+
// Clicking outside to close the grid dropdown
|
|
1079
|
+
await this.page.getByText("Status").click();
|
|
1080
|
+
}
|
|
1081
|
+
async clickOnStatusClearAll() {
|
|
1082
|
+
await this.clickOnStatusField();
|
|
1083
|
+
await this.page.locator("a.xl-react-link", {
|
|
1084
|
+
hasText: "Clear all"
|
|
1085
|
+
}).click();
|
|
1086
|
+
await this.page.getByText("Status").click();
|
|
1087
|
+
}
|
|
1088
|
+
async clickOnStatusSelectAll() {
|
|
1089
|
+
await this.clickOnStatusField();
|
|
1090
|
+
await this.page.locator("a.xl-react-link", {
|
|
1091
|
+
hasText: "Select all"
|
|
1092
|
+
}).click();
|
|
1093
|
+
await this.page.getByText("Status").click();
|
|
1094
|
+
}
|
|
1095
|
+
async setOrderBy(orderBy) {
|
|
1096
|
+
await this.page.locator(".order-by-filter .btn:first-child").click();
|
|
1097
|
+
await this.page.locator(`.order-by-filter .bootstrap-link:has-text('${orderBy}')`).click();
|
|
1098
|
+
}
|
|
1099
|
+
async setSearchFilter(filterText) {
|
|
1100
|
+
await this.page.locator(".searchFilter").fill(filterText);
|
|
1101
|
+
}
|
|
1102
|
+
async clearSearchFilter() {
|
|
1103
|
+
await this.page.locator(".searchFilter").clear();
|
|
1104
|
+
}
|
|
961
1105
|
}
|
|
962
1106
|
|
|
963
1107
|
|
|
@@ -1012,6 +1156,13 @@ class $43cbcdfccb6c2a76$export$f43492e8ac3c566 extends (0, $9626bc9256ce31f7$exp
|
|
|
1012
1156
|
timeout: 10000
|
|
1013
1157
|
});
|
|
1014
1158
|
}
|
|
1159
|
+
async waitForTaskCompletedInAdvance(taskTitle) {
|
|
1160
|
+
await (0, $hOLA6$expect)(this.page.locator(".task.completed_in_advance").getByText(taskTitle, {
|
|
1161
|
+
exact: true
|
|
1162
|
+
})).toBeVisible({
|
|
1163
|
+
timeout: 10000
|
|
1164
|
+
});
|
|
1165
|
+
}
|
|
1015
1166
|
async waitForTaskInProgress(taskTitle) {
|
|
1016
1167
|
await (0, $hOLA6$expect)(this.page.locator(".task.in_progress").getByText(taskTitle, {
|
|
1017
1168
|
exact: true
|
|
@@ -1062,6 +1213,21 @@ class $43cbcdfccb6c2a76$export$f43492e8ac3c566 extends (0, $9626bc9256ce31f7$exp
|
|
|
1062
1213
|
async waitForTaskPlanned(title) {
|
|
1063
1214
|
await (0, $hOLA6$expect)(this.page.locator(`.task:has-text('${title}').planned`)).toBeVisible();
|
|
1064
1215
|
}
|
|
1216
|
+
async expectTaskCompletedInAdvance(taskTitle) {
|
|
1217
|
+
await (0, $hOLA6$expect)(this.page.locator("#release-content .completed_in_advance .task-title").filter({
|
|
1218
|
+
hasText: taskTitle
|
|
1219
|
+
})).toBeVisible();
|
|
1220
|
+
}
|
|
1221
|
+
async expectTaskPending(taskTitle) {
|
|
1222
|
+
await (0, $hOLA6$expect)(this.page.locator(".task.pending").getByText(taskTitle, {
|
|
1223
|
+
exact: true
|
|
1224
|
+
})).toBeVisible();
|
|
1225
|
+
}
|
|
1226
|
+
async expectCurrentTaskToContain(taskTitle) {
|
|
1227
|
+
await (0, $hOLA6$expect)(this.page.locator(".task.active .task-title").getByText(taskTitle, {
|
|
1228
|
+
exact: true
|
|
1229
|
+
})).toBeVisible();
|
|
1230
|
+
}
|
|
1065
1231
|
async openManualTaskDetails(title) {
|
|
1066
1232
|
await this.page.locator(`text=${title}`).click({
|
|
1067
1233
|
force: true
|
|
@@ -1239,6 +1405,7 @@ class $43cbcdfccb6c2a76$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97
|
|
|
1239
1405
|
});
|
|
1240
1406
|
this.commentBox = this.page.locator(`.input-block-level`);
|
|
1241
1407
|
this.confirm = this.page.getByTestId("dot-button");
|
|
1408
|
+
this.contextMenuButton = this.page.locator("#context-menu-container li");
|
|
1242
1409
|
this.dateUtil = new (0, $71075ce65fcede1d$export$9b575f14aa5e09a1)(page);
|
|
1243
1410
|
}
|
|
1244
1411
|
async setTitle(title) {
|
|
@@ -1247,18 +1414,55 @@ class $43cbcdfccb6c2a76$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97
|
|
|
1247
1414
|
await this.phaseLocator.locator(".phase-header input").fill(title);
|
|
1248
1415
|
await this.phaseLocator.locator(".phase-header input").blur();
|
|
1249
1416
|
}
|
|
1417
|
+
async isMenuItemEnabled(menuName, taskTitle) {
|
|
1418
|
+
await this.openContextMenuForTask(taskTitle);
|
|
1419
|
+
await (0, $hOLA6$expect)(this.contextMenuButton.filter({
|
|
1420
|
+
hasText: menuName
|
|
1421
|
+
})).not.toHaveClass(/disabled/);
|
|
1422
|
+
await (0, $hOLA6$expect)(this.contextMenuButton.filter({
|
|
1423
|
+
hasText: menuName
|
|
1424
|
+
}).locator("a")).not.toBeDisabled();
|
|
1425
|
+
await this.closeContextMenu();
|
|
1426
|
+
}
|
|
1427
|
+
async isMenuItemDisabled(menuName, taskTitle) {
|
|
1428
|
+
await this.openContextMenuForTask(taskTitle);
|
|
1429
|
+
await (0, $hOLA6$expect)(this.contextMenuButton.filter({
|
|
1430
|
+
hasText: menuName
|
|
1431
|
+
})).toHaveClass(/disabled/);
|
|
1432
|
+
await (0, $hOLA6$expect)(this.contextMenuButton.filter({
|
|
1433
|
+
hasText: menuName
|
|
1434
|
+
}).locator("a")).toBeDisabled();
|
|
1435
|
+
await this.closeContextMenu();
|
|
1436
|
+
}
|
|
1437
|
+
async expectMenuItemIsNotVisible(menuName, taskTitle) {
|
|
1438
|
+
await this.openContextMenuForTask(taskTitle);
|
|
1439
|
+
await (0, $hOLA6$expect)(this.page.locator("#context-menu-container li").filter({
|
|
1440
|
+
hasText: menuName
|
|
1441
|
+
})).not.toBeVisible();
|
|
1442
|
+
await this.closeContextMenu();
|
|
1443
|
+
}
|
|
1444
|
+
async expectMenuItemIsVisible(menuName, taskTitle) {
|
|
1445
|
+
await this.openContextMenuForTask(taskTitle);
|
|
1446
|
+
await (0, $hOLA6$expect)(this.page.locator("#context-menu-container li").filter({
|
|
1447
|
+
hasText: menuName
|
|
1448
|
+
})).toBeVisible();
|
|
1449
|
+
await this.closeContextMenu();
|
|
1450
|
+
}
|
|
1451
|
+
async closeContextMenu() {
|
|
1452
|
+
await this.page.locator("#release-header").click();
|
|
1453
|
+
}
|
|
1250
1454
|
async expectTaskBorderWithColor(taskName, color) {
|
|
1251
1455
|
await (0, $hOLA6$expect)(this.page.locator(`.task-box:has-text('${taskName}')`)).toHaveCSS("border-top-color", color);
|
|
1252
1456
|
}
|
|
1253
1457
|
async addTaskInPhase(taskTitle, taskGroup, taskType) {
|
|
1254
1458
|
await this.phaseLocator.getByText("Add task").click();
|
|
1255
|
-
await this.
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
await this.phaseLocator.getByPlaceholder("Start typing to filter task").fill(taskGroup);
|
|
1459
|
+
await this.page.locator("#task-selector").hover();
|
|
1460
|
+
await this.page.locator('button[aria-label="Clear"]').click();
|
|
1461
|
+
await this.page.locator("#task-selector").fill(taskGroup);
|
|
1259
1462
|
await this.page.getByTestId(taskType).click();
|
|
1260
|
-
await this.
|
|
1261
|
-
await this.
|
|
1463
|
+
await this.page.locator(".icon-close").click();
|
|
1464
|
+
await this.page.locator("#task-title").fill(taskTitle);
|
|
1465
|
+
await this.page.getByTestId("save-select-task-btn").click();
|
|
1262
1466
|
await (0, $hOLA6$expect)(this.phaseLocator.getByText(taskTitle)).toBeVisible();
|
|
1263
1467
|
}
|
|
1264
1468
|
async getNumberOfTasks() {
|
|
@@ -1270,11 +1474,6 @@ class $43cbcdfccb6c2a76$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97
|
|
|
1270
1474
|
async expectToHaveTitle(phaseTitle) {
|
|
1271
1475
|
await (0, $hOLA6$expect)(this.phaseLocator.locator(".phase-title")).toContainText(phaseTitle);
|
|
1272
1476
|
}
|
|
1273
|
-
async expectTemplateLabelNotToBePresent() {
|
|
1274
|
-
await (0, $hOLA6$expect)(this.page.locator(".dot-chip").filter({
|
|
1275
|
-
hasText: "TEMPLATE"
|
|
1276
|
-
})).not.toBeVisible();
|
|
1277
|
-
}
|
|
1278
1477
|
async openContextMenuForTask(taskTitle) {
|
|
1279
1478
|
await this.phaseLocator.locator(".task").filter({
|
|
1280
1479
|
hasText: taskTitle
|
|
@@ -1289,6 +1488,11 @@ class $43cbcdfccb6c2a76$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97
|
|
|
1289
1488
|
exact: true
|
|
1290
1489
|
}).click();
|
|
1291
1490
|
}
|
|
1491
|
+
async expectTemplateLabelNotToBePresent() {
|
|
1492
|
+
await (0, $hOLA6$expect)(this.page.locator(".dot-chip").filter({
|
|
1493
|
+
hasText: "TEMPLATE"
|
|
1494
|
+
})).not.toBeVisible();
|
|
1495
|
+
}
|
|
1292
1496
|
async openPhaseDetails() {
|
|
1293
1497
|
await this.phaseLocator.locator(".phase-details").click();
|
|
1294
1498
|
}
|
|
@@ -1414,6 +1618,204 @@ class $b14c3492cf934ea2$export$e40b5d3c74b04c89 {
|
|
|
1414
1618
|
|
|
1415
1619
|
|
|
1416
1620
|
|
|
1621
|
+
class $4cdce1306be47ecd$export$eace2be4de1d3377 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1622
|
+
constructor(page){
|
|
1623
|
+
super(page);
|
|
1624
|
+
this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
|
|
1625
|
+
this.addName = page.locator('.xl-react-components input[placeholder="Add..."]');
|
|
1626
|
+
this.addDescription = page.getByPlaceholder("Set description...");
|
|
1627
|
+
this.searchForDelivery = page.getByPlaceholder("Search for deliveries...", {
|
|
1628
|
+
exact: true
|
|
1629
|
+
});
|
|
1630
|
+
}
|
|
1631
|
+
async filterDeliveryByName(deliveryName) {
|
|
1632
|
+
await this.searchForDelivery.click();
|
|
1633
|
+
await this.searchForDelivery.clear();
|
|
1634
|
+
await this.searchForDelivery.fill(deliveryName);
|
|
1635
|
+
await this.searchForDelivery.press("Enter");
|
|
1636
|
+
await (0, $hOLA6$expect)(this.page.locator("xlr-delivery-row").filter({
|
|
1637
|
+
hasText: deliveryName
|
|
1638
|
+
}).getByRole("link").first()).toBeVisible();
|
|
1639
|
+
}
|
|
1640
|
+
async editDelivery(deliveryName, newDeliveryName) {
|
|
1641
|
+
await this.page.locator("xlr-delivery-row").filter({
|
|
1642
|
+
hasText: deliveryName
|
|
1643
|
+
}).locator(".fc-list-item-actions .edit-icon").click();
|
|
1644
|
+
await this.util.openSideNavMenu("Properties");
|
|
1645
|
+
await this.addName.click();
|
|
1646
|
+
await this.addName.clear();
|
|
1647
|
+
await this.addName.fill(newDeliveryName);
|
|
1648
|
+
await this.page.getByRole("button", {
|
|
1649
|
+
name: "Save"
|
|
1650
|
+
}).click();
|
|
1651
|
+
(0, $hOLA6$expect)(await this.page.locator(".saved-text").textContent()).toContain("Last saved on ");
|
|
1652
|
+
}
|
|
1653
|
+
async deleteDelivery(deliveryName) {
|
|
1654
|
+
await this.page.locator("xlr-delivery-row").filter({
|
|
1655
|
+
hasText: deliveryName
|
|
1656
|
+
}).locator(".fc-list-item-actions .delete-icon").click();
|
|
1657
|
+
await (0, $hOLA6$expect)(this.page.getByText("Delete release delivery", {
|
|
1658
|
+
exact: true
|
|
1659
|
+
})).toBeVisible();
|
|
1660
|
+
await this.page.getByRole("button", {
|
|
1661
|
+
name: "Delete"
|
|
1662
|
+
}).click();
|
|
1663
|
+
await (0, $hOLA6$expect)(this.page.locator(".success").filter({
|
|
1664
|
+
hasText: "Deleted release delivery successfully"
|
|
1665
|
+
})).toBeVisible();
|
|
1666
|
+
}
|
|
1667
|
+
}
|
|
1668
|
+
|
|
1669
|
+
|
|
1670
|
+
|
|
1671
|
+
|
|
1672
|
+
|
|
1673
|
+
|
|
1674
|
+
class $27cd192f30944b0c$export$572f40d328c1d028 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1675
|
+
constructor(page){
|
|
1676
|
+
super(page);
|
|
1677
|
+
this.dateUtil = new (0, $71075ce65fcede1d$export$9b575f14aa5e09a1)(page);
|
|
1678
|
+
this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
|
|
1679
|
+
this.newReleaseGroupButton = page.getByTestId("dot-button");
|
|
1680
|
+
this.dateMonth = new Date();
|
|
1681
|
+
}
|
|
1682
|
+
async createGroup(groupName, startDate, endDate) {
|
|
1683
|
+
await this.newReleaseGroupButton.click();
|
|
1684
|
+
await (0, $hOLA6$expect)(this.page.getByText("Create new release group")).toBeVisible();
|
|
1685
|
+
await this.enterGroupName(groupName);
|
|
1686
|
+
const monthYear = await this.dateUtil.getCurrentMonthYear();
|
|
1687
|
+
if (startDate) await this.enterStartDate(startDate, monthYear);
|
|
1688
|
+
if (endDate) await this.enterEndDate(endDate, monthYear);
|
|
1689
|
+
await this.clickCreate();
|
|
1690
|
+
await this.expectSuccessMessageOnReleaseGroupCreation();
|
|
1691
|
+
}
|
|
1692
|
+
async addReleaseToGroup(releaseName) {
|
|
1693
|
+
await (0, $hOLA6$expect)(this.page.locator(".action-toolbar-actions button").filter({
|
|
1694
|
+
hasText: "Add release"
|
|
1695
|
+
})).toBeEnabled();
|
|
1696
|
+
await this.page.locator(".action-toolbar-actions button").filter({
|
|
1697
|
+
hasText: "Add release"
|
|
1698
|
+
}).click({
|
|
1699
|
+
force: true
|
|
1700
|
+
});
|
|
1701
|
+
await this.page.getByPlaceholder("Search for a release...").click();
|
|
1702
|
+
await this.page.getByPlaceholder("Search for a release...").fill(releaseName);
|
|
1703
|
+
await this.page.keyboard.press("Enter");
|
|
1704
|
+
await this.page.locator("release-list-modal-release-row").filter({
|
|
1705
|
+
hasText: releaseName
|
|
1706
|
+
}).getByRole("checkbox").check();
|
|
1707
|
+
await this.page.getByRole("button", {
|
|
1708
|
+
name: "Add"
|
|
1709
|
+
}).click();
|
|
1710
|
+
await this.expectSuccessMessageOnAddingReleaseToGroup();
|
|
1711
|
+
await (0, $hOLA6$expect)(this.page.getByRole("link", {
|
|
1712
|
+
name: releaseName
|
|
1713
|
+
})).toBeVisible();
|
|
1714
|
+
}
|
|
1715
|
+
async editReleaseGroupName(newGroupName) {
|
|
1716
|
+
await this.page.locator("#title").click();
|
|
1717
|
+
await this.page.locator("#title").clear();
|
|
1718
|
+
await this.page.locator("#title").fill(newGroupName);
|
|
1719
|
+
}
|
|
1720
|
+
async enterGroupName(groupName) {
|
|
1721
|
+
await this.page.locator("#title").click();
|
|
1722
|
+
await this.page.locator("#title").fill(groupName);
|
|
1723
|
+
}
|
|
1724
|
+
async enterStartDate(date, monthYear) {
|
|
1725
|
+
await this.page.locator(".form-group").filter({
|
|
1726
|
+
hasText: "start date"
|
|
1727
|
+
}).locator(".date input").click();
|
|
1728
|
+
await this.dateUtil.setDate(date, monthYear);
|
|
1729
|
+
}
|
|
1730
|
+
async enterEndDate(date, monthYear) {
|
|
1731
|
+
await this.page.locator(".form-group").filter({
|
|
1732
|
+
hasText: "end date"
|
|
1733
|
+
}).locator(".date input").click();
|
|
1734
|
+
await this.dateUtil.setDate(date, monthYear);
|
|
1735
|
+
}
|
|
1736
|
+
async clickCreate() {
|
|
1737
|
+
await this.page.getByRole("button", {
|
|
1738
|
+
name: "Create"
|
|
1739
|
+
}).click();
|
|
1740
|
+
}
|
|
1741
|
+
async expectSuccessMessageOnReleaseGroupCreation() {
|
|
1742
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("success")).toBeVisible();
|
|
1743
|
+
await (0, $hOLA6$expect)(this.page.locator(".success").filter({
|
|
1744
|
+
hasText: "Created release group successfully"
|
|
1745
|
+
})).toBeVisible();
|
|
1746
|
+
}
|
|
1747
|
+
async expectSuccessMessageOnAddingReleaseToGroup() {
|
|
1748
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("success")).toBeVisible();
|
|
1749
|
+
await (0, $hOLA6$expect)(this.page.locator(".success").filter({
|
|
1750
|
+
hasText: "Added release to release group successfully"
|
|
1751
|
+
})).toBeVisible();
|
|
1752
|
+
}
|
|
1753
|
+
async expectSuccessMessageOnUpdatingGroup() {
|
|
1754
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("success")).toBeVisible();
|
|
1755
|
+
await (0, $hOLA6$expect)(this.page.locator(".success").filter({
|
|
1756
|
+
hasText: "Updated release group successfully"
|
|
1757
|
+
})).toBeVisible();
|
|
1758
|
+
}
|
|
1759
|
+
async searchReleaseGroupByTitle(title) {
|
|
1760
|
+
await this.page.getByPlaceholder("Search for groups...", {
|
|
1761
|
+
exact: true
|
|
1762
|
+
}).click();
|
|
1763
|
+
await this.page.getByPlaceholder("Search for groups...", {
|
|
1764
|
+
exact: true
|
|
1765
|
+
}).fill(title);
|
|
1766
|
+
await this.page.getByPlaceholder("Search for groups...", {
|
|
1767
|
+
exact: true
|
|
1768
|
+
}).press("Enter");
|
|
1769
|
+
await (0, $hOLA6$expect)(this.page.locator(".fc-list-item-title")).toContainText(title);
|
|
1770
|
+
}
|
|
1771
|
+
async deleteReleaseGroup(title) {
|
|
1772
|
+
await this.page.locator(".fc-list-item-line").filter({
|
|
1773
|
+
hasText: title
|
|
1774
|
+
}).locator(".fc-item-delete").click();
|
|
1775
|
+
await this.page.getByRole("button", {
|
|
1776
|
+
name: "Delete"
|
|
1777
|
+
}).click();
|
|
1778
|
+
}
|
|
1779
|
+
async clickReleaseGroupEdit(title) {
|
|
1780
|
+
await this.page.locator(".fc-list-item-line").filter({
|
|
1781
|
+
hasText: title
|
|
1782
|
+
}).locator(".fc-item-update").click();
|
|
1783
|
+
}
|
|
1784
|
+
async clickSave() {
|
|
1785
|
+
await this.page.getByRole("button", {
|
|
1786
|
+
name: "Save"
|
|
1787
|
+
}).click();
|
|
1788
|
+
}
|
|
1789
|
+
async clickCancel() {
|
|
1790
|
+
await this.page.getByRole("button", {
|
|
1791
|
+
name: "Cancel"
|
|
1792
|
+
}).click();
|
|
1793
|
+
}
|
|
1794
|
+
async clickOnStatusField() {
|
|
1795
|
+
await this.page.locator(".ci-filter-status.ng-isolate-scope").click();
|
|
1796
|
+
}
|
|
1797
|
+
async statusFilter(statusNames) {
|
|
1798
|
+
await this.clickOnStatusClearAll();
|
|
1799
|
+
await this.clickOnStatusField();
|
|
1800
|
+
for(let i = 0; i < statusNames.length; i++)await this.page.locator(`i.xl-icon.icon-s.checkbox[data='${statusNames[i]}']`).click();
|
|
1801
|
+
}
|
|
1802
|
+
async clickOnStatusClearAll() {
|
|
1803
|
+
await this.clickOnStatusField();
|
|
1804
|
+
await this.page.locator("a.xl-react-link", {
|
|
1805
|
+
hasText: "Clear all"
|
|
1806
|
+
}).click();
|
|
1807
|
+
}
|
|
1808
|
+
async clickOnStatusSelectAll() {
|
|
1809
|
+
await this.clickOnStatusField();
|
|
1810
|
+
await this.page.locator("a.xl-react-link", {
|
|
1811
|
+
hasText: "Select all"
|
|
1812
|
+
}).click();
|
|
1813
|
+
}
|
|
1814
|
+
}
|
|
1815
|
+
|
|
1816
|
+
|
|
1817
|
+
|
|
1818
|
+
|
|
1417
1819
|
|
|
1418
1820
|
class $d13e78163af94d50$export$9b9454a7f137e99b extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1419
1821
|
constructor(page){
|
|
@@ -1459,12 +1861,14 @@ class $d13e78163af94d50$export$9b9454a7f137e99b extends (0, $9626bc9256ce31f7$ex
|
|
|
1459
1861
|
await this.clickNewDeliveryPattern();
|
|
1460
1862
|
await this.setPatternName(patternName);
|
|
1461
1863
|
await this.setPatternDescription(patternDescription);
|
|
1462
|
-
await (0, $hOLA6$expect)(this.page.locator("
|
|
1864
|
+
await (0, $hOLA6$expect)(this.page.locator(".action-toolbar-actions button").filter({
|
|
1463
1865
|
hasText: "Create"
|
|
1464
1866
|
})).toBeEnabled();
|
|
1465
|
-
await this.page.locator("
|
|
1867
|
+
await this.page.locator(".action-toolbar-actions button").filter({
|
|
1466
1868
|
hasText: "Create"
|
|
1467
|
-
}).
|
|
1869
|
+
}).click({
|
|
1870
|
+
force: true
|
|
1871
|
+
});
|
|
1468
1872
|
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Delivery flow")).toBeVisible();
|
|
1469
1873
|
}
|
|
1470
1874
|
async clickEditPatternIcon(patternName) {
|
|
@@ -1497,8 +1901,7 @@ class $d13e78163af94d50$export$9b9454a7f137e99b extends (0, $9626bc9256ce31f7$ex
|
|
|
1497
1901
|
}
|
|
1498
1902
|
async copyPattern(existingPatternName, NewPatternName) {
|
|
1499
1903
|
await this.clickCopyPatternIcon(existingPatternName);
|
|
1500
|
-
await this.page.locator(
|
|
1501
|
-
await this.page.locator(".confirmation-content .close-icon").click();
|
|
1904
|
+
await this.page.locator(".xl-icon.close-icon").first().click();
|
|
1502
1905
|
await this.addName.fill(NewPatternName);
|
|
1503
1906
|
await this.page.getByRole("button", {
|
|
1504
1907
|
name: "Continue"
|
|
@@ -1519,6 +1922,25 @@ class $d13e78163af94d50$export$9b9454a7f137e99b extends (0, $9626bc9256ce31f7$ex
|
|
|
1519
1922
|
hasText: patternName
|
|
1520
1923
|
})).not.toBeVisible();
|
|
1521
1924
|
}
|
|
1925
|
+
async createNewDelivery(deliveryName, deliveryDes, setAutoComplete) {
|
|
1926
|
+
await this.page.getByTestId("dot-button").click();
|
|
1927
|
+
await this.addName.fill(deliveryName);
|
|
1928
|
+
await this.addDescription.click();
|
|
1929
|
+
if (deliveryDes) await this.addDescription.fill(deliveryDes);
|
|
1930
|
+
else await this.addDescription.fill("Description");
|
|
1931
|
+
if (setAutoComplete) await this.page.getByRole("checkbox").check();
|
|
1932
|
+
await (0, $hOLA6$expect)(this.page.locator(".action-toolbar-actions button").filter({
|
|
1933
|
+
hasText: "Create"
|
|
1934
|
+
})).toBeEnabled();
|
|
1935
|
+
await this.page.locator(".action-toolbar-actions button").filter({
|
|
1936
|
+
hasText: "Create"
|
|
1937
|
+
}).click({
|
|
1938
|
+
force: true
|
|
1939
|
+
});
|
|
1940
|
+
await (0, $hOLA6$expect)(this.page.locator(".MuiBreadcrumbs-li").getByRole("link", {
|
|
1941
|
+
name: `${deliveryName}`
|
|
1942
|
+
})).toBeVisible();
|
|
1943
|
+
}
|
|
1522
1944
|
}
|
|
1523
1945
|
class $d13e78163af94d50$var$Properties extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1524
1946
|
constructor(page){
|
|
@@ -1556,14 +1978,18 @@ class $d13e78163af94d50$var$Properties extends (0, $9626bc9256ce31f7$export$2b65
|
|
|
1556
1978
|
}
|
|
1557
1979
|
|
|
1558
1980
|
|
|
1981
|
+
|
|
1982
|
+
|
|
1559
1983
|
class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1560
1984
|
constructor(page){
|
|
1561
1985
|
super(page);
|
|
1562
|
-
this.
|
|
1563
|
-
this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
|
|
1986
|
+
this.deliveryPage = new (0, $4cdce1306be47ecd$export$eace2be4de1d3377)(page);
|
|
1564
1987
|
this.expandButton = this.page.getByRole("button", {
|
|
1565
1988
|
name: " Expand"
|
|
1566
1989
|
});
|
|
1990
|
+
this.folderGroupsPage = new (0, $27cd192f30944b0c$export$572f40d328c1d028)(page);
|
|
1991
|
+
this.patternPage = new (0, $d13e78163af94d50$export$9b9454a7f137e99b)(page);
|
|
1992
|
+
this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
|
|
1567
1993
|
}
|
|
1568
1994
|
async openFoldersPage() {
|
|
1569
1995
|
await this.page.goto("./#/folders");
|
|
@@ -1577,20 +2003,33 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
|
|
|
1577
2003
|
return this;
|
|
1578
2004
|
}
|
|
1579
2005
|
async createFolder(folderName) {
|
|
1580
|
-
await this.page.
|
|
1581
|
-
|
|
1582
|
-
|
|
1583
|
-
await this.page.
|
|
2006
|
+
await this.page.getByRole("button", {
|
|
2007
|
+
name: " Add folder"
|
|
2008
|
+
}).click();
|
|
2009
|
+
await (0, $hOLA6$expect)(this.page.getByText("Create a new folder in root")).toBeVisible();
|
|
2010
|
+
await this.page.getByRole("textbox").fill(folderName);
|
|
2011
|
+
await this.page.getByRole("button", {
|
|
2012
|
+
name: "Create"
|
|
2013
|
+
}).click();
|
|
2014
|
+
await (0, $hOLA6$expect)(this.page.getByRole("link", {
|
|
2015
|
+
name: folderName
|
|
2016
|
+
})).toBeVisible();
|
|
1584
2017
|
return this;
|
|
1585
2018
|
}
|
|
1586
2019
|
async openFolder(folderName) {
|
|
1587
|
-
await this.page.
|
|
2020
|
+
await this.page.getByTitle(folderName).waitFor({
|
|
2021
|
+
timeout: 500
|
|
2022
|
+
});
|
|
2023
|
+
await this.page.getByTitle(folderName).click();
|
|
2024
|
+
await (0, $hOLA6$expect)(this.page.locator(".MuiBreadcrumbs-li").getByRole("link", {
|
|
2025
|
+
name: `${folderName}`
|
|
2026
|
+
})).toBeVisible();
|
|
1588
2027
|
return this;
|
|
1589
2028
|
}
|
|
1590
2029
|
async openGroups() {
|
|
1591
2030
|
await this.util.openSideNavMenu("Groups");
|
|
1592
2031
|
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Groups")).toBeVisible();
|
|
1593
|
-
return this;
|
|
2032
|
+
return this.folderGroupsPage;
|
|
1594
2033
|
}
|
|
1595
2034
|
async createGroup(groupName) {
|
|
1596
2035
|
await this.page.locator("//button[normalize-space()='New release group']").click();
|
|
@@ -1612,7 +2051,7 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
|
|
|
1612
2051
|
return this;
|
|
1613
2052
|
}
|
|
1614
2053
|
async createSubFolder(parentFolder, subFolderName) {
|
|
1615
|
-
await this.
|
|
2054
|
+
await this.clickExpandButton();
|
|
1616
2055
|
await this.page.getByRole("link", {
|
|
1617
2056
|
name: parentFolder
|
|
1618
2057
|
}).hover();
|
|
@@ -1626,7 +2065,7 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
|
|
|
1626
2065
|
})).toBeVisible();
|
|
1627
2066
|
}
|
|
1628
2067
|
async renameFolder(existingFolderName, newFolderName) {
|
|
1629
|
-
await this.
|
|
2068
|
+
await this.clickExpandButton();
|
|
1630
2069
|
await this.page.getByRole("link", {
|
|
1631
2070
|
name: existingFolderName
|
|
1632
2071
|
}).hover();
|
|
@@ -1639,7 +2078,7 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
|
|
|
1639
2078
|
})).toBeVisible();
|
|
1640
2079
|
}
|
|
1641
2080
|
async deleteFolder(folderName) {
|
|
1642
|
-
await this.
|
|
2081
|
+
await this.clickExpandButton();
|
|
1643
2082
|
await this.page.getByRole("link", {
|
|
1644
2083
|
name: folderName
|
|
1645
2084
|
}).hover();
|
|
@@ -1665,7 +2104,8 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
|
|
|
1665
2104
|
})).toBeVisible();
|
|
1666
2105
|
}
|
|
1667
2106
|
async openPatterns() {
|
|
1668
|
-
await this.util.openSideNavMenu("
|
|
2107
|
+
await this.util.openSideNavMenu("Deliveries");
|
|
2108
|
+
await this.util.openNestedMenuItem("Patterns");
|
|
1669
2109
|
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Patterns")).toBeVisible();
|
|
1670
2110
|
return this.patternPage;
|
|
1671
2111
|
}
|
|
@@ -1674,6 +2114,15 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
|
|
|
1674
2114
|
hasText: folderName
|
|
1675
2115
|
}).locator(`.xl-icon.${option}-icon`).click();
|
|
1676
2116
|
}
|
|
2117
|
+
async clickExpandButton() {
|
|
2118
|
+
if (await this.expandButton.isEnabled()) await this.expandButton.click();
|
|
2119
|
+
}
|
|
2120
|
+
async openDeliveriesOverview() {
|
|
2121
|
+
await this.util.openSideNavMenu("Deliveries");
|
|
2122
|
+
await this.util.openNestedMenuItem("Deliveries overview");
|
|
2123
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Deliveries")).toBeVisible();
|
|
2124
|
+
return this.deliveryPage;
|
|
2125
|
+
}
|
|
1677
2126
|
}
|
|
1678
2127
|
|
|
1679
2128
|
|
|
@@ -1823,6 +2272,143 @@ class $2174535b78371022$export$36d69433c4f81145 extends (0, $9626bc9256ce31f7$ex
|
|
|
1823
2272
|
|
|
1824
2273
|
|
|
1825
2274
|
|
|
2275
|
+
|
|
2276
|
+
class $aa1ba8c8de3c0679$export$2fb4351c41ce6e7a extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
2277
|
+
constructor(page){
|
|
2278
|
+
super(page);
|
|
2279
|
+
this.announcementIcon = this.page.getByLabel("Open Resource Center");
|
|
2280
|
+
this.settingsIcon = this.page.locator('i[aria-label="settings-admin-opaque icon"]');
|
|
2281
|
+
this.aboutMenu = this.page.getByText("About Digital.ai Release");
|
|
2282
|
+
this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
|
|
2283
|
+
}
|
|
2284
|
+
async verifyVersionNumber(versionNumber) {
|
|
2285
|
+
const year = new Date().getFullYear();
|
|
2286
|
+
await this.settingsIcon.click();
|
|
2287
|
+
await this.aboutMenu.click();
|
|
2288
|
+
await (0, $hOLA6$expect)(this.page.getByText("Version " + versionNumber)).toBeVisible();
|
|
2289
|
+
await (0, $hOLA6$expect)(this.page.getByRole("img", {
|
|
2290
|
+
name: "Release"
|
|
2291
|
+
})).toBeVisible();
|
|
2292
|
+
await (0, $hOLA6$expect)(this.page.getByText(`ⓒ ${year} Digital.ai Software,`)).toBeVisible();
|
|
2293
|
+
await this.util.clickCloseIcon();
|
|
2294
|
+
}
|
|
2295
|
+
async verifyProductAnnouncements() {
|
|
2296
|
+
await (0, $hOLA6$expect)(this.announcementIcon).toBeVisible();
|
|
2297
|
+
await this.announcementIcon.click();
|
|
2298
|
+
(0, $hOLA6$expect)(await this.page.locator("#pendo-guide-container").innerText()).toContain("Product updates");
|
|
2299
|
+
}
|
|
2300
|
+
async clickHelpIcon() {
|
|
2301
|
+
await this.page.getByTestId("right-side-nav").getByRole("button", {
|
|
2302
|
+
name: "Help"
|
|
2303
|
+
}).click();
|
|
2304
|
+
}
|
|
2305
|
+
async verifyOnlineDocumentation() {
|
|
2306
|
+
const versionNumber = await this.getVersionNumber();
|
|
2307
|
+
await this.clickHelpIcon();
|
|
2308
|
+
const page2Promise = this.page.waitForEvent("popup");
|
|
2309
|
+
await (0, $hOLA6$expect)(this.page.getByText("Online documentation")).toBeVisible();
|
|
2310
|
+
await this.page.getByText("Online documentation").click();
|
|
2311
|
+
const page2 = await page2Promise;
|
|
2312
|
+
(0, $hOLA6$expect)(page2.url()).toContain("https://docs.digital.ai/bundle/devops-release-version-v." + versionNumber.substring(8, 12) + "/page/release/how-to/get-started-with-xl-release.html");
|
|
2313
|
+
await this.page.bringToFront();
|
|
2314
|
+
}
|
|
2315
|
+
async verifySupportRequest() {
|
|
2316
|
+
await (0, $hOLA6$expect)(this.page.getByRole("menuitem", {
|
|
2317
|
+
name: "Submit a support request"
|
|
2318
|
+
})).toBeVisible();
|
|
2319
|
+
const page2Promise = this.page.waitForEvent("popup");
|
|
2320
|
+
await this.page.getByRole("menuitem", {
|
|
2321
|
+
name: "Submit a support request"
|
|
2322
|
+
}).click();
|
|
2323
|
+
const page2 = await page2Promise;
|
|
2324
|
+
(0, $hOLA6$expect)(page2.url()).toContain("https://support.digital.ai/hc/en-us/");
|
|
2325
|
+
await this.page.bringToFront();
|
|
2326
|
+
}
|
|
2327
|
+
async verifySuggestAFeature() {
|
|
2328
|
+
await (0, $hOLA6$expect)(this.page.getByText("Suggest a feature")).toBeVisible();
|
|
2329
|
+
const page2Promise = this.page.waitForEvent("popup");
|
|
2330
|
+
await this.page.getByText("Suggest a feature").click();
|
|
2331
|
+
const page2 = await page2Promise;
|
|
2332
|
+
(0, $hOLA6$expect)(page2.url()).toContain("https://ideas.digital.ai/devops");
|
|
2333
|
+
await this.page.bringToFront();
|
|
2334
|
+
}
|
|
2335
|
+
async verifyDigitalAiWebsite() {
|
|
2336
|
+
await (0, $hOLA6$expect)(this.page.getByText("Digital.ai website")).toBeVisible();
|
|
2337
|
+
const page2Promise = this.page.waitForEvent("popup");
|
|
2338
|
+
await this.page.getByText("Digital.ai website").click();
|
|
2339
|
+
const page2 = await page2Promise;
|
|
2340
|
+
(0, $hOLA6$expect)(page2.url()).toContain("https://digital.ai/");
|
|
2341
|
+
await this.page.bringToFront();
|
|
2342
|
+
}
|
|
2343
|
+
async clickAvatarIcon(username) {
|
|
2344
|
+
await this.page.getByLabel(username, {
|
|
2345
|
+
exact: true
|
|
2346
|
+
}).click();
|
|
2347
|
+
}
|
|
2348
|
+
async verifyUser(userFullName) {
|
|
2349
|
+
await this.page.getByText(userFullName).click();
|
|
2350
|
+
await (0, $hOLA6$expect)(this.page.getByRole("heading", {
|
|
2351
|
+
name: "Personal settings for admin"
|
|
2352
|
+
})).toBeVisible();
|
|
2353
|
+
}
|
|
2354
|
+
async clickAccessTokens() {
|
|
2355
|
+
await this.page.getByText("Access tokens").click();
|
|
2356
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Access tokens")).toBeVisible();
|
|
2357
|
+
}
|
|
2358
|
+
async getVersionNumber() {
|
|
2359
|
+
await this.settingsIcon.click();
|
|
2360
|
+
await this.aboutMenu.click();
|
|
2361
|
+
const versionNumber = await this.page.locator(".version-text").innerText();
|
|
2362
|
+
await this.util.clickCloseIcon();
|
|
2363
|
+
return versionNumber;
|
|
2364
|
+
}
|
|
2365
|
+
}
|
|
2366
|
+
|
|
2367
|
+
|
|
2368
|
+
|
|
2369
|
+
|
|
2370
|
+
|
|
2371
|
+
class $ecd0868a4240184d$export$7b434e00c788d0bf extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
2372
|
+
constructor(page){
|
|
2373
|
+
super(page);
|
|
2374
|
+
this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
|
|
2375
|
+
}
|
|
2376
|
+
async openPluginGallery() {
|
|
2377
|
+
await this.util.openSideNavMenu("Plugin gallery");
|
|
2378
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Plugin gallery")).toBeVisible();
|
|
2379
|
+
}
|
|
2380
|
+
async openInstalledPlugins() {
|
|
2381
|
+
await this.util.openSideNavMenu("Installed plugins");
|
|
2382
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Installed plugins")).toBeVisible();
|
|
2383
|
+
}
|
|
2384
|
+
async searchForPlugins(searchText) {
|
|
2385
|
+
await this.page.getByPlaceholder("Search for plugin").fill(searchText);
|
|
2386
|
+
(0, $hOLA6$expect)(await this.page.locator(".PluginTile__title-and-version___1HsNr span").count()).toBeGreaterThan(0);
|
|
2387
|
+
}
|
|
2388
|
+
async refreshPluginList() {
|
|
2389
|
+
await (0, $hOLA6$expect)(this.page.getByTestId("plugin-refresh-btn")).toBeVisible();
|
|
2390
|
+
await this.page.getByTestId("plugin-refresh-btn").click();
|
|
2391
|
+
}
|
|
2392
|
+
async clickInstallNow(pluginName) {
|
|
2393
|
+
await this.page.locator("div").filter({
|
|
2394
|
+
hasText: "Install now" + pluginName
|
|
2395
|
+
}).getByRole("button").click();
|
|
2396
|
+
}
|
|
2397
|
+
async expectRestartInfo() {
|
|
2398
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("info")).toContainText("Restart Digital.ai Release to finish installing the plugin.");
|
|
2399
|
+
}
|
|
2400
|
+
async expectNewPluginInstallationInfo(pluginName) {
|
|
2401
|
+
await (0, $hOLA6$expect)(this.page.getByText("New plugin installedPlugin")).toBeVisible();
|
|
2402
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("info").locator("div")).toContainText("New plugin installedPlugin release-" + pluginName.toLowerCase() + "-integration has been installed, click here to reload the changes or refresh your browser");
|
|
2403
|
+
}
|
|
2404
|
+
async clickUpload() {
|
|
2405
|
+
await this.page.getByTestId("dot-button").click();
|
|
2406
|
+
}
|
|
2407
|
+
}
|
|
2408
|
+
|
|
2409
|
+
|
|
2410
|
+
|
|
2411
|
+
|
|
1826
2412
|
class $6720a523bcb1cce0$export$3cac5fd37ae64b91 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1827
2413
|
async openPersonalAccessTokenPage() {
|
|
1828
2414
|
// await this.page.locator("button.dot-avatar").click()
|
|
@@ -1843,6 +2429,61 @@ class $6720a523bcb1cce0$export$3cac5fd37ae64b91 extends (0, $9626bc9256ce31f7$ex
|
|
|
1843
2429
|
|
|
1844
2430
|
|
|
1845
2431
|
|
|
2432
|
+
class $a5932af323ac015a$export$3cf9c90f870f31bd extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
2433
|
+
constructor(page){
|
|
2434
|
+
super(page);
|
|
2435
|
+
this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
|
|
2436
|
+
}
|
|
2437
|
+
async openProfile() {
|
|
2438
|
+
await this.util.openSideNavMenu("Profile");
|
|
2439
|
+
}
|
|
2440
|
+
async openAccessToken() {
|
|
2441
|
+
await this.util.openSideNavMenu("Access tokens");
|
|
2442
|
+
}
|
|
2443
|
+
async editUserProfile(email) {
|
|
2444
|
+
await this.page.getByLabel("Email address").click();
|
|
2445
|
+
await this.page.getByLabel("Email address").fill(email);
|
|
2446
|
+
await this.page.getByTestId("dot-button").click();
|
|
2447
|
+
(0, $hOLA6$expect)(await this.page.locator(".saved-text").textContent()).toContain("Last saved on ");
|
|
2448
|
+
}
|
|
2449
|
+
async generateNewAccessToken(tokenName, expiryOptions) {
|
|
2450
|
+
await this.page.getByRole("button", {
|
|
2451
|
+
name: "Generate token"
|
|
2452
|
+
}).click();
|
|
2453
|
+
await this.page.getByLabel("Token name").click();
|
|
2454
|
+
await this.page.getByLabel("Token name").fill(tokenName);
|
|
2455
|
+
await this.page.getByRole("textbox", {
|
|
2456
|
+
name: "Token expiration"
|
|
2457
|
+
}).getByLabel("Token expiration").selectOption(expiryOptions);
|
|
2458
|
+
await this.page.locator("label").filter({
|
|
2459
|
+
hasText: "Use all permissions"
|
|
2460
|
+
}).getByTestId("RadioButtonCheckedIcon").click();
|
|
2461
|
+
await this.page.getByRole("button", {
|
|
2462
|
+
name: "Generate",
|
|
2463
|
+
exact: true
|
|
2464
|
+
}).click();
|
|
2465
|
+
await (0, $hOLA6$expect)(this.page.getByTestId("alert-button-tooltip").getByTestId("dot-button")).toBeVisible();
|
|
2466
|
+
await (0, $hOLA6$expect)(this.page.getByText(tokenName)).toBeVisible();
|
|
2467
|
+
}
|
|
2468
|
+
async deleteAccessToken(tokenName) {
|
|
2469
|
+
await this.page.locator(".MuiTableRow-root").filter({
|
|
2470
|
+
hasText: tokenName
|
|
2471
|
+
}).getByTestId("button-icon-i").click();
|
|
2472
|
+
await (0, $hOLA6$expect)(this.page.getByRole("heading", {
|
|
2473
|
+
name: "Delete token"
|
|
2474
|
+
})).toBeVisible();
|
|
2475
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("Delete token")).toContainText("Delete token");
|
|
2476
|
+
await this.page.getByRole("button", {
|
|
2477
|
+
name: "delete icon Delete token"
|
|
2478
|
+
}).click();
|
|
2479
|
+
await (0, $hOLA6$expect)(this.page.getByText(tokenName)).not.toBeVisible();
|
|
2480
|
+
}
|
|
2481
|
+
}
|
|
2482
|
+
|
|
2483
|
+
|
|
2484
|
+
|
|
2485
|
+
|
|
2486
|
+
|
|
1846
2487
|
|
|
1847
2488
|
class $21185a378c23589e$export$e2e2e1ffdce20c30 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1848
2489
|
constructor(page){
|
|
@@ -1949,6 +2590,7 @@ class $2cb6a6ac6b17e85f$export$107317390f5aa598 extends (0, $9626bc9256ce31f7$ex
|
|
|
1949
2590
|
|
|
1950
2591
|
|
|
1951
2592
|
|
|
2593
|
+
|
|
1952
2594
|
class $f1bf370bb7f683ca$export$1d7840d5cdc861d5 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1953
2595
|
constructor(page){
|
|
1954
2596
|
super(page);
|
|
@@ -1969,6 +2611,7 @@ class $f1bf370bb7f683ca$export$1d7840d5cdc861d5 extends (0, $9626bc9256ce31f7$ex
|
|
|
1969
2611
|
async openManagePlugin() {
|
|
1970
2612
|
await this.settingsIcon.click();
|
|
1971
2613
|
await this.managePluginMenu.click();
|
|
2614
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Plugin gallery")).toBeVisible();
|
|
1972
2615
|
}
|
|
1973
2616
|
}
|
|
1974
2617
|
|
|
@@ -1985,7 +2628,7 @@ class $9ca6e63d357957dd$export$922081b54f2ab994 extends (0, $9626bc9256ce31f7$ex
|
|
|
1985
2628
|
|
|
1986
2629
|
class $3a340a3f4fd8f04d$export$43682cddead1dd78 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1987
2630
|
async openReleaseCalendarPage() {
|
|
1988
|
-
await this.page.goto("./#/calendar");
|
|
2631
|
+
await this.page.goto("./#/releases/calendar");
|
|
1989
2632
|
//Define date format to verify different calendar views
|
|
1990
2633
|
const today = new Date();
|
|
1991
2634
|
let options = {
|
|
@@ -2003,7 +2646,7 @@ class $3a340a3f4fd8f04d$export$43682cddead1dd78 extends (0, $9626bc9256ce31f7$ex
|
|
|
2003
2646
|
};
|
|
2004
2647
|
this.monthFormat = today.toLocaleDateString("en-US", options);
|
|
2005
2648
|
this.monthFormat = this.monthFormat.replace(/(\w+) (\d+)/, "$1, $2");
|
|
2006
|
-
await (0, $hOLA6$expect)(this.page
|
|
2649
|
+
await (0, $hOLA6$expect)(this.page.locator(".tl-viewport")).toBeVisible();
|
|
2007
2650
|
return this;
|
|
2008
2651
|
}
|
|
2009
2652
|
async exportCalendar() {
|
|
@@ -2437,11 +3080,52 @@ class $c37c93912f458e81$export$60c3bfa6385e2a10 extends (0, $9626bc9256ce31f7$ex
|
|
|
2437
3080
|
async clickOnAssigneeButton(title) {
|
|
2438
3081
|
await this.page.locator(`.btn-group-filter.btn-group button.btn.btn-flat[title="${title}"]`).click();
|
|
2439
3082
|
}
|
|
2440
|
-
async
|
|
3083
|
+
async clickOnAssignedToMe() {
|
|
3084
|
+
await this.page.locator(`button[title="Assigned to me"]`).click();
|
|
3085
|
+
}
|
|
3086
|
+
async clickOnAssignedToMyTeams() {
|
|
3087
|
+
await this.page.locator(`button[title="Assigned to my teams"]`).click();
|
|
3088
|
+
}
|
|
3089
|
+
async clickOnAssignedToAllAvailable() {
|
|
3090
|
+
await this.page.locator(`button[title="All available"]`).click();
|
|
3091
|
+
}
|
|
3092
|
+
async expectTaskToNotBeDisplayed(taskTitle) {
|
|
2441
3093
|
await (0, $hOLA6$expect)(this.page.locator(`.row.task-inner`).filter({
|
|
2442
3094
|
hasText: taskTitle
|
|
2443
3095
|
}).getByText(taskTitle)).toHaveCount(0);
|
|
2444
3096
|
}
|
|
3097
|
+
async expectTaskToBeDisplayed(taskTitle) {
|
|
3098
|
+
await (0, $hOLA6$expect)(this.page.locator(`.row.task-inner`).filter({
|
|
3099
|
+
hasText: taskTitle
|
|
3100
|
+
}).getByText(taskTitle)).toHaveCount(1);
|
|
3101
|
+
}
|
|
3102
|
+
async expectTasksToBeDisplayed(tasks) {
|
|
3103
|
+
for (const [taskTitle, shouldBeDisplayed] of Object.entries(tasks))if (shouldBeDisplayed) await this.expectTaskToBeDisplayed(taskTitle);
|
|
3104
|
+
else await this.expectTaskToNotBeDisplayed(taskTitle);
|
|
3105
|
+
}
|
|
3106
|
+
async expectTasksDisplayedInOrder(expectedTasks) {
|
|
3107
|
+
for (const task of expectedTasks){
|
|
3108
|
+
const taskElement = await this.page.locator(`[data-release-title='${task.releaseTitle}'] .row .task`).nth(task.taskPosition);
|
|
3109
|
+
await (0, $hOLA6$expect)(taskElement).toHaveAttribute("data-task-title", task.taskTitle);
|
|
3110
|
+
}
|
|
3111
|
+
}
|
|
3112
|
+
async setOrderBy(orderBy) {
|
|
3113
|
+
await this.page.locator(".order-selector .btn:first-child").click();
|
|
3114
|
+
await this.page.locator(`.order-selector .bootstrap-link:has-text('${orderBy}')`).click();
|
|
3115
|
+
}
|
|
3116
|
+
async expectTaskCountForRelease(releaseTitle, expectedCount) {
|
|
3117
|
+
await (0, $hOLA6$expect)(this.page.locator(`#tasks-content #task-list-grouped-view div:has-text('${releaseTitle}') .task`)).toHaveCount(expectedCount);
|
|
3118
|
+
}
|
|
3119
|
+
async setSearchFilter(filterText) {
|
|
3120
|
+
await this.page.locator(".searchFilter").fill(filterText);
|
|
3121
|
+
}
|
|
3122
|
+
async clearSearchFilter() {
|
|
3123
|
+
await this.page.locator(".searchFilter").clear();
|
|
3124
|
+
}
|
|
3125
|
+
async setTagsFilter(filterText) {
|
|
3126
|
+
await this.page.locator(".tag-input").fill(filterText);
|
|
3127
|
+
await this.page.locator(".tag-input").press("Enter");
|
|
3128
|
+
}
|
|
2445
3129
|
async clickOnStatusField() {
|
|
2446
3130
|
await this.page.locator(".ci-filter-status.ng-isolate-scope").click();
|
|
2447
3131
|
}
|
|
@@ -2831,13 +3515,13 @@ class $0c4084f199d70d72$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97
|
|
|
2831
3515
|
* @param taskTypeSelector : Selector of the task
|
|
2832
3516
|
*/ async addTaskInPhase(taskTitle, taskGroup, taskType) {
|
|
2833
3517
|
await this.phaseLocator.getByText("Add task").click();
|
|
2834
|
-
await this.
|
|
2835
|
-
|
|
2836
|
-
|
|
2837
|
-
await this.phaseLocator.getByPlaceholder("Start typing to filter task").fill(taskGroup);
|
|
3518
|
+
await this.page.locator("#task-selector").hover();
|
|
3519
|
+
await this.page.locator('button[aria-label="Clear"]').click();
|
|
3520
|
+
await this.page.locator("#task-selector").fill(taskGroup);
|
|
2838
3521
|
await this.page.getByTestId(taskType).click();
|
|
2839
|
-
await this.
|
|
2840
|
-
await this.
|
|
3522
|
+
await this.page.locator(".icon-close").click();
|
|
3523
|
+
await this.page.locator("#task-title").fill(taskTitle);
|
|
3524
|
+
await this.page.getByTestId("save-select-task-btn").click();
|
|
2841
3525
|
await (0, $hOLA6$expect)(this.phaseLocator.getByText(taskTitle)).toBeVisible();
|
|
2842
3526
|
}
|
|
2843
3527
|
async getNumberOfTasks() {
|
|
@@ -2910,16 +3594,16 @@ class $171d52b372748c0b$export$7e1d435fa474ee21 extends (0, $9626bc9256ce31f7$ex
|
|
|
2910
3594
|
await this.page.getByRole("button", {
|
|
2911
3595
|
name: "Continue"
|
|
2912
3596
|
}).click();
|
|
2913
|
-
await (0, $hOLA6$expect)(this.page.
|
|
2914
|
-
hasText: "TEMPLATE"
|
|
2915
|
-
})).toBeVisible();
|
|
3597
|
+
await (0, $hOLA6$expect)(this.page.getByTestId("template-workflow-pill").getByText("Template")).toBeVisible();
|
|
2916
3598
|
}
|
|
2917
3599
|
async move(templateName, targetFolder) {
|
|
2918
|
-
await this.page.locator(".
|
|
3600
|
+
await this.page.locator(".template").filter({
|
|
2919
3601
|
hasText: templateName
|
|
2920
|
-
}).locator(".move").click();
|
|
3602
|
+
}).locator(".template-actions .move").click();
|
|
2921
3603
|
await (0, $hOLA6$expect)(this.page.getByText("Move template to")).toBeVisible();
|
|
2922
|
-
await this.page.getByRole("button", {
|
|
3604
|
+
if (await this.page.getByRole("button", {
|
|
3605
|
+
name: "Expand"
|
|
3606
|
+
}).isEnabled()) await this.page.getByRole("button", {
|
|
2923
3607
|
name: "Expand"
|
|
2924
3608
|
}).click();
|
|
2925
3609
|
await this.page.getByPlaceholder("Search folder...").click();
|
|
@@ -3026,9 +3710,13 @@ class $171d52b372748c0b$export$7e1d435fa474ee21 extends (0, $9626bc9256ce31f7$ex
|
|
|
3026
3710
|
class $e72552cbf941ecfa$export$b8a61e5c71402559 {
|
|
3027
3711
|
constructor(page){
|
|
3028
3712
|
this.page = page;
|
|
3713
|
+
this.dataRandomGenerator = new (0, $b14c3492cf934ea2$export$e40b5d3c74b04c89)();
|
|
3714
|
+
this.dateUtil = new (0, $71075ce65fcede1d$export$9b575f14aa5e09a1)(page);
|
|
3029
3715
|
this.folderPage = new (0, $50c91328c9110668$export$b453f08936c58edb)(page);
|
|
3030
3716
|
this.globalvariable = new (0, $3df1257265fba073$export$74ca1eaaa9a0054)(page);
|
|
3031
3717
|
this.homePage = new (0, $2174535b78371022$export$36d69433c4f81145)(page);
|
|
3718
|
+
this.header = new (0, $aa1ba8c8de3c0679$export$2fb4351c41ce6e7a)(page);
|
|
3719
|
+
this.managePluginsPage = new (0, $ecd0868a4240184d$export$7b434e00c788d0bf)(page);
|
|
3032
3720
|
this.releasePage = new (0, $43cbcdfccb6c2a76$export$f43492e8ac3c566)(page);
|
|
3033
3721
|
this.settingsMenu = new (0, $f1bf370bb7f683ca$export$1d7840d5cdc861d5)(page);
|
|
3034
3722
|
this.usersPage = new (0, $2cb6a6ac6b17e85f$export$107317390f5aa598)(page);
|
|
@@ -3037,7 +3725,7 @@ class $e72552cbf941ecfa$export$b8a61e5c71402559 {
|
|
|
3037
3725
|
this.taskListPage = new (0, $c37c93912f458e81$export$60c3bfa6385e2a10)(page);
|
|
3038
3726
|
this.templatePage = new (0, $0c4084f199d70d72$export$8c8e7207254accc2)(page);
|
|
3039
3727
|
this.templateListPage = new (0, $171d52b372748c0b$export$7e1d435fa474ee21)(page);
|
|
3040
|
-
this.
|
|
3728
|
+
this.personalSettingsPage = new (0, $a5932af323ac015a$export$3cf9c90f870f31bd)(page);
|
|
3041
3729
|
this.releaseCalendarPage = new (0, $3a340a3f4fd8f04d$export$43682cddead1dd78)(page);
|
|
3042
3730
|
this.releaseGroupPage = new (0, $cc2d15e53de5cef7$export$b6fbc3e67030138f)(page);
|
|
3043
3731
|
this.releaseGroupTimelinePage = new (0, $cc231ea61b77c7a2$export$1a0994e9c202d529)(page);
|
|
@@ -3143,12 +3831,12 @@ class $e72552cbf941ecfa$export$b8a61e5c71402559 {
|
|
|
3143
3831
|
return new (0, $43cbcdfccb6c2a76$export$f43492e8ac3c566)(this.page);
|
|
3144
3832
|
}
|
|
3145
3833
|
async collapseSideView() {
|
|
3146
|
-
await this.page.
|
|
3147
|
-
await (0, $hOLA6$expect)(this.page.
|
|
3834
|
+
await this.page.getByLabel("Collapse Q").click();
|
|
3835
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("Collapse Q")).not.toBeVisible();
|
|
3148
3836
|
}
|
|
3149
3837
|
async expandSideView() {
|
|
3150
|
-
await this.page.
|
|
3151
|
-
await (0, $hOLA6$expect)(this.page.
|
|
3838
|
+
await this.page.getByLabel("Expand Q").click();
|
|
3839
|
+
await (0, $hOLA6$expect)(this.page.getByLabel("Expand Q")).not.toBeVisible();
|
|
3152
3840
|
}
|
|
3153
3841
|
}
|
|
3154
3842
|
|
|
@@ -3427,6 +4115,13 @@ class $80c3ae34677b4324$var$Fixtures {
|
|
|
3427
4115
|
permissions(rolePermissions) {
|
|
3428
4116
|
return this.doPost("fixtures/roles/permissions/global", rolePermissions);
|
|
3429
4117
|
}
|
|
4118
|
+
updateUserProfile(username, profile) {
|
|
4119
|
+
profile.id = username;
|
|
4120
|
+
profile.type = "xlrelease.UserProfile";
|
|
4121
|
+
profile.canonicalId = username.toLowerCase();
|
|
4122
|
+
if (this.userProfiles.indexOf(profile.canonicalId) === -1) this.userProfiles.push(profile.canonicalId);
|
|
4123
|
+
return this.doPut("fixtures/userProfile", profile);
|
|
4124
|
+
}
|
|
3430
4125
|
deleteRole(roleName) {
|
|
3431
4126
|
return this.doDelete(`fixtures/role/${roleName}`);
|
|
3432
4127
|
}
|