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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,10 +1,22 @@
1
1
  # @digital-ai/devops-page-object-release
2
2
 
3
- ## 0.0.0-pikachu-20250828144727
3
+ ## 0.0.0-snapshot-20250901143100
4
4
 
5
5
  ### Patch Changes
6
6
 
7
- - b7e9f9c: S-123064 `Releases filter` - adjust page objects to follow new filter components
7
+ - 1650c7f: S-124181: Update abort placeholder
8
+
9
+ ## 0.0.76
10
+
11
+ ### Patch Changes
12
+
13
+ - 7beabf0: S-124144 Fix `expectTaskFailureManualPermission` selector
14
+
15
+ ## 0.0.75
16
+
17
+ ### Patch Changes
18
+
19
+ - 4e5b25c: S-123725: Modified the method - addNewInstance in connectionsPage
8
20
 
9
21
  ## 0.0.74
10
22
 
package/dist/main.js CHANGED
@@ -954,7 +954,6 @@ $edb0b0405039996a$exports = $edb0b0405039996a$var$isNil;
954
954
 
955
955
 
956
956
 
957
-
958
957
  class $f8721861c660dd88$export$2b65d1d97338f32b {
959
958
  constructor(page){
960
959
  this.page = page;
@@ -962,6 +961,8 @@ class $f8721861c660dd88$export$2b65d1d97338f32b {
962
961
  }
963
962
 
964
963
 
964
+
965
+
965
966
  class $3d3f3946c54f5897$export$34addcca3f0ae43f extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
966
967
  constructor(page){
967
968
  super(page);
@@ -1056,125 +1057,7 @@ class $3d3f3946c54f5897$export$34addcca3f0ae43f extends (0, $f8721861c660dd88$ex
1056
1057
  }
1057
1058
 
1058
1059
 
1059
-
1060
-
1061
- class $e403098cd4f59faa$export$7034f81075184002 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
1062
- constructor(page){
1063
- super(page);
1064
- }
1065
- getHeaderSelector() {
1066
- return ".release-list-header";
1067
- }
1068
- getBaseDrawerSelector() {
1069
- return `${this.getHeaderSelector()} .releases-filter-drawer`;
1070
- }
1071
- getFilterDrawerSelector() {
1072
- return `${this.getBaseDrawerSelector()} div[role="dialog"]`;
1073
- }
1074
- getStatusInputSelector() {
1075
- return `${this.getBaseDrawerSelector()} input#release-status-filter-autocomplete`;
1076
- }
1077
- getBasePopperSelector() {
1078
- return '.dot-popper[role="presentation"]';
1079
- }
1080
- getSelectAllStatusesButtonSelector() {
1081
- return `${this.getBasePopperSelector()} button[data-testid="dot-action-item-btn"]`;
1082
- }
1083
- getTitleInputSelector() {
1084
- return `${this.getHeaderSelector()} input#title-filter`;
1085
- }
1086
- getRiskLevelInputSelector() {
1087
- return `${this.getBaseDrawerSelector()} input#risk`;
1088
- }
1089
- async setReleaseStatusFilter(statuses) {
1090
- for (const status of statuses){
1091
- await this.page.locator(this.getStatusInputSelector()).click();
1092
- await this.page.locator(`${this.getBasePopperSelector()} ul li`).filter({
1093
- hasText: status
1094
- }).click();
1095
- }
1096
- return this;
1097
- }
1098
- async setReleaseTagsFilter(tags) {
1099
- for (const tag of tags){
1100
- await this.page.locator(`${this.getBaseDrawerSelector()} input#release-tags`).click();
1101
- await this.page.locator(`${this.getBasePopperSelector()} ul li`).filter({
1102
- hasText: tag.toLowerCase()
1103
- }).click();
1104
- }
1105
- return this;
1106
- }
1107
- async setTaskTagsFilter(tags) {
1108
- for (const tag of tags){
1109
- await this.page.locator(`${this.getBaseDrawerSelector()} input#task-tags`).click();
1110
- await this.page.locator(`${this.getBasePopperSelector()} ul li`).filter({
1111
- hasText: tag.toLowerCase()
1112
- }).click();
1113
- }
1114
- return this;
1115
- }
1116
- async setRiskLevelFilter(riskLevel) {
1117
- await this.page.locator(this.getRiskLevelInputSelector()).click();
1118
- await this.page.locator(`${this.getBasePopperSelector()} ul li:has-text("${riskLevel}")`).click({
1119
- force: true
1120
- });
1121
- return this;
1122
- }
1123
- async filterReleaseByTitle(releaseTitle) {
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()} .release-list-filter-row button[data-testid="clear-all-btn"]`).click();
1144
- return this;
1145
- }
1146
- async clearAllStatusFilters() {
1147
- await this.page.locator(this.getStatusInputSelector()).click();
1148
- await this.page.locator(`${this.getBaseDrawerSelector()} div.filter-release-status-autocomplete button[title="Clear"]`).click();
1149
- return this;
1150
- }
1151
- async selectAllStatusFilters() {
1152
- await this.page.locator(this.getStatusInputSelector()).click();
1153
- await this.page.locator(this.getSelectAllStatusesButtonSelector()).click();
1154
- return this;
1155
- }
1156
- async gotoListView() {
1157
- await this.clickOnReleasesPageTab("List");
1158
- await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release-list")).toBeVisible();
1159
- }
1160
- async gotoCalendarView() {
1161
- await this.clickOnReleasesPageTab("Calendar");
1162
- await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".tl-viewport")).toBeVisible();
1163
- }
1164
- async clickOnReleasesPageTab(tabName) {
1165
- await this.page.locator("releases-tabs .dot-tab-label").filter({
1166
- hasText: tabName
1167
- }).click();
1168
- return this;
1169
- }
1170
- async toggleFilterFlaggedOnly() {
1171
- await this.page.locator(`${this.getBaseDrawerSelector()} .flagged-releases-switch input[aria-label="Flagged releases"]`).click();
1172
- return this;
1173
- }
1174
- }
1175
-
1176
-
1177
- class $87643f2d97b0644e$export$a678525e79c4ccc4 extends (0, $e403098cd4f59faa$export$7034f81075184002) {
1060
+ class $87643f2d97b0644e$export$a678525e79c4ccc4 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
1178
1061
  constructor(page){
1179
1062
  super(page);
1180
1063
  this.releaseCreatePage = new (0, $3d3f3946c54f5897$export$34addcca3f0ae43f)(page);
@@ -1241,12 +1124,49 @@ class $87643f2d97b0644e$export$a678525e79c4ccc4 extends (0, $e403098cd4f59faa$ex
1241
1124
  await (0, $kKeXs$playwrighttest.expect)(this.page.getByLabel("breadcrumb").getByText("Releases")).toBeVisible();
1242
1125
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release-list")).toBeVisible();
1243
1126
  }
1127
+ async filterReleaseByAllStatus() {
1128
+ await this.page.locator(".ci-status .remaining-tags").getByText("more").click();
1129
+ await this.page.locator(".ci-status .xl-react-link").getByText("Select all").click();
1130
+ }
1131
+ async filterReleaseByStatus(release_status) {
1132
+ await this.page.locator(".react-tagsinput-wrapper .remaining-tags").click();
1133
+ await this.page.getByTitle(release_status).locator("i").first().click();
1134
+ }
1244
1135
  async openReleaseByName(releaseTitle) {
1245
1136
  await this.page.locator(".release-line .row-wrapper .release-title-wrapper a", {
1246
1137
  hasText: releaseTitle
1247
1138
  }).click();
1248
1139
  return new (0, $9b9a8c3da392d020$export$f43492e8ac3c566)(this.page);
1249
1140
  }
1141
+ async openSearchFilter() {
1142
+ await this.page.locator(".toggle-search-filter").click();
1143
+ }
1144
+ async filterReleaseByTitle(releaseTitle) {
1145
+ const searchTitle = this.page.locator(".searchFilter");
1146
+ const searchCount = await searchTitle.count();
1147
+ if (searchCount == 0) {
1148
+ await this.openSearchFilter();
1149
+ await searchTitle.fill(releaseTitle);
1150
+ await searchTitle.press("Enter");
1151
+ await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release").getByText(releaseTitle)).toBeVisible();
1152
+ } else {
1153
+ await searchTitle.press("Enter");
1154
+ await searchTitle.fill(releaseTitle);
1155
+ await searchTitle.press("Enter");
1156
+ await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release").getByText(releaseTitle)).toBeVisible();
1157
+ }
1158
+ }
1159
+ async clearTitleFilter() {
1160
+ const search = await this.page.locator(".searchFilter").count();
1161
+ if (search == 0) {
1162
+ await this.openSearchFilter();
1163
+ await this.page.locator(".searchFilter").clear();
1164
+ await this.page.locator(".searchFilter").press("Enter");
1165
+ } else {
1166
+ await this.page.locator(".searchFilter").clear();
1167
+ await this.page.locator(".searchFilter").press("Enter");
1168
+ }
1169
+ }
1250
1170
  async createNewRelease(releaseName, description) {
1251
1171
  await this.releaseCreatePage.setName(releaseName);
1252
1172
  await this.releaseCreatePage.setDescription(description);
@@ -1259,6 +1179,18 @@ class $87643f2d97b0644e$export$a678525e79c4ccc4 extends (0, $e403098cd4f59faa$ex
1259
1179
  await this.releaseCreatePage.setOwner(ownerName);
1260
1180
  await this.releaseCreatePage.create();
1261
1181
  }
1182
+ async gotoListView() {
1183
+ await this.page.getByRole("tab", {
1184
+ name: "release icon List"
1185
+ }).click();
1186
+ await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release-list")).toBeVisible();
1187
+ }
1188
+ async gotoCalendarView() {
1189
+ await this.page.getByRole("tab", {
1190
+ name: "calendar icon Calendar"
1191
+ }).click();
1192
+ await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".tl-viewport")).toBeVisible();
1193
+ }
1262
1194
  async openReleasesList() {
1263
1195
  await this.page.goto("./#/releases");
1264
1196
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release-list")).toBeVisible();
@@ -4246,8 +4178,7 @@ class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$exp
4246
4178
  async abort(comment = "Abort for testing") {
4247
4179
  await this.page.getByTestId("abort-btn").waitFor();
4248
4180
  await this.page.getByTestId("abort-btn").click();
4249
- await this.page.getByPlaceholder("Give feedback or place a").click();
4250
- await this.page.getByPlaceholder("Give feedback or place a").fill(comment);
4181
+ await this.page.getByPlaceholder("Provide a reason").fill(comment);
4251
4182
  await this.page.getByRole("button", {
4252
4183
  name: "Abort"
4253
4184
  }).click();
@@ -5021,7 +4952,7 @@ class $9b9a8c3da392d020$var$Phase extends (0, $f8721861c660dd88$export$2b65d1d97
5021
4952
  }
5022
4953
  await this.page.getByTestId("save-select-task-btn").click();
5023
4954
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator("p").filter({
5024
- hasText: "Your request has been rejected, your permissions may have been revoked."
4955
+ hasText: "You don’t have permission to view this page."
5025
4956
  })).toBeVisible();
5026
4957
  }
5027
4958
  async expectCurrentTaskCount(count) {
@@ -5717,9 +5648,6 @@ class $9058d40a81bdb1f5$export$b453f08936c58edb extends (0, $f8721861c660dd88$ex
5717
5648
  this.util = new (0, $2c89ba54932fbba8$export$f8f26dd395d7e1bd)(page);
5718
5649
  this.variables = new (0, $59543fc69900e8db$export$f8e64fcf447db2bf)(page);
5719
5650
  }
5720
- getFolderSearchInputLocator() {
5721
- return this.page.locator(".folder-list .folder-list-search input");
5722
- }
5723
5651
  async openFoldersPage() {
5724
5652
  await this.page.goto("./#/folders");
5725
5653
  await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveTitle("Folders / Home - Digital.ai Release");
@@ -5824,9 +5752,9 @@ class $9058d40a81bdb1f5$export$b453f08936c58edb extends (0, $f8721861c660dd88$ex
5824
5752
  })).not.toBeVisible();
5825
5753
  }
5826
5754
  async searchFolderByName(folderName) {
5827
- await this.getFolderSearchInputLocator().click();
5828
- await this.getFolderSearchInputLocator().clear();
5829
- await this.getFolderSearchInputLocator().fill(folderName);
5755
+ await this.page.getByLabel("Start typing to filter").click();
5756
+ await this.page.getByLabel("Start typing to filter").clear();
5757
+ await this.page.getByLabel("Start typing to filter").fill(folderName);
5830
5758
  await (0, $kKeXs$playwrighttest.expect)(this.page.getByRole("link", {
5831
5759
  name: folderName
5832
5760
  })).toBeVisible();
@@ -6861,8 +6789,7 @@ class $a642d735048996f9$export$922081b54f2ab994 extends (0, $f8721861c660dd88$ex
6861
6789
 
6862
6790
 
6863
6791
 
6864
-
6865
- class $a8855257f8bb2b12$export$43682cddead1dd78 extends (0, $e403098cd4f59faa$export$7034f81075184002) {
6792
+ class $a8855257f8bb2b12$export$43682cddead1dd78 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
6866
6793
  async openReleaseCalendarPage() {
6867
6794
  await this.page.goto("./#/releases/calendar");
6868
6795
  //Define date format to verify different calendar views
@@ -6967,6 +6894,61 @@ class $a8855257f8bb2b12$export$43682cddead1dd78 extends (0, $e403098cd4f59faa$ex
6967
6894
  await (0, $kKeXs$playwrighttest.expect)(this.page.getByText(title)).toBeVisible();
6968
6895
  }
6969
6896
  }
6897
+ async filterReleaseByTitle(title) {
6898
+ await this.page.getByPlaceholder("Filter by release title").click();
6899
+ await this.page.getByPlaceholder("Filter by release title").fill(title);
6900
+ await this.page.getByPlaceholder("Filter by release title").press("Enter");
6901
+ //Verify Page has correct Year format displayed at the page bottom
6902
+ await this.verifyPageContent(title);
6903
+ }
6904
+ async filterReleaseByTags(tags, release_title) {
6905
+ await this.page.locator(".tl-filter-release-tags").locator(".react-tagsinput").click();
6906
+ for (let tag of tags){
6907
+ tag = tag.toString();
6908
+ await this.page.locator(".tl-filter-release-tags").locator(".react-tagsinput-input").fill(tag);
6909
+ await this.page.getByTitle(tag).locator("i").click();
6910
+ }
6911
+ await this.verifyPageContent(release_title);
6912
+ }
6913
+ async filterTaskByTags(tags, task_title, release_title) {
6914
+ await this.page.locator(".tl-filter-task-tags").locator(".react-tagsinput").click();
6915
+ for (let tag of tags){
6916
+ tag = tag.toString();
6917
+ await this.page.locator(".tl-filter-task-tags").locator(".react-tagsinput-input").fill(tag);
6918
+ await this.page.getByTitle(tag).locator("i").click();
6919
+ }
6920
+ //Make sure task is visible on calnedar page
6921
+ await this.verifyPageContent(task_title);
6922
+ //Make sure parent release of the selected task is visible on calnedar page
6923
+ await this.verifyPageContent(release_title);
6924
+ }
6925
+ async filterReleaseByStatus(release_status, release_title) {
6926
+ if (!await this.page.locator(".tl-filter-advanced").isVisible()) await this.page.getByRole("button", {
6927
+ name: "Advanced filters"
6928
+ }).click();
6929
+ await this.page.locator(".tl-filter-release-status").locator(".react-tagsinput").click();
6930
+ await this.page.getByTitle(release_status).locator("i").first().click();
6931
+ await this.verifyPageContent(release_title);
6932
+ }
6933
+ async filterReleaseByRisk(release_risk, release_title) {
6934
+ if (!await this.page.locator(".tl-filter-advanced").isVisible()) await this.page.getByRole("button", {
6935
+ name: "Advanced filters"
6936
+ }).click();
6937
+ await this.page.locator(".tl-filter-risk-filter").getByRole("combobox").click();
6938
+ await this.page.getByRole("option", {
6939
+ name: release_risk
6940
+ }).click();
6941
+ await this.verifyPageContent(release_title);
6942
+ }
6943
+ async filterFlaggedRelease(release_title) {
6944
+ if (!await this.page.locator(".tl-filter-advanced").isVisible()) await this.page.getByRole("button", {
6945
+ name: "Advanced filters"
6946
+ }).click();
6947
+ if (await this.page.locator(".tl-filter-flag-only.btn.btn-flat.btn-fixed.button-toggle-filter.active").isVisible()) await this.page.getByRole("button", {
6948
+ name: " Flagged"
6949
+ }).click();
6950
+ await this.verifyPageContent(release_title);
6951
+ }
6970
6952
  async viewRelease(release_title, release_id) {
6971
6953
  await this.page.locator(".tl-header-navigation").getByRole("combobox").click();
6972
6954
  await this.page.getByRole("option", {
@@ -9511,7 +9493,7 @@ class $3ec0e9cf832fdde8$export$9823ddf5e80770e7 extends (0, $f8721861c660dd88$ex
9511
9493
  async addNewInstance(typeName) {
9512
9494
  await this.page.locator(`.configuration-type`).filter({
9513
9495
  hasText: typeName
9514
- }).locator(`.new-instance .button`).click({
9496
+ }).locator(`.new-instance .button`).first().click({
9515
9497
  force: true
9516
9498
  });
9517
9499
  return new $3ec0e9cf832fdde8$var$ConfigurationInstancePage(this.page);