@digital-ai/devops-page-object-release 0.0.90 → 0.0.91

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,5 +1,11 @@
1
1
  # @digital-ai/devops-page-object-release
2
2
 
3
+ ## 0.0.91
4
+
5
+ ### Patch Changes
6
+
7
+ - 246bc7c: S-125225: Update new tasks page filters
8
+
3
9
  ## 0.0.90
4
10
 
5
11
  ### Patch Changes
package/dist/main.js CHANGED
@@ -1058,18 +1058,52 @@ class $3d3f3946c54f5897$export$34addcca3f0ae43f extends (0, $f8721861c660dd88$ex
1058
1058
 
1059
1059
 
1060
1060
 
1061
- class $e403098cd4f59faa$export$7034f81075184002 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
1061
+
1062
+ class $96d547f0e8ead553$export$48c33d2414f51608 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
1062
1063
  constructor(page){
1063
1064
  super(page);
1064
1065
  }
1065
1066
  getHeaderSelector() {
1066
- return ".release-list-header";
1067
+ return ".filter-title-search";
1067
1068
  }
1068
1069
  getBaseDrawerSelector() {
1069
- return `${this.getHeaderSelector()} .filter-drawer`;
1070
+ return '.filter-drawer div[role="dialog"]';
1071
+ }
1072
+ getTitleInputSelector() {
1073
+ return `${this.getHeaderSelector()} input#title-filter`;
1074
+ }
1075
+ async openFilterDrawer() {
1076
+ await this.page.locator(`${this.getHeaderSelector()} button`, {
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(`.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);
1070
1097
  }
1071
- getFilterDrawerSelector() {
1072
- return `${this.getBaseDrawerSelector()} div[role="dialog"]`;
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);
1073
1107
  }
1074
1108
  getStatusInputSelector() {
1075
1109
  return `${this.getBaseDrawerSelector()} input#release-status-filter-autocomplete`;
@@ -1080,9 +1114,6 @@ class $e403098cd4f59faa$export$7034f81075184002 extends (0, $f8721861c660dd88$ex
1080
1114
  getSelectAllStatusesButtonSelector() {
1081
1115
  return `${this.getBasePopperSelector()} button[data-testid="dot-action-item-btn"]`;
1082
1116
  }
1083
- getTitleInputSelector() {
1084
- return `${this.getHeaderSelector()} input#title-filter`;
1085
- }
1086
1117
  getRiskLevelInputSelector() {
1087
1118
  return `${this.getBaseDrawerSelector()} input#risk`;
1088
1119
  }
@@ -1121,27 +1152,7 @@ class $e403098cd4f59faa$export$7034f81075184002 extends (0, $f8721861c660dd88$ex
1121
1152
  return this;
1122
1153
  }
1123
1154
  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()} .filter-row button[data-testid="clear-all-btn"]`).click();
1144
- return this;
1155
+ await this.filterByTitle(releaseTitle);
1145
1156
  }
1146
1157
  async clearAllStatusFilters() {
1147
1158
  await this.page.locator(this.getStatusInputSelector()).click();
@@ -3134,7 +3145,7 @@ class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$ex
3134
3145
  this.taskDrawerLocator = this.page.locator("task-drawer .dot-drawer");
3135
3146
  }
3136
3147
  async waitForTaskDrawer() {
3137
- const handle = await this.page.locator(".dot-drawer-paper").elementHandle();
3148
+ const handle = await this.page.locator("task-drawer .dot-drawer-paper").elementHandle();
3138
3149
  await handle?.waitForElementState("stable");
3139
3150
  }
3140
3151
  async openOverviewRail() {
@@ -3303,10 +3314,10 @@ class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$ex
3303
3314
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".user-task-assigned-wrapper .clickable-avatar")).toBeVisible();
3304
3315
  }
3305
3316
  async removeAssignToUser(userName) {
3306
- await this.page.getByRole("button", {
3317
+ await this.taskDrawerLocator.getByRole("button", {
3307
3318
  name: userName
3308
3319
  }).click();
3309
- await this.page.getByRole("button", {
3320
+ await this.taskDrawerLocator.getByRole("button", {
3310
3321
  name: "Clear"
3311
3322
  }).click();
3312
3323
  return this;
@@ -3323,7 +3334,7 @@ class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$ex
3323
3334
  }
3324
3335
  async removeAssignedTeam(teamName) {
3325
3336
  await this.page.locator(".team-task-assigned-wrapper .editable").getByText(teamName).click();
3326
- await this.page.getByRole("button", {
3337
+ await this.taskDrawerLocator.getByRole("button", {
3327
3338
  name: "Clear"
3328
3339
  }).click();
3329
3340
  return this;
@@ -7787,13 +7798,23 @@ class $fd4eef3ad2b2e612$var$DeleteVariableModel extends (0, $f8721861c660dd88$ex
7787
7798
 
7788
7799
 
7789
7800
 
7790
- class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
7801
+
7802
+ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $96d547f0e8ead553$export$48c33d2414f51608) {
7791
7803
  constructor(page){
7792
7804
  super(page);
7793
7805
  this.commentBox = this.page.locator(`.input-block-level`);
7794
7806
  this.gridView = new $ed2d4739e27d43c1$var$GridView(page);
7795
7807
  this.taskDrawer = new (0, $6a21661eb4695574$export$e946776eae644790)(page);
7796
7808
  }
7809
+ getBasePopperSelector() {
7810
+ return '.dot-popper[role="presentation"]';
7811
+ }
7812
+ getSelectAllStatusesButtonSelector() {
7813
+ return `${this.getBasePopperSelector()} button[data-testid="dot-action-item-btn"]`;
7814
+ }
7815
+ getStatusInputSelector() {
7816
+ return `${this.getBaseDrawerSelector()} input#task-status-filter-autocomplete`;
7817
+ }
7797
7818
  async openTask(taskName) {
7798
7819
  await this.filterTaskByTitle(taskName);
7799
7820
  await this.page.getByText(taskName).first().click();
@@ -7859,9 +7880,7 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $f8721861c660dd88$ex
7859
7880
  await this.taskDrawer.waitForTaskDrawer();
7860
7881
  }
7861
7882
  async filterTaskByTitle(taskname) {
7862
- await this.page.locator(".searchFilter").click();
7863
- await this.page.locator(".searchFilter").fill(taskname);
7864
- await this.page.locator(".searchFilter").press("Enter");
7883
+ await this.filterByTitle(taskname);
7865
7884
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator("//div[@data-task-title]").filter({
7866
7885
  hasText: taskname
7867
7886
  }).first()).toBeVisible();
@@ -7906,13 +7925,13 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $f8721861c660dd88$ex
7906
7925
  await this.page.locator(`.btn-group-filter.btn-group button.btn.btn-flat[title="${title}"]`).click();
7907
7926
  }
7908
7927
  async clickOnAssignedToMe() {
7909
- await this.page.locator(`button[title="Assigned to me"]`).click();
7928
+ await this.page.locator(`input[value="assignedToMe"]`).click();
7910
7929
  }
7911
7930
  async clickOnAssignedToMyTeams() {
7912
- await this.page.locator(`button[title="Assigned to my teams"]`).click();
7931
+ await this.page.locator(`input[value="assignedToMyTeams"]`).click();
7913
7932
  }
7914
7933
  async clickOnAssignedToAllAvailable() {
7915
- await this.page.locator(`button[title="All available"]`).click();
7934
+ await this.page.locator(`input[value="assignedToAnybody"]`).click();
7916
7935
  }
7917
7936
  async expectTaskToNotBeDisplayed(taskTitle) {
7918
7937
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`.row.task-inner`).filter({
@@ -7942,38 +7961,30 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $f8721861c660dd88$ex
7942
7961
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`#tasks-content #task-list-grouped-view div:has-text('${releaseTitle}') .task`)).toHaveCount(expectedCount);
7943
7962
  }
7944
7963
  async setSearchFilter(filterText) {
7945
- await this.page.locator(".searchFilter").fill(filterText);
7964
+ await this.filterByTitle(filterText);
7946
7965
  }
7947
7966
  async clearSearchFilter() {
7948
- await this.page.locator(".searchFilter").clear();
7967
+ await this.clearFilterTitle();
7949
7968
  }
7950
7969
  async setTagsFilter(filterText) {
7951
- await this.page.locator(".tag-input").fill(filterText);
7952
- await this.page.locator(".tag-input").press("Enter");
7970
+ await this.page.locator("input#task-tags").click();
7971
+ await this.page.locator("input#task-tags").fill(filterText);
7972
+ await this.page.locator("input#task-tags").press("Enter");
7953
7973
  }
7954
- async clickOnStatusField() {
7955
- await this.page.locator(".ci-filter-status.ng-isolate-scope").click();
7974
+ async clearAllStatusFilters() {
7975
+ await this.page.locator(this.getStatusInputSelector()).click();
7976
+ await this.page.locator(`${this.getBaseDrawerSelector()} div.filter-task-status-autocomplete button[title="Clear"]`).click();
7977
+ return this;
7956
7978
  }
7957
7979
  async clickOnStatus(statusNames) {
7958
- await this.clickOnStatusClearAll();
7959
- await this.clickOnStatusField();
7960
- for(let i = 0; i < statusNames.length; i++)await this.page.locator(`i.xl-icon.icon-s.checkbox[data='${statusNames[i]}']`).click();
7961
- // Clicking outside to close the grid dropdown
7962
- await this.clickOnTasksLabel();
7963
- }
7964
- async clickOnStatusClearAll() {
7965
- await this.clickOnStatusField();
7966
- await this.page.locator("a.xl-react-link", {
7967
- hasText: "Clear all"
7980
+ await this.clearAllStatusFilters();
7981
+ for(let i = 0; i < statusNames.length; i++)await this.page.locator("li", {
7982
+ hasText: statusNames[i]
7968
7983
  }).click();
7969
- await this.clickOnTasksLabel();
7970
7984
  }
7971
7985
  async clickOnStatusSelectAll() {
7972
- await this.clickOnStatusField();
7973
- await this.page.locator("a.xl-react-link", {
7974
- hasText: "Select all"
7975
- }).click();
7976
- await this.clickOnTasksLabel();
7986
+ await this.page.locator(this.getStatusInputSelector()).click();
7987
+ await this.page.locator(this.getSelectAllStatusesButtonSelector()).click();
7977
7988
  }
7978
7989
  async assignTaskToMe(title) {
7979
7990
  await this.page.locator(`.task-line`).filter({
@@ -7990,35 +8001,22 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $f8721861c660dd88$ex
7990
8001
  async expectTaskTitle(taskTitle) {
7991
8002
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#tasks0")).toContainText(taskTitle);
7992
8003
  }
7993
- async clickOnTasksLabel() {
7994
- await this.page.getByLabel("breadcrumb").getByText("Tasks").click();
7995
- }
7996
8004
  async expectGroupView(expected = true) {
7997
8005
  if (expected) {
7998
- await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#group-tasks-by-release")).toBeChecked();
8006
+ await (0, $kKeXs$playwrighttest.expect)(this.page.locator('input[aria-label="Group by release"]')).toBeChecked();
7999
8007
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#task-list-grouped-view")).toBeVisible();
8000
8008
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#task-ungrouped-view")).not.toBeVisible();
8001
8009
  } else {
8002
- await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#group-tasks-by-release")).not.toBeChecked();
8010
+ await (0, $kKeXs$playwrighttest.expect)(this.page.locator('input[aria-label="Group by release"]')).not.toBeChecked();
8003
8011
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#task-list-grouped-view")).not.toBeVisible();
8004
8012
  await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#task-ungrouped-view")).toBeVisible();
8005
8013
  }
8006
8014
  }
8007
8015
  async changeGroupView() {
8008
- await this.page.locator("#group-tasks-by-release").click();
8009
- }
8010
- async enableGroupByReleaseView() {
8011
- await this.page.getByRole("checkbox", {
8012
- name: "Group by release"
8013
- }).check();
8014
- }
8015
- async disableGroupByReleaseView() {
8016
- await this.page.getByRole("checkbox", {
8017
- name: "Group by release"
8018
- }).uncheck();
8016
+ await this.page.locator('input[aria-label="Group by release"]').click();
8019
8017
  }
8020
8018
  async switchToGridView() {
8021
- await this.page.locator(".xl-icon.grid-icon").click();
8019
+ await this.page.locator('button[aria-label="grid view"]').click();
8022
8020
  return this.gridView;
8023
8021
  }
8024
8022
  }