@digital-ai/devops-page-object-release 0.0.0-snapshot-20251029210730 → 0.0.0-snapshot-20251030051145
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 -2
- package/dist/main.js +94 -74
- package/dist/main.js.map +1 -1
- package/dist/module.js +94 -74
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +21 -16
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# @digital-ai/devops-page-object-release
|
|
2
2
|
|
|
3
|
-
## 0.0.0-snapshot-
|
|
3
|
+
## 0.0.0-snapshot-20251030051145
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
7
|
-
-
|
|
7
|
+
- ee02c83: S-125960: Migrated Release summary scenario from cypress to playwright
|
|
8
8
|
|
|
9
9
|
## 0.0.88
|
|
10
10
|
|
package/dist/main.js
CHANGED
|
@@ -1058,52 +1058,18 @@ class $3d3f3946c54f5897$export$34addcca3f0ae43f extends (0, $f8721861c660dd88$ex
|
|
|
1058
1058
|
|
|
1059
1059
|
|
|
1060
1060
|
|
|
1061
|
-
|
|
1062
|
-
class $96d547f0e8ead553$export$48c33d2414f51608 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1061
|
+
class $e403098cd4f59faa$export$7034f81075184002 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1063
1062
|
constructor(page){
|
|
1064
1063
|
super(page);
|
|
1065
1064
|
}
|
|
1066
1065
|
getHeaderSelector() {
|
|
1067
|
-
return ".
|
|
1066
|
+
return ".release-list-header";
|
|
1068
1067
|
}
|
|
1069
1068
|
getBaseDrawerSelector() {
|
|
1070
|
-
return
|
|
1071
|
-
}
|
|
1072
|
-
getTitleInputSelector() {
|
|
1073
|
-
return `${this.getHeaderSelector()} input#title-filter`;
|
|
1069
|
+
return `${this.getHeaderSelector()} .filter-drawer`;
|
|
1074
1070
|
}
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
hasText: "Filters"
|
|
1078
|
-
}).click();
|
|
1079
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(this.getBaseDrawerSelector())).toBeVisible();
|
|
1080
|
-
return this;
|
|
1081
|
-
}
|
|
1082
|
-
async closeFilterDrawer() {
|
|
1083
|
-
await this.page.locator(`${this.getBaseDrawerSelector()} .dot-icon-btn[data-testid="close-btn"]`).click();
|
|
1084
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(this.getBaseDrawerSelector())).not.toBeVisible();
|
|
1085
|
-
return this;
|
|
1086
|
-
}
|
|
1087
|
-
async clearTitleFilter() {
|
|
1088
|
-
await this.page.locator(this.getTitleInputSelector()).fill("");
|
|
1089
|
-
return this;
|
|
1090
|
-
}
|
|
1091
|
-
async clearAllFilters() {
|
|
1092
|
-
await this.page.locator(`${this.getHeaderSelector()} .filter-row button[data-testid="clear-all-btn"]`).click();
|
|
1093
|
-
return this;
|
|
1094
|
-
}
|
|
1095
|
-
async filterByTitle(releaseTitle) {
|
|
1096
|
-
await this.page.locator(this.getTitleInputSelector()).fill(releaseTitle);
|
|
1097
|
-
}
|
|
1098
|
-
async clearFilterTitle() {
|
|
1099
|
-
await this.page.locator(this.getTitleInputSelector()).clear();
|
|
1100
|
-
}
|
|
1101
|
-
}
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
class $e403098cd4f59faa$export$7034f81075184002 extends (0, $96d547f0e8ead553$export$48c33d2414f51608) {
|
|
1105
|
-
constructor(page){
|
|
1106
|
-
super(page);
|
|
1071
|
+
getFilterDrawerSelector() {
|
|
1072
|
+
return `${this.getBaseDrawerSelector()} div[role="dialog"]`;
|
|
1107
1073
|
}
|
|
1108
1074
|
getStatusInputSelector() {
|
|
1109
1075
|
return `${this.getBaseDrawerSelector()} input#release-status-filter-autocomplete`;
|
|
@@ -1114,6 +1080,9 @@ class $e403098cd4f59faa$export$7034f81075184002 extends (0, $96d547f0e8ead553$ex
|
|
|
1114
1080
|
getSelectAllStatusesButtonSelector() {
|
|
1115
1081
|
return `${this.getBasePopperSelector()} button[data-testid="dot-action-item-btn"]`;
|
|
1116
1082
|
}
|
|
1083
|
+
getTitleInputSelector() {
|
|
1084
|
+
return `${this.getHeaderSelector()} input#title-filter`;
|
|
1085
|
+
}
|
|
1117
1086
|
getRiskLevelInputSelector() {
|
|
1118
1087
|
return `${this.getBaseDrawerSelector()} input#risk`;
|
|
1119
1088
|
}
|
|
@@ -1152,7 +1121,27 @@ class $e403098cd4f59faa$export$7034f81075184002 extends (0, $96d547f0e8ead553$ex
|
|
|
1152
1121
|
return this;
|
|
1153
1122
|
}
|
|
1154
1123
|
async filterReleaseByTitle(releaseTitle) {
|
|
1155
|
-
await this.
|
|
1124
|
+
await this.page.locator(this.getTitleInputSelector()).fill(releaseTitle);
|
|
1125
|
+
}
|
|
1126
|
+
async clearTitleFilter() {
|
|
1127
|
+
await this.page.locator(this.getTitleInputSelector()).fill("");
|
|
1128
|
+
return this;
|
|
1129
|
+
}
|
|
1130
|
+
async openFilterDrawer() {
|
|
1131
|
+
await this.page.locator(`${this.getHeaderSelector()} button`, {
|
|
1132
|
+
hasText: "Filters"
|
|
1133
|
+
}).click();
|
|
1134
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(this.getFilterDrawerSelector())).toBeVisible();
|
|
1135
|
+
return this;
|
|
1136
|
+
}
|
|
1137
|
+
async closeFilterDrawer() {
|
|
1138
|
+
await this.page.locator(`${this.getBaseDrawerSelector()} .dot-icon-btn[data-testid="close-btn"]`).click();
|
|
1139
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(this.getFilterDrawerSelector())).not.toBeVisible();
|
|
1140
|
+
return this;
|
|
1141
|
+
}
|
|
1142
|
+
async clearAllFilters() {
|
|
1143
|
+
await this.page.locator(`${this.getHeaderSelector()} .filter-row button[data-testid="clear-all-btn"]`).click();
|
|
1144
|
+
return this;
|
|
1156
1145
|
}
|
|
1157
1146
|
async clearAllStatusFilters() {
|
|
1158
1147
|
await this.page.locator(this.getStatusInputSelector()).click();
|
|
@@ -3145,7 +3134,7 @@ class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$ex
|
|
|
3145
3134
|
this.taskDrawerLocator = this.page.locator("task-drawer .dot-drawer");
|
|
3146
3135
|
}
|
|
3147
3136
|
async waitForTaskDrawer() {
|
|
3148
|
-
const handle = await this.page.locator("
|
|
3137
|
+
const handle = await this.page.locator(".dot-drawer-paper").elementHandle();
|
|
3149
3138
|
await handle?.waitForElementState("stable");
|
|
3150
3139
|
}
|
|
3151
3140
|
async openOverviewRail() {
|
|
@@ -4326,6 +4315,19 @@ class $2c89ba54932fbba8$export$f8f26dd395d7e1bd extends (0, $f8721861c660dd88$ex
|
|
|
4326
4315
|
}
|
|
4327
4316
|
|
|
4328
4317
|
|
|
4318
|
+
|
|
4319
|
+
|
|
4320
|
+
class $fd3e87c08fb5976e$export$46146ef3ab8c339b extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
4321
|
+
constructor(page){
|
|
4322
|
+
super(page);
|
|
4323
|
+
}
|
|
4324
|
+
// Validate that release status contains the given text
|
|
4325
|
+
async expectReleaseStatusToContain(status) {
|
|
4326
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release-status")).toContainText(status);
|
|
4327
|
+
}
|
|
4328
|
+
}
|
|
4329
|
+
|
|
4330
|
+
|
|
4329
4331
|
class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
4330
4332
|
defaultTimeout = 10000;
|
|
4331
4333
|
constructor(page){
|
|
@@ -4333,6 +4335,7 @@ class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$exp
|
|
|
4333
4335
|
this.addPhaseBtn = this.page.getByTestId("add-phase-btn");
|
|
4334
4336
|
this.createPage = new (0, $3d3f3946c54f5897$export$34addcca3f0ae43f)(page);
|
|
4335
4337
|
this.ganttPage = new (0, $e8395395d01b66bb$export$5a82be0a2a261cc6)(page);
|
|
4338
|
+
this.summaryPage = new (0, $fd3e87c08fb5976e$export$46146ef3ab8c339b)(page);
|
|
4336
4339
|
this.tableView = new (0, $c5c393ea4aecca6c$export$649fde34d823ece7)(page);
|
|
4337
4340
|
this.taskDrawer = new (0, $6a21661eb4695574$export$e946776eae644790)(page);
|
|
4338
4341
|
this.teamsPermissions = new (0, $d330a7d6f7926d53$export$3bc3e140e0dcb075)(page);
|
|
@@ -4345,6 +4348,10 @@ class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$exp
|
|
|
4345
4348
|
await this.openSubPage("Triggers");
|
|
4346
4349
|
return new (0, $133601cfe0486710$export$fb932093f944abe4)(this.page);
|
|
4347
4350
|
}
|
|
4351
|
+
async openSummary() {
|
|
4352
|
+
this.openSubPage("Dashboard");
|
|
4353
|
+
return new (0, $fd3e87c08fb5976e$export$46146ef3ab8c339b)(this.page);
|
|
4354
|
+
}
|
|
4348
4355
|
async abort(comment = "Abort for testing") {
|
|
4349
4356
|
await this.page.getByTestId("abort-btn").waitFor();
|
|
4350
4357
|
await this.page.getByTestId("abort-btn").click();
|
|
@@ -7764,23 +7771,13 @@ class $fd4eef3ad2b2e612$var$DeleteVariableModel extends (0, $f8721861c660dd88$ex
|
|
|
7764
7771
|
|
|
7765
7772
|
|
|
7766
7773
|
|
|
7767
|
-
|
|
7768
|
-
class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $96d547f0e8ead553$export$48c33d2414f51608) {
|
|
7774
|
+
class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
7769
7775
|
constructor(page){
|
|
7770
7776
|
super(page);
|
|
7771
7777
|
this.commentBox = this.page.locator(`.input-block-level`);
|
|
7772
7778
|
this.gridView = new $ed2d4739e27d43c1$var$GridView(page);
|
|
7773
7779
|
this.taskDrawer = new (0, $6a21661eb4695574$export$e946776eae644790)(page);
|
|
7774
7780
|
}
|
|
7775
|
-
getBasePopperSelector() {
|
|
7776
|
-
return '.dot-popper[role="presentation"]';
|
|
7777
|
-
}
|
|
7778
|
-
getSelectAllStatusesButtonSelector() {
|
|
7779
|
-
return `${this.getBasePopperSelector()} button[data-testid="dot-action-item-btn"]`;
|
|
7780
|
-
}
|
|
7781
|
-
getStatusInputSelector() {
|
|
7782
|
-
return `${this.getBaseDrawerSelector()} input#task-status-filter-autocomplete`;
|
|
7783
|
-
}
|
|
7784
7781
|
async openTask(taskName) {
|
|
7785
7782
|
await this.filterTaskByTitle(taskName);
|
|
7786
7783
|
await this.page.getByText(taskName).first().click();
|
|
@@ -7846,7 +7843,9 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $96d547f0e8ead553$ex
|
|
|
7846
7843
|
await this.taskDrawer.waitForTaskDrawer();
|
|
7847
7844
|
}
|
|
7848
7845
|
async filterTaskByTitle(taskname) {
|
|
7849
|
-
await this.
|
|
7846
|
+
await this.page.locator(".searchFilter").click();
|
|
7847
|
+
await this.page.locator(".searchFilter").fill(taskname);
|
|
7848
|
+
await this.page.locator(".searchFilter").press("Enter");
|
|
7850
7849
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("//div[@data-task-title]").filter({
|
|
7851
7850
|
hasText: taskname
|
|
7852
7851
|
}).first()).toBeVisible();
|
|
@@ -7891,13 +7890,13 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $96d547f0e8ead553$ex
|
|
|
7891
7890
|
await this.page.locator(`.btn-group-filter.btn-group button.btn.btn-flat[title="${title}"]`).click();
|
|
7892
7891
|
}
|
|
7893
7892
|
async clickOnAssignedToMe() {
|
|
7894
|
-
await this.page.locator(`
|
|
7893
|
+
await this.page.locator(`button[title="Assigned to me"]`).click();
|
|
7895
7894
|
}
|
|
7896
7895
|
async clickOnAssignedToMyTeams() {
|
|
7897
|
-
await this.page.locator(`
|
|
7896
|
+
await this.page.locator(`button[title="Assigned to my teams"]`).click();
|
|
7898
7897
|
}
|
|
7899
7898
|
async clickOnAssignedToAllAvailable() {
|
|
7900
|
-
await this.page.locator(`
|
|
7899
|
+
await this.page.locator(`button[title="All available"]`).click();
|
|
7901
7900
|
}
|
|
7902
7901
|
async expectTaskToNotBeDisplayed(taskTitle) {
|
|
7903
7902
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`.row.task-inner`).filter({
|
|
@@ -7927,30 +7926,38 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $96d547f0e8ead553$ex
|
|
|
7927
7926
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`#tasks-content #task-list-grouped-view div:has-text('${releaseTitle}') .task`)).toHaveCount(expectedCount);
|
|
7928
7927
|
}
|
|
7929
7928
|
async setSearchFilter(filterText) {
|
|
7930
|
-
await this.
|
|
7929
|
+
await this.page.locator(".searchFilter").fill(filterText);
|
|
7931
7930
|
}
|
|
7932
7931
|
async clearSearchFilter() {
|
|
7933
|
-
await this.
|
|
7932
|
+
await this.page.locator(".searchFilter").clear();
|
|
7934
7933
|
}
|
|
7935
7934
|
async setTagsFilter(filterText) {
|
|
7936
|
-
await this.page.locator("input
|
|
7937
|
-
await this.page.locator("input
|
|
7938
|
-
await this.page.locator("input#task-tags").press("Enter");
|
|
7935
|
+
await this.page.locator(".tag-input").fill(filterText);
|
|
7936
|
+
await this.page.locator(".tag-input").press("Enter");
|
|
7939
7937
|
}
|
|
7940
|
-
async
|
|
7941
|
-
await this.page.locator(
|
|
7942
|
-
await this.page.locator(`${this.getBaseDrawerSelector()} div.filter-task-status-autocomplete button[title="Clear"]`).click();
|
|
7943
|
-
return this;
|
|
7938
|
+
async clickOnStatusField() {
|
|
7939
|
+
await this.page.locator(".ci-filter-status.ng-isolate-scope").click();
|
|
7944
7940
|
}
|
|
7945
7941
|
async clickOnStatus(statusNames) {
|
|
7946
|
-
await this.
|
|
7947
|
-
|
|
7948
|
-
|
|
7942
|
+
await this.clickOnStatusClearAll();
|
|
7943
|
+
await this.clickOnStatusField();
|
|
7944
|
+
for(let i = 0; i < statusNames.length; i++)await this.page.locator(`i.xl-icon.icon-s.checkbox[data='${statusNames[i]}']`).click();
|
|
7945
|
+
// Clicking outside to close the grid dropdown
|
|
7946
|
+
await this.clickOnTasksLabel();
|
|
7947
|
+
}
|
|
7948
|
+
async clickOnStatusClearAll() {
|
|
7949
|
+
await this.clickOnStatusField();
|
|
7950
|
+
await this.page.locator("a.xl-react-link", {
|
|
7951
|
+
hasText: "Clear all"
|
|
7949
7952
|
}).click();
|
|
7953
|
+
await this.clickOnTasksLabel();
|
|
7950
7954
|
}
|
|
7951
7955
|
async clickOnStatusSelectAll() {
|
|
7952
|
-
await this.
|
|
7953
|
-
await this.page.locator(
|
|
7956
|
+
await this.clickOnStatusField();
|
|
7957
|
+
await this.page.locator("a.xl-react-link", {
|
|
7958
|
+
hasText: "Select all"
|
|
7959
|
+
}).click();
|
|
7960
|
+
await this.clickOnTasksLabel();
|
|
7954
7961
|
}
|
|
7955
7962
|
async assignTaskToMe(title) {
|
|
7956
7963
|
await this.page.locator(`.task-line`).filter({
|
|
@@ -7967,22 +7974,35 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $96d547f0e8ead553$ex
|
|
|
7967
7974
|
async expectTaskTitle(taskTitle) {
|
|
7968
7975
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#tasks0")).toContainText(taskTitle);
|
|
7969
7976
|
}
|
|
7977
|
+
async clickOnTasksLabel() {
|
|
7978
|
+
await this.page.getByLabel("breadcrumb").getByText("Tasks").click();
|
|
7979
|
+
}
|
|
7970
7980
|
async expectGroupView(expected = true) {
|
|
7971
7981
|
if (expected) {
|
|
7972
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(
|
|
7982
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#group-tasks-by-release")).toBeChecked();
|
|
7973
7983
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#task-list-grouped-view")).toBeVisible();
|
|
7974
7984
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#task-ungrouped-view")).not.toBeVisible();
|
|
7975
7985
|
} else {
|
|
7976
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(
|
|
7986
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#group-tasks-by-release")).not.toBeChecked();
|
|
7977
7987
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#task-list-grouped-view")).not.toBeVisible();
|
|
7978
7988
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#task-ungrouped-view")).toBeVisible();
|
|
7979
7989
|
}
|
|
7980
7990
|
}
|
|
7981
7991
|
async changeGroupView() {
|
|
7982
|
-
await this.page.locator(
|
|
7992
|
+
await this.page.locator("#group-tasks-by-release").click();
|
|
7993
|
+
}
|
|
7994
|
+
async enableGroupByReleaseView() {
|
|
7995
|
+
await this.page.getByRole("checkbox", {
|
|
7996
|
+
name: "Group by release"
|
|
7997
|
+
}).check();
|
|
7998
|
+
}
|
|
7999
|
+
async disableGroupByReleaseView() {
|
|
8000
|
+
await this.page.getByRole("checkbox", {
|
|
8001
|
+
name: "Group by release"
|
|
8002
|
+
}).uncheck();
|
|
7983
8003
|
}
|
|
7984
8004
|
async switchToGridView() {
|
|
7985
|
-
await this.page.locator(
|
|
8005
|
+
await this.page.locator(".xl-icon.grid-icon").click();
|
|
7986
8006
|
return this.gridView;
|
|
7987
8007
|
}
|
|
7988
8008
|
}
|