@digital-ai/devops-page-object-release 0.0.0-snapshot-20251121125952 → 0.0.0-snapshot-20251122175005
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 +75 -4
- package/dist/main.js.map +1 -1
- package/dist/module.js +75 -4
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +10 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# @digital-ai/devops-page-object-release
|
|
2
2
|
|
|
3
|
-
## 0.0.0-snapshot-
|
|
3
|
+
## 0.0.0-snapshot-20251122175005
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
7
|
-
- 21ad43e: S-126861: Added page objects for template-flag-scenario conversion
|
|
8
7
|
- 8fd6062: Corrected the User Filter placeholder to the new UI label change
|
|
8
|
+
- b99183c: S-126526: Added page object for edit-teams-and-permissions-scenario
|
|
9
9
|
|
|
10
10
|
## 0.0.92
|
|
11
11
|
|
package/dist/main.js
CHANGED
|
@@ -1258,10 +1258,6 @@ class $87643f2d97b0644e$export$a678525e79c4ccc4 extends (0, $e403098cd4f59faa$ex
|
|
|
1258
1258
|
}).click();
|
|
1259
1259
|
return new (0, $9b9a8c3da392d020$export$f43492e8ac3c566)(this.page);
|
|
1260
1260
|
}
|
|
1261
|
-
async expectReleaseFlagged(title, flag) {
|
|
1262
|
-
const release = this.page.locator(`.release:has-text("${title}").flagged_${flag}`);
|
|
1263
|
-
await (0, $kKeXs$playwrighttest.expect)(release).toHaveCount(1);
|
|
1264
|
-
}
|
|
1265
1261
|
async createNewRelease(releaseName, description) {
|
|
1266
1262
|
await this.releaseCreatePage.setName(releaseName);
|
|
1267
1263
|
await this.releaseCreatePage.setDescription(description);
|
|
@@ -5919,6 +5915,55 @@ class $e5c8dec182aa2e84$export$e2613a7eee3a1b1b extends (0, $f8721861c660dd88$ex
|
|
|
5919
5915
|
});
|
|
5920
5916
|
await tag.locator(".close-icon").click();
|
|
5921
5917
|
}
|
|
5918
|
+
async expectPermissionReadOnly(permission, team, readOnly) {
|
|
5919
|
+
const rowLocator = this.page.locator(`table tr:has-text("${permission}")`);
|
|
5920
|
+
const tagLocator = rowLocator.locator(`.tag-label:has-text("${team}")`);
|
|
5921
|
+
if (readOnly) await (0, $kKeXs$playwrighttest.expect)(tagLocator).toBeVisible();
|
|
5922
|
+
else {
|
|
5923
|
+
const closeIconLocator = tagLocator.locator('xpath=following-sibling::*[contains(@class, "tag-close")]');
|
|
5924
|
+
await (0, $kKeXs$playwrighttest.expect)(closeIconLocator).toBeVisible();
|
|
5925
|
+
}
|
|
5926
|
+
}
|
|
5927
|
+
async expectTeamsNotToExist(teams, readOnly) {
|
|
5928
|
+
for (const team of teams){
|
|
5929
|
+
//const teamRow = this.page.locator(`table:first-of-type tr:has(td:has-text("${team}"))`);
|
|
5930
|
+
const teamRow = this.page.locator(`tr:has-text("${team}")`);
|
|
5931
|
+
if (readOnly) // Verify read-only team does NOT have a delete button
|
|
5932
|
+
await (0, $kKeXs$playwrighttest.expect)(teamRow.locator('.action-label:has-text("Delete")')).toHaveCount(0);
|
|
5933
|
+
else // For editable teams, make sure delete button exists
|
|
5934
|
+
await (0, $kKeXs$playwrighttest.expect)(teamRow.locator('.action-label:has-text("Delete")')).toHaveCount(1);
|
|
5935
|
+
}
|
|
5936
|
+
}
|
|
5937
|
+
async expectInheritTeamsDisabled() {
|
|
5938
|
+
const inheritCheckbox = this.page.locator(".inherit-checkbox input");
|
|
5939
|
+
await (0, $kKeXs$playwrighttest.expect)(inheritCheckbox).toBeVisible();
|
|
5940
|
+
await (0, $kKeXs$playwrighttest.expect)(inheritCheckbox).toBeDisabled();
|
|
5941
|
+
}
|
|
5942
|
+
async expectNewTeamButtonDisabled() {
|
|
5943
|
+
const addTeamButton = this.page.locator(".button-add-team");
|
|
5944
|
+
await (0, $kKeXs$playwrighttest.expect)(addTeamButton).toBeDisabled();
|
|
5945
|
+
}
|
|
5946
|
+
async expectRemoveTeamButtonNotToExist() {
|
|
5947
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#teams-permissions-table table tr .action-label")).toHaveCount(0);
|
|
5948
|
+
return this;
|
|
5949
|
+
}
|
|
5950
|
+
async expectSaveButtonDisabled() {
|
|
5951
|
+
const saveButton = this.page.getByRole("button", {
|
|
5952
|
+
name: "Save"
|
|
5953
|
+
});
|
|
5954
|
+
await (0, $kKeXs$playwrighttest.expect)(saveButton).toBeVisible();
|
|
5955
|
+
await (0, $kKeXs$playwrighttest.expect)(saveButton).toBeDisabled();
|
|
5956
|
+
return this;
|
|
5957
|
+
}
|
|
5958
|
+
async expectTeamsReadOnly(teams, readOnly) {
|
|
5959
|
+
for (const team of teams){
|
|
5960
|
+
const teamRow = this.page.locator("table").first().locator("tr", {
|
|
5961
|
+
hasText: team
|
|
5962
|
+
});
|
|
5963
|
+
await (0, $kKeXs$playwrighttest.expect)(teamRow.locator(".tag-label + .tag-close")).toHaveCount(readOnly ? 0 : 1);
|
|
5964
|
+
}
|
|
5965
|
+
return this;
|
|
5966
|
+
}
|
|
5922
5967
|
async expectPermissionNotToExist(permission, team) {
|
|
5923
5968
|
const row = this.page.locator("table tr", {
|
|
5924
5969
|
hasText: permission
|
|
@@ -6032,6 +6077,19 @@ class $9058d40a81bdb1f5$export$b453f08936c58edb extends (0, $f8721861c660dd88$ex
|
|
|
6032
6077
|
await this.util.openSideNavMenu("Teams & permissions");
|
|
6033
6078
|
await (0, $kKeXs$playwrighttest.expect)(this.page.getByLabel("breadcrumb").getByText("Teams & permissions")).toBeVisible();
|
|
6034
6079
|
}
|
|
6080
|
+
async clickOnFolderRowAction(folderName, actionLabel) {
|
|
6081
|
+
const folderRow = this.page.locator(`.folder-list-row-wrapper:has-text("${folderName}")`);
|
|
6082
|
+
await folderRow.hover();
|
|
6083
|
+
const optionsWrapper = folderRow.locator(".folder-options-wrapper");
|
|
6084
|
+
const actionLink = optionsWrapper.locator(`.flatten-links a:has-text("${actionLabel}")`);
|
|
6085
|
+
await actionLink.click();
|
|
6086
|
+
}
|
|
6087
|
+
async createNewFolderFromRowAction(folderName, subFolderName) {
|
|
6088
|
+
await this.clickOnFolderRowAction(folderName, "Add folder");
|
|
6089
|
+
const modal = this.page.locator(".xl-react-modal-content");
|
|
6090
|
+
await modal.locator("input").fill(subFolderName);
|
|
6091
|
+
await modal.locator(".button.primary").click();
|
|
6092
|
+
}
|
|
6035
6093
|
async expectReleaseGroupisDisplayed(title) {
|
|
6036
6094
|
//await this.page.locator(`.fc-list-item-title-wrapper .fc-list-item-title strong:text-is('${title}`).isVisible()
|
|
6037
6095
|
await this.page.waitForSelector(`.fc-list-item-title-wrapper .fc-list-item-title strong:text-is('${title}')`);
|
|
@@ -10090,6 +10148,19 @@ class $4ef41cf96a5fae4c$export$b8a61e5c71402559 {
|
|
|
10090
10148
|
await this.page.waitForSelector("#releases-content");
|
|
10091
10149
|
return new (0, $9058d40a81bdb1f5$export$b453f08936c58edb)(this.page);
|
|
10092
10150
|
}
|
|
10151
|
+
async openFolderByName(folderName) {
|
|
10152
|
+
const folder = this.page.getByTitle(folderName);
|
|
10153
|
+
await (0, $kKeXs$playwrighttest.expect)(folder).toBeVisible({
|
|
10154
|
+
timeout: 5000
|
|
10155
|
+
});
|
|
10156
|
+
await folder.click();
|
|
10157
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".MuiBreadcrumbs-li").getByRole("link", {
|
|
10158
|
+
name: folderName
|
|
10159
|
+
})).toBeVisible({
|
|
10160
|
+
timeout: 5000
|
|
10161
|
+
});
|
|
10162
|
+
return this;
|
|
10163
|
+
}
|
|
10093
10164
|
async openProfilePage() {
|
|
10094
10165
|
await this.page.goto(`./#/profile`);
|
|
10095
10166
|
return new (0, $010122e1d9b28b80$export$3cf9c90f870f31bd)(this.page);
|