@digital-ai/devops-page-object-release 0.0.14 → 0.0.15
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 +9 -0
- package/dist/main.js +211 -2
- package/dist/main.js.map +1 -1
- package/dist/module.js +211 -2
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +65 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/module.js
CHANGED
|
@@ -646,6 +646,36 @@ class $c9bb587dd92143c3$export$d1077068a9cc9f17 extends (0, $9626bc9256ce31f7$ex
|
|
|
646
646
|
hasText: filename
|
|
647
647
|
})).toBeVisible();
|
|
648
648
|
}
|
|
649
|
+
async getAttachmentsListCount() {
|
|
650
|
+
return await this.page.locator(".attachments tr").count();
|
|
651
|
+
}
|
|
652
|
+
async uploadFile(filePath) {
|
|
653
|
+
const fileChooserPromise = this.page.waitForEvent("filechooser");
|
|
654
|
+
await this.page.locator('input[type="file"]').click();
|
|
655
|
+
const fileChooser = await fileChooserPromise;
|
|
656
|
+
await fileChooser.setFiles(filePath);
|
|
657
|
+
}
|
|
658
|
+
async expectWithNoAttachment(filename) {
|
|
659
|
+
const test = await this.page.locator(".attachments").isVisible();
|
|
660
|
+
if (test) await (0, $hOLA6$expect)(this.page.locator(".attachments tr td a").filter({
|
|
661
|
+
hasText: filename
|
|
662
|
+
})).not.toBeVisible();
|
|
663
|
+
}
|
|
664
|
+
async downloadFile(filename) {
|
|
665
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
666
|
+
const downloadPromise1 = this.page.waitForEvent("download");
|
|
667
|
+
await this.page.getByText(filename).click();
|
|
668
|
+
const download = await downloadPromise1;
|
|
669
|
+
// Wait for the download process to complete and save the downloaded file in given path.
|
|
670
|
+
await download.saveAs("./core/xlr-ui/build/playwright/" + download.suggestedFilename());
|
|
671
|
+
(0, $hOLA6$expect)(download.suggestedFilename()).toBe(filename);
|
|
672
|
+
}
|
|
673
|
+
async deleteAttachment(fileName) {
|
|
674
|
+
await this.page.getByRole("row", {
|
|
675
|
+
name: fileName
|
|
676
|
+
}).locator("span").click();
|
|
677
|
+
await this.page.getByText("Remove").click();
|
|
678
|
+
}
|
|
649
679
|
}
|
|
650
680
|
|
|
651
681
|
|
|
@@ -818,6 +848,11 @@ class $43cbcdfccb6c2a76$export$f43492e8ac3c566 extends (0, $9626bc9256ce31f7$exp
|
|
|
818
848
|
}
|
|
819
849
|
}
|
|
820
850
|
}
|
|
851
|
+
async expectTitleToBeInBreadcrumbLink(title) {
|
|
852
|
+
(0, $hOLA6$expect)(this.page.locator(".dot-breadcrumbs a", {
|
|
853
|
+
hasText: title
|
|
854
|
+
})).toBeVisible();
|
|
855
|
+
}
|
|
821
856
|
}
|
|
822
857
|
class $43cbcdfccb6c2a76$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
823
858
|
constructor(page, phaseName){
|
|
@@ -1272,6 +1307,16 @@ class $c37c93912f458e81$export$60c3bfa6385e2a10 extends (0, $9626bc9256ce31f7$ex
|
|
|
1272
1307
|
await this.filterTaskByTitle(taskName);
|
|
1273
1308
|
await this.page.getByText(taskName).click();
|
|
1274
1309
|
}
|
|
1310
|
+
async openTaskInReleaseView(taskName) {
|
|
1311
|
+
await this.page.locator(`.row.task-inner`, {
|
|
1312
|
+
hasText: taskName
|
|
1313
|
+
}).locator("a.view-in-release").click();
|
|
1314
|
+
}
|
|
1315
|
+
async openCalendarViaTaskDueDate(taskName) {
|
|
1316
|
+
await this.page.locator(`.row.task-inner`, {
|
|
1317
|
+
hasText: taskName
|
|
1318
|
+
}).locator(`.calendar-link a`).click();
|
|
1319
|
+
}
|
|
1275
1320
|
async filterTaskByTitle(taskname) {
|
|
1276
1321
|
await this.page.locator(".toggle-search-filter").click();
|
|
1277
1322
|
await this.page.locator(".searchFilter").fill(taskname);
|
|
@@ -1316,6 +1361,20 @@ class $c37c93912f458e81$export$60c3bfa6385e2a10 extends (0, $9626bc9256ce31f7$ex
|
|
|
1316
1361
|
async expectTaskTitle(taskTitle) {
|
|
1317
1362
|
(0, $hOLA6$expect)(await this.page.locator("#tasks0").innerText()).toContain(taskTitle);
|
|
1318
1363
|
}
|
|
1364
|
+
async expectGroupView(expected = true) {
|
|
1365
|
+
if (expected) {
|
|
1366
|
+
await (0, $hOLA6$expect)(this.page.locator("#group-tasks-by-release")).toBeChecked();
|
|
1367
|
+
await (0, $hOLA6$expect)(this.page.locator("#task-list-grouped-view")).toBeVisible();
|
|
1368
|
+
await (0, $hOLA6$expect)(this.page.locator("#task-ungrouped-view")).not.toBeVisible();
|
|
1369
|
+
} else {
|
|
1370
|
+
await (0, $hOLA6$expect)(this.page.locator("#group-tasks-by-release")).not.toBeChecked();
|
|
1371
|
+
await (0, $hOLA6$expect)(this.page.locator("#task-list-grouped-view")).not.toBeVisible();
|
|
1372
|
+
await (0, $hOLA6$expect)(this.page.locator("#task-ungrouped-view")).toBeVisible();
|
|
1373
|
+
}
|
|
1374
|
+
}
|
|
1375
|
+
async changeGroupView() {
|
|
1376
|
+
await this.page.locator("#group-tasks-by-release").click();
|
|
1377
|
+
}
|
|
1319
1378
|
}
|
|
1320
1379
|
|
|
1321
1380
|
|
|
@@ -1673,6 +1732,143 @@ class $171d52b372748c0b$export$7e1d435fa474ee21 extends (0, $9626bc9256ce31f7$ex
|
|
|
1673
1732
|
}
|
|
1674
1733
|
|
|
1675
1734
|
|
|
1735
|
+
|
|
1736
|
+
|
|
1737
|
+
class $cc2d15e53de5cef7$export$b6fbc3e67030138f extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1738
|
+
async setStatus(status) {
|
|
1739
|
+
await this.page.locator(".react-tagsinput").click({
|
|
1740
|
+
force: true
|
|
1741
|
+
});
|
|
1742
|
+
await this.page.getByText("Clear all").click();
|
|
1743
|
+
await this.page.locator(".react-tagsinput").click({
|
|
1744
|
+
force: true
|
|
1745
|
+
});
|
|
1746
|
+
if (status === "Select all") await this.page.getByText(status).click();
|
|
1747
|
+
else await this.page.getByTitle(status).locator("i").first().click();
|
|
1748
|
+
}
|
|
1749
|
+
async openReleaseGroup(title) {
|
|
1750
|
+
await this.page.locator("xlr-release-group-row").filter({
|
|
1751
|
+
hasText: title
|
|
1752
|
+
}).getByRole("link").click();
|
|
1753
|
+
await this.page.getByTitle(title).click();
|
|
1754
|
+
await (0, $hOLA6$expect)(this.page).toHaveURL(/.*ReleaseGroup/);
|
|
1755
|
+
}
|
|
1756
|
+
async expectReleaseGroupStatus(status) {
|
|
1757
|
+
await (0, $hOLA6$expect)(this.page.locator(".release-status")).toContainText(status);
|
|
1758
|
+
}
|
|
1759
|
+
async expectReleaseGroupDisplayed(title) {
|
|
1760
|
+
await (0, $hOLA6$expect)(this.page.getByText(title, {
|
|
1761
|
+
exact: true
|
|
1762
|
+
})).toBeVisible();
|
|
1763
|
+
}
|
|
1764
|
+
async expectReleaseGroupNotDisplayed(title) {
|
|
1765
|
+
await (0, $hOLA6$expect)(this.page.getByText(title, {
|
|
1766
|
+
exact: true
|
|
1767
|
+
})).not.toBeVisible();
|
|
1768
|
+
}
|
|
1769
|
+
async searchReleaseGroupByTitle(title) {
|
|
1770
|
+
await this.page.getByPlaceholder("Search for groups...", {
|
|
1771
|
+
exact: true
|
|
1772
|
+
}).click();
|
|
1773
|
+
await this.page.getByPlaceholder("Search for groups...", {
|
|
1774
|
+
exact: true
|
|
1775
|
+
}).fill(title);
|
|
1776
|
+
await this.page.getByPlaceholder("Search for groups...", {
|
|
1777
|
+
exact: true
|
|
1778
|
+
}).press("Enter");
|
|
1779
|
+
}
|
|
1780
|
+
async deleteReleaseGroup(title) {
|
|
1781
|
+
await this.page.locator(".fc-list-item-line").filter({
|
|
1782
|
+
hasText: title
|
|
1783
|
+
}).locator(".fc-item-delete").click();
|
|
1784
|
+
await this.page.getByRole("button", {
|
|
1785
|
+
name: "Delete"
|
|
1786
|
+
}).click();
|
|
1787
|
+
}
|
|
1788
|
+
async clickReleaseGroupEdit(title) {
|
|
1789
|
+
await this.page.locator(".fc-list-item-line").filter({
|
|
1790
|
+
hasText: title
|
|
1791
|
+
}).locator(".fc-item-update").click();
|
|
1792
|
+
}
|
|
1793
|
+
async enterReleaseGroupDetails(new_title) {
|
|
1794
|
+
await this.page.locator(".modal-body").locator("#title").fill(new_title);
|
|
1795
|
+
}
|
|
1796
|
+
async clickSaveButton() {
|
|
1797
|
+
await this.page.locator(".modal-footer").getByRole("button", {
|
|
1798
|
+
name: "Save"
|
|
1799
|
+
}).click();
|
|
1800
|
+
}
|
|
1801
|
+
async clickCancelButton() {
|
|
1802
|
+
await this.page.locator(".modal-footer").getByRole("button", {
|
|
1803
|
+
name: "Cancel"
|
|
1804
|
+
}).click();
|
|
1805
|
+
}
|
|
1806
|
+
}
|
|
1807
|
+
|
|
1808
|
+
|
|
1809
|
+
|
|
1810
|
+
|
|
1811
|
+
class $cc231ea61b77c7a2$export$1a0994e9c202d529 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
|
|
1812
|
+
async expectReleaseDisplayed(title) {
|
|
1813
|
+
await (0, $hOLA6$expect)(this.page.getByText(title, {
|
|
1814
|
+
exact: true
|
|
1815
|
+
})).toBeVisible();
|
|
1816
|
+
}
|
|
1817
|
+
async expectReleaseNotDisplayed(title) {
|
|
1818
|
+
await (0, $hOLA6$expect)(this.page.getByText(title, {
|
|
1819
|
+
exact: true
|
|
1820
|
+
})).not.toBeVisible({
|
|
1821
|
+
timeout: 10000
|
|
1822
|
+
});
|
|
1823
|
+
}
|
|
1824
|
+
async expectPhaseDisplayed(title) {
|
|
1825
|
+
await (0, $hOLA6$expect)(this.page.getByText(title, {
|
|
1826
|
+
exact: true
|
|
1827
|
+
})).toBeVisible();
|
|
1828
|
+
}
|
|
1829
|
+
async openContextMenu(title) {
|
|
1830
|
+
await this.page.locator(".timeline-row-name").filter({
|
|
1831
|
+
hasText: title
|
|
1832
|
+
}).locator(".options-icon").click();
|
|
1833
|
+
}
|
|
1834
|
+
async removeFromReleaseGroup() {
|
|
1835
|
+
await this.page.getByRole("menuitem", {
|
|
1836
|
+
name: "Remove from group"
|
|
1837
|
+
}).locator("a").click();
|
|
1838
|
+
await this.page.getByRole("button", {
|
|
1839
|
+
name: "Remove"
|
|
1840
|
+
}).click();
|
|
1841
|
+
}
|
|
1842
|
+
async expectNumberOfReleases(num_of_release) {
|
|
1843
|
+
const elementCount = await this.page.locator(".timeline-row-name-release").count();
|
|
1844
|
+
(0, $hOLA6$expect)(elementCount).toBe(num_of_release);
|
|
1845
|
+
}
|
|
1846
|
+
async openAddReleaseList() {
|
|
1847
|
+
await this.page.getByRole("button", {
|
|
1848
|
+
name: "Add release"
|
|
1849
|
+
}).click();
|
|
1850
|
+
}
|
|
1851
|
+
async filterReleases(title) {
|
|
1852
|
+
await this.page.getByPlaceholder("Search for a release...").click();
|
|
1853
|
+
await this.page.getByPlaceholder("Search for a release...").fill(title);
|
|
1854
|
+
await this.page.waitForTimeout(5000);
|
|
1855
|
+
await this.page.getByPlaceholder("Search for a release...").press("Enter");
|
|
1856
|
+
}
|
|
1857
|
+
async expectNumberOfReleasesOnModal(num_of_release) {
|
|
1858
|
+
const elementCount = await this.page.locator(".release-modal-line").count();
|
|
1859
|
+
(0, $hOLA6$expect)(elementCount).toBe(num_of_release);
|
|
1860
|
+
}
|
|
1861
|
+
async selectAllReleaseCheckbox() {
|
|
1862
|
+
await this.page.getByLabel("Select all").check();
|
|
1863
|
+
}
|
|
1864
|
+
async addReleasesToGroup() {
|
|
1865
|
+
await this.page.getByRole("button", {
|
|
1866
|
+
name: "Add"
|
|
1867
|
+
}).click();
|
|
1868
|
+
}
|
|
1869
|
+
}
|
|
1870
|
+
|
|
1871
|
+
|
|
1676
1872
|
class $e72552cbf941ecfa$export$b8a61e5c71402559 {
|
|
1677
1873
|
constructor(page){
|
|
1678
1874
|
this.page = page;
|
|
@@ -1686,6 +1882,8 @@ class $e72552cbf941ecfa$export$b8a61e5c71402559 {
|
|
|
1686
1882
|
this.taskDetailsPage = new (0, $9ca6e63d357957dd$export$922081b54f2ab994)(page);
|
|
1687
1883
|
this.releaseCalendarPage = new (0, $3a340a3f4fd8f04d$export$43682cddead1dd78)(page);
|
|
1688
1884
|
this.releaseListPage = new (0, $5359280e98d97ff9$export$a678525e79c4ccc4)(page);
|
|
1885
|
+
this.releaseGroupPage = new (0, $cc2d15e53de5cef7$export$b6fbc3e67030138f)(page);
|
|
1886
|
+
this.releaseGroupTimelinePage = new (0, $cc231ea61b77c7a2$export$1a0994e9c202d529)(page);
|
|
1689
1887
|
this.util = new (0, $aa992f812fb1e470$export$6adb8dd3f0d1e432)(page);
|
|
1690
1888
|
}
|
|
1691
1889
|
async openTemplate(id) {
|
|
@@ -2060,6 +2258,15 @@ class $80c3ae34677b4324$var$Fixtures {
|
|
|
2060
2258
|
this.triggerIds.push(trigger.id);
|
|
2061
2259
|
return this.doPost("fixtures/trigger", trigger);
|
|
2062
2260
|
}
|
|
2261
|
+
roles(rolePrincipals) {
|
|
2262
|
+
return this.doPost("fixtures/roles/principals", rolePrincipals);
|
|
2263
|
+
}
|
|
2264
|
+
permissions(rolePermissions) {
|
|
2265
|
+
return this.doPost("fixtures/roles/permissions/global", rolePermissions);
|
|
2266
|
+
}
|
|
2267
|
+
deleteRole(roleName) {
|
|
2268
|
+
return this.doDelete(`fixtures/role/${roleName}`);
|
|
2269
|
+
}
|
|
2063
2270
|
deleteArchivedRelease(id) {
|
|
2064
2271
|
const releaseId = id.includes("Applications/") ? id : `Applications/${id}`;
|
|
2065
2272
|
return this.doDelete("fixtures/cis", [
|
|
@@ -2088,8 +2295,7 @@ class $80c3ae34677b4324$var$Fixtures {
|
|
|
2088
2295
|
]);
|
|
2089
2296
|
}
|
|
2090
2297
|
deleteFolder(folderId) {
|
|
2091
|
-
|
|
2092
|
-
return this.doDelete(`api/v1/folders/${id}`);
|
|
2298
|
+
return this.doDelete(`api/v1/folders/${folderId}`);
|
|
2093
2299
|
}
|
|
2094
2300
|
activityLogs(id, logs) {
|
|
2095
2301
|
return this.doPost(`fixtures/activityLogs/${id}`, logs);
|
|
@@ -2240,6 +2446,9 @@ class $80c3ae34677b4324$var$Fixtures {
|
|
|
2240
2446
|
}
|
|
2241
2447
|
]);
|
|
2242
2448
|
}
|
|
2449
|
+
async createReleaseGroup(releaseGroup) {
|
|
2450
|
+
return this.doPost("fixtures/release-groups", releaseGroup);
|
|
2451
|
+
}
|
|
2243
2452
|
doPost(url, body) {
|
|
2244
2453
|
return this.request.post(url, {
|
|
2245
2454
|
data: body,
|