@digital-ai/devops-page-object-release 0.0.24 → 0.0.26
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 +13 -0
- package/dist/main.js +590 -51
- package/dist/main.js.map +1 -1
- package/dist/module.js +590 -51
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +159 -24
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -966,6 +966,7 @@ class $f8721861c660dd88$export$2b65d1d97338f32b {
|
|
|
966
966
|
class $3d3f3946c54f5897$export$34addcca3f0ae43f extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
967
967
|
constructor(page){
|
|
968
968
|
super(page);
|
|
969
|
+
this.releaseForm = this.page.locator("#release-properties .form-group");
|
|
969
970
|
}
|
|
970
971
|
async setName(releaseName) {
|
|
971
972
|
await this.page.locator("#release-form-title").click();
|
|
@@ -1012,6 +1013,14 @@ class $3d3f3946c54f5897$export$34addcca3f0ae43f extends (0, $f8721861c660dd88$ex
|
|
|
1012
1013
|
await this.page.locator(`#form-${variableName} .display`).click();
|
|
1013
1014
|
await this.page.locator(`input[name="${variableName}"]`).fill(value);
|
|
1014
1015
|
}
|
|
1016
|
+
async setVariable(variable, value) {
|
|
1017
|
+
await this.releaseForm.filter({
|
|
1018
|
+
hasText: variable
|
|
1019
|
+
}).locator("div[inline-text-editor]").click();
|
|
1020
|
+
await this.releaseForm.filter({
|
|
1021
|
+
hasText: variable
|
|
1022
|
+
}).locator("div[inline-text-editor] input").fill(value);
|
|
1023
|
+
}
|
|
1015
1024
|
}
|
|
1016
1025
|
|
|
1017
1026
|
|
|
@@ -1217,7 +1226,7 @@ class $880df57ffbf6e614$export$9b575f14aa5e09a1 extends (0, $f8721861c660dd88$ex
|
|
|
1217
1226
|
}
|
|
1218
1227
|
|
|
1219
1228
|
|
|
1220
|
-
class $
|
|
1229
|
+
class $59543fc69900e8db$export$f8e64fcf447db2bf extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1221
1230
|
constructor(page){
|
|
1222
1231
|
super(page);
|
|
1223
1232
|
this.addListValue = this.page.locator(".variable-selector .xl-components-input-full input");
|
|
@@ -1229,7 +1238,7 @@ class $fd4eef3ad2b2e612$export$a87f0ae8695e74be extends (0, $f8721861c660dd88$ex
|
|
|
1229
1238
|
}
|
|
1230
1239
|
async openVariable(variableKey) {
|
|
1231
1240
|
await this.page.locator(`.variables-list .variable`).getByText(variableKey).click();
|
|
1232
|
-
return new $
|
|
1241
|
+
return new $59543fc69900e8db$var$VariableModal(this.page);
|
|
1233
1242
|
}
|
|
1234
1243
|
async addNewVariable(variableName, labelname, description) {
|
|
1235
1244
|
await this.page.locator("#action-toolbar").getByTestId("dot-button").click();
|
|
@@ -1318,14 +1327,16 @@ class $fd4eef3ad2b2e612$export$a87f0ae8695e74be extends (0, $f8721861c660dd88$ex
|
|
|
1318
1327
|
(0, $kKeXs$playwrighttest.expect)(rowLocator.toString()).toContain(type);
|
|
1319
1328
|
}
|
|
1320
1329
|
async clickEditVariable(variableName) {
|
|
1321
|
-
await this.page.locator("
|
|
1322
|
-
|
|
1323
|
-
|
|
1330
|
+
await this.page.locator(".data-row").filter({
|
|
1331
|
+
hasText: variableName
|
|
1332
|
+
}).getByText("Edit").first().click();
|
|
1333
|
+
return new $59543fc69900e8db$var$VariableModal(this.page);
|
|
1324
1334
|
}
|
|
1325
1335
|
async clickDeleteVariable(variableName) {
|
|
1326
|
-
await this.page.locator("
|
|
1327
|
-
|
|
1328
|
-
|
|
1336
|
+
await this.page.locator(".data-row").filter({
|
|
1337
|
+
hasText: variableName
|
|
1338
|
+
}).locator(".action .delete-icon").first().click();
|
|
1339
|
+
return new $59543fc69900e8db$var$DeleteVariableModel(this.page);
|
|
1329
1340
|
}
|
|
1330
1341
|
async expectVariablesCountToBe(count) {
|
|
1331
1342
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".variable .data-row")).toHaveCount(count);
|
|
@@ -1335,7 +1346,7 @@ class $fd4eef3ad2b2e612$export$a87f0ae8695e74be extends (0, $f8721861c660dd88$ex
|
|
|
1335
1346
|
hasText: variableName
|
|
1336
1347
|
})).not.toBeVisible();
|
|
1337
1348
|
}
|
|
1338
|
-
async
|
|
1349
|
+
async clearReleaseVariableSearch() {
|
|
1339
1350
|
await this.page.locator("[id='variables-filter']").clear();
|
|
1340
1351
|
}
|
|
1341
1352
|
async switchPossibleValuesToVariable(variableName) {
|
|
@@ -1356,8 +1367,14 @@ class $fd4eef3ad2b2e612$export$a87f0ae8695e74be extends (0, $f8721861c660dd88$ex
|
|
|
1356
1367
|
if (required) await this.page.getByRole("checkbox").check();
|
|
1357
1368
|
else await this.page.getByRole("checkbox").uncheck();
|
|
1358
1369
|
}
|
|
1370
|
+
async searchFolderVariable(variableName) {
|
|
1371
|
+
await this.page.locator(".searchFilter").fill(variableName);
|
|
1372
|
+
}
|
|
1373
|
+
async clearFolderVarSearch() {
|
|
1374
|
+
await this.page.locator(".searchFilter").clear();
|
|
1375
|
+
}
|
|
1359
1376
|
}
|
|
1360
|
-
class $
|
|
1377
|
+
class $59543fc69900e8db$var$VariableModal extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1361
1378
|
constructor(page){
|
|
1362
1379
|
super(page);
|
|
1363
1380
|
this.dateUtil = new (0, $880df57ffbf6e614$export$9b575f14aa5e09a1)(page);
|
|
@@ -1400,8 +1417,8 @@ class $fd4eef3ad2b2e612$var$ReleaseVariableModal extends (0, $f8721861c660dd88$e
|
|
|
1400
1417
|
if (possiblevalue instanceof Array) for (const value of possiblevalue)(0, $kKeXs$playwrighttest.expect)(listLocator).toContain(value);
|
|
1401
1418
|
else (0, $kKeXs$playwrighttest.expect)(listLocator).toContain(possiblevalue);
|
|
1402
1419
|
}
|
|
1403
|
-
async expectPossibleVariableValues(
|
|
1404
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".variable-dropdown input")).toHaveValue(
|
|
1420
|
+
async expectPossibleVariableValues(possibleVariableValue) {
|
|
1421
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".variable-dropdown input")).toHaveValue(possibleVariableValue);
|
|
1405
1422
|
}
|
|
1406
1423
|
async addPossibleValue(value) {
|
|
1407
1424
|
if (value instanceof Array) for (const li of value){
|
|
@@ -1449,7 +1466,7 @@ class $fd4eef3ad2b2e612$var$ReleaseVariableModal extends (0, $f8721861c660dd88$e
|
|
|
1449
1466
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#modal .variable-label input")).toHaveValue(value);
|
|
1450
1467
|
}
|
|
1451
1468
|
async expectRequired(value) {
|
|
1452
|
-
if (value
|
|
1469
|
+
if (value) await (0, $kKeXs$playwrighttest.expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).toBeChecked();
|
|
1453
1470
|
else await (0, $kKeXs$playwrighttest.expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).not.toBeChecked();
|
|
1454
1471
|
}
|
|
1455
1472
|
async setDescription(description) {
|
|
@@ -1467,11 +1484,17 @@ class $fd4eef3ad2b2e612$var$ReleaseVariableModal extends (0, $f8721861c660dd88$e
|
|
|
1467
1484
|
async setValue(value) {
|
|
1468
1485
|
await this.page.locator(".variable-value input").fill(value);
|
|
1469
1486
|
}
|
|
1487
|
+
async clickMultiline() {
|
|
1488
|
+
await this.page.locator("#multiline").click();
|
|
1489
|
+
}
|
|
1490
|
+
async setValueForMultilinePassword(value) {
|
|
1491
|
+
await this.page.locator(".password-textarea").fill(value);
|
|
1492
|
+
}
|
|
1470
1493
|
}
|
|
1471
|
-
class $
|
|
1494
|
+
class $59543fc69900e8db$var$DeleteVariableModel extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1472
1495
|
constructor(page){
|
|
1473
1496
|
super(page);
|
|
1474
|
-
this.model = new $
|
|
1497
|
+
this.model = new $59543fc69900e8db$var$VariableModal(page);
|
|
1475
1498
|
this.dateUtil = new (0, $880df57ffbf6e614$export$9b575f14aa5e09a1)(page);
|
|
1476
1499
|
}
|
|
1477
1500
|
async deleteVariable() {
|
|
@@ -1674,7 +1697,7 @@ class $eb81c1b930e440ff$export$519356f6c50361f7 extends (0, $f8721861c660dd88$ex
|
|
|
1674
1697
|
}).click();
|
|
1675
1698
|
}
|
|
1676
1699
|
async setVariable(propertyName, variableName) {
|
|
1677
|
-
|
|
1700
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(variableName);
|
|
1678
1701
|
}
|
|
1679
1702
|
async expectValueFromString(propertyName, propertyValue) {
|
|
1680
1703
|
return await (0, $kKeXs$playwrighttest.expect)(this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`)).toHaveText(propertyValue);
|
|
@@ -1739,8 +1762,7 @@ class $eb81c1b930e440ff$export$519356f6c50361f7 extends (0, $f8721861c660dd88$ex
|
|
|
1739
1762
|
}
|
|
1740
1763
|
async getDependencyCount() {
|
|
1741
1764
|
await (0, $kKeXs$playwrighttest.expect)(this.railLocator.locator(".gate-task-dependencies")).toBeVisible();
|
|
1742
|
-
|
|
1743
|
-
return count;
|
|
1765
|
+
return await this.railLocator.locator(".gate-task-dependencies .dependency").count();
|
|
1744
1766
|
}
|
|
1745
1767
|
async addDependency() {
|
|
1746
1768
|
await (0, $kKeXs$playwrighttest.expect)(this.railLocator.locator(".add-dependency-btn")).toBeVisible();
|
|
@@ -1783,6 +1805,84 @@ class $eb81c1b930e440ff$export$519356f6c50361f7 extends (0, $f8721861c660dd88$ex
|
|
|
1783
1805
|
}).click();
|
|
1784
1806
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".phase-link-container").locator(".variable").first()).toHaveText(expectedDescription);
|
|
1785
1807
|
}
|
|
1808
|
+
async setReleaseTitle(releaseName) {
|
|
1809
|
+
await this.page.getByLabel("Release title *").fill(releaseName);
|
|
1810
|
+
}
|
|
1811
|
+
async setFolder(folderName) {
|
|
1812
|
+
await this.page.getByPlaceholder("Select a folder").click();
|
|
1813
|
+
await this.page.getByPlaceholder("Search folder...").fill(folderName);
|
|
1814
|
+
await this.page.getByRole("button", {
|
|
1815
|
+
name: folderName
|
|
1816
|
+
}).click();
|
|
1817
|
+
}
|
|
1818
|
+
async setTemplate(templateName) {
|
|
1819
|
+
await this.page.getByLabel("Template").click();
|
|
1820
|
+
await this.page.getByLabel("Template").fill(templateName);
|
|
1821
|
+
await this.page.getByRole("option", {
|
|
1822
|
+
name: templateName
|
|
1823
|
+
}).click();
|
|
1824
|
+
}
|
|
1825
|
+
async clearTemplate() {
|
|
1826
|
+
await this.page.locator("#templateId").click();
|
|
1827
|
+
await this.page.locator("#templateId").clear();
|
|
1828
|
+
}
|
|
1829
|
+
async errorMsgVisible(errorMessage) {
|
|
1830
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#dialogTitle")).toContainText(errorMessage);
|
|
1831
|
+
}
|
|
1832
|
+
async isButtonVisible(buttonName, visible = true) {
|
|
1833
|
+
(0, $kKeXs$playwrighttest.expect)(await this.page.getByRole("button", {
|
|
1834
|
+
name: buttonName
|
|
1835
|
+
}).isVisible()).toBe(visible);
|
|
1836
|
+
}
|
|
1837
|
+
async cancelDialogWindow() {
|
|
1838
|
+
await this.page.getByRole("button", {
|
|
1839
|
+
name: "cancel"
|
|
1840
|
+
}).click();
|
|
1841
|
+
}
|
|
1842
|
+
async acceptDialogWindow() {
|
|
1843
|
+
await this.page.getByRole("button", {
|
|
1844
|
+
name: "ok"
|
|
1845
|
+
}).click();
|
|
1846
|
+
}
|
|
1847
|
+
async setRiskProfile(RiskProfile) {
|
|
1848
|
+
await this.page.getByLabel("Risk profile").click();
|
|
1849
|
+
await this.page.getByLabel("Risk profile").fill(RiskProfile);
|
|
1850
|
+
await this.page.getByRole("option", {
|
|
1851
|
+
name: RiskProfile
|
|
1852
|
+
}).click();
|
|
1853
|
+
}
|
|
1854
|
+
async expectTemplate(template) {
|
|
1855
|
+
const templateName = await this.page.locator("#templateId").getAttribute("value");
|
|
1856
|
+
(0, $kKeXs$playwrighttest.expect)(templateName).toEqual(template);
|
|
1857
|
+
}
|
|
1858
|
+
async setAutoCompletePassword(passwordValue) {
|
|
1859
|
+
await this.page.getByTestId("password").getByLabel("Click to switch between").click();
|
|
1860
|
+
await this.page.locator("#password").fill(passwordValue);
|
|
1861
|
+
await this.page.getByRole("option", {
|
|
1862
|
+
name: passwordValue
|
|
1863
|
+
}).click();
|
|
1864
|
+
}
|
|
1865
|
+
async setAutoCompleteField(fieldLabel, value) {
|
|
1866
|
+
await this.page.getByLabel(fieldLabel).click();
|
|
1867
|
+
await this.page.getByLabel(fieldLabel).fill(value);
|
|
1868
|
+
await this.page.getByRole("option", {
|
|
1869
|
+
name: value
|
|
1870
|
+
}).click();
|
|
1871
|
+
}
|
|
1872
|
+
async setNewAutoCompleteField(fieldLabel, value) {
|
|
1873
|
+
await this.page.getByLabel(fieldLabel).click();
|
|
1874
|
+
await this.page.getByLabel(fieldLabel).fill(value);
|
|
1875
|
+
await this.page.getByTestId("dot-action-item-btn").click();
|
|
1876
|
+
}
|
|
1877
|
+
async setTextField(fieldID, value) {
|
|
1878
|
+
await this.page.locator(`[data-test-id="${fieldID}"]`).nth(1).click();
|
|
1879
|
+
await this.page.locator(`input[name='${fieldID}']`).fill(value);
|
|
1880
|
+
}
|
|
1881
|
+
async abortButtonVisibility(visible = true) {
|
|
1882
|
+
(0, $kKeXs$playwrighttest.expect)(await this.page.getByRole("button", {
|
|
1883
|
+
name: "Abort"
|
|
1884
|
+
}).isVisible()).toBe(visible);
|
|
1885
|
+
}
|
|
1786
1886
|
}
|
|
1787
1887
|
class $eb81c1b930e440ff$export$fbbf45eff21470e3 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1788
1888
|
constructor(page){
|
|
@@ -1941,6 +2041,25 @@ class $f9016705c1a1eb20$export$aa59788fdecae2f2 extends (0, $f8721861c660dd88$ex
|
|
|
1941
2041
|
|
|
1942
2042
|
|
|
1943
2043
|
|
|
2044
|
+
|
|
2045
|
+
|
|
2046
|
+
class $1fbdec5dc9cde599$export$b7be47b40aa877fc extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2047
|
+
constructor(page){
|
|
2048
|
+
super(page);
|
|
2049
|
+
}
|
|
2050
|
+
async expectStartDateToBeDisplayed() {
|
|
2051
|
+
(0, $kKeXs$playwrighttest.expect)(await this.page.locator(".flex-section.column").filter({
|
|
2052
|
+
hasText: "Start Date"
|
|
2053
|
+
}).locator(".task-date-view-content").isVisible()).toBe(true);
|
|
2054
|
+
}
|
|
2055
|
+
async expectEndDateToBeDisplayed() {
|
|
2056
|
+
(0, $kKeXs$playwrighttest.expect)(await this.page.locator(".flex-section.column").filter({
|
|
2057
|
+
hasText: "End Date"
|
|
2058
|
+
}).locator(".task-date-view-content").isVisible()).toBe(true);
|
|
2059
|
+
}
|
|
2060
|
+
}
|
|
2061
|
+
|
|
2062
|
+
|
|
1944
2063
|
class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1945
2064
|
constructor(page){
|
|
1946
2065
|
super(page);
|
|
@@ -1967,7 +2086,8 @@ class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$ex
|
|
|
1967
2086
|
exact: true
|
|
1968
2087
|
});
|
|
1969
2088
|
this.completeButton = this.page.getByRole("button", {
|
|
1970
|
-
name: "Complete"
|
|
2089
|
+
name: "Complete",
|
|
2090
|
+
exact: true
|
|
1971
2091
|
});
|
|
1972
2092
|
}
|
|
1973
2093
|
async openOverviewRail() {
|
|
@@ -1978,6 +2098,7 @@ class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$ex
|
|
|
1978
2098
|
}
|
|
1979
2099
|
async openSchedulingRail() {
|
|
1980
2100
|
await this.openRail("Scheduling");
|
|
2101
|
+
return new (0, $1fbdec5dc9cde599$export$b7be47b40aa877fc)(this.page);
|
|
1981
2102
|
}
|
|
1982
2103
|
async openConditionRail() {
|
|
1983
2104
|
await this.openRail("Conditions");
|
|
@@ -2021,10 +2142,10 @@ class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$ex
|
|
|
2021
2142
|
await this.confirm.click();
|
|
2022
2143
|
}
|
|
2023
2144
|
async expectTaskTitle(taskTitle) {
|
|
2024
|
-
(0, $kKeXs$playwrighttest.expect)(
|
|
2145
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task-drawer .task-title-input .dot-view-mode-typography")).toContainText(taskTitle);
|
|
2025
2146
|
}
|
|
2026
2147
|
async expectTypeToContain(taskType) {
|
|
2027
|
-
(0, $kKeXs$playwrighttest.expect)(
|
|
2148
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task-drawer .task-type")).toContainText(taskType);
|
|
2028
2149
|
}
|
|
2029
2150
|
async clickExpand() {
|
|
2030
2151
|
await this.page.getByRole("tooltip", {
|
|
@@ -2115,6 +2236,10 @@ class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$ex
|
|
|
2115
2236
|
async expectStartDateAndEndDateToBeDisplayed() {
|
|
2116
2237
|
await (0, $kKeXs$playwrighttest.expect)(this.page.getByTestId("month-and-year")).toHaveCount(2);
|
|
2117
2238
|
}
|
|
2239
|
+
async expectPhaseAndTaskTitleToContain(phaseName, taskTitle) {
|
|
2240
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task-header-top-path")).toContainText(phaseName);
|
|
2241
|
+
await this.expectTaskTitle(taskTitle);
|
|
2242
|
+
}
|
|
2118
2243
|
}
|
|
2119
2244
|
|
|
2120
2245
|
|
|
@@ -2508,6 +2633,7 @@ class $2c89ba54932fbba8$export$f8f26dd395d7e1bd extends (0, $f8721861c660dd88$ex
|
|
|
2508
2633
|
|
|
2509
2634
|
|
|
2510
2635
|
class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2636
|
+
defaultTimeout = 10000;
|
|
2511
2637
|
constructor(page){
|
|
2512
2638
|
super(page);
|
|
2513
2639
|
this.createPage = new (0, $3d3f3946c54f5897$export$34addcca3f0ae43f)(page);
|
|
@@ -2516,7 +2642,7 @@ class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$exp
|
|
|
2516
2642
|
this.teamsPermissions = new (0, $d330a7d6f7926d53$export$3bc3e140e0dcb075)(page);
|
|
2517
2643
|
this.phaseTitle = this.page.locator(".phase .phase-title");
|
|
2518
2644
|
this.properties = new (0, $8681d8a3f46f87b7$export$d1077068a9cc9f17)(page);
|
|
2519
|
-
this.variables = new (0, $
|
|
2645
|
+
this.variables = new (0, $59543fc69900e8db$export$f8e64fcf447db2bf)(page);
|
|
2520
2646
|
this.util = new (0, $2c89ba54932fbba8$export$f8f26dd395d7e1bd)(page);
|
|
2521
2647
|
}
|
|
2522
2648
|
async openTriggers() {
|
|
@@ -2555,74 +2681,78 @@ class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$exp
|
|
|
2555
2681
|
name: "Start"
|
|
2556
2682
|
}).click();
|
|
2557
2683
|
}
|
|
2558
|
-
async waitForCompletion(timeout) {
|
|
2684
|
+
async waitForCompletion(timeout = this.defaultTimeout) {
|
|
2559
2685
|
await this.page.locator("#release.completed").waitFor({
|
|
2560
2686
|
timeout: timeout
|
|
2561
2687
|
});
|
|
2562
2688
|
}
|
|
2563
|
-
async waitForTaskCompleted(taskTitle) {
|
|
2689
|
+
async waitForTaskCompleted(taskTitle, timeout = this.defaultTimeout) {
|
|
2564
2690
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.completed").getByText(taskTitle, {
|
|
2565
2691
|
exact: true
|
|
2566
2692
|
})).toBeVisible({
|
|
2567
|
-
timeout:
|
|
2693
|
+
timeout: timeout
|
|
2568
2694
|
});
|
|
2569
2695
|
}
|
|
2570
|
-
async waitForTaskCompletedInAdvance(taskTitle) {
|
|
2696
|
+
async waitForTaskCompletedInAdvance(taskTitle, timeout = this.defaultTimeout) {
|
|
2571
2697
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.completed_in_advance").getByText(taskTitle, {
|
|
2572
2698
|
exact: true
|
|
2573
2699
|
})).toBeVisible({
|
|
2574
|
-
timeout:
|
|
2700
|
+
timeout: timeout
|
|
2575
2701
|
});
|
|
2576
2702
|
}
|
|
2577
|
-
async waitForTaskInProgress(taskTitle) {
|
|
2703
|
+
async waitForTaskInProgress(taskTitle, timeout = this.defaultTimeout) {
|
|
2578
2704
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.in_progress").getByText(taskTitle, {
|
|
2579
2705
|
exact: true
|
|
2580
|
-
})).toBeVisible(
|
|
2706
|
+
})).toBeVisible({
|
|
2707
|
+
timeout: timeout
|
|
2708
|
+
});
|
|
2581
2709
|
}
|
|
2582
|
-
async waitForTaskFailed(taskTitle) {
|
|
2710
|
+
async waitForTaskFailed(taskTitle, timeout = this.defaultTimeout) {
|
|
2583
2711
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.failed").getByText(taskTitle, {
|
|
2584
2712
|
exact: true
|
|
2585
2713
|
})).toBeVisible({
|
|
2586
|
-
timeout:
|
|
2714
|
+
timeout: timeout
|
|
2587
2715
|
});
|
|
2588
2716
|
}
|
|
2589
|
-
async waitForTaskSkipped(taskTitle) {
|
|
2717
|
+
async waitForTaskSkipped(taskTitle, timeout = this.defaultTimeout) {
|
|
2590
2718
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.skipped").getByText(taskTitle, {
|
|
2591
2719
|
exact: true
|
|
2592
2720
|
})).toBeVisible({
|
|
2593
|
-
timeout:
|
|
2721
|
+
timeout: timeout
|
|
2594
2722
|
});
|
|
2595
2723
|
}
|
|
2596
|
-
async waitForTaskSkippedInAdvance(taskTitle) {
|
|
2724
|
+
async waitForTaskSkippedInAdvance(taskTitle, timeout = this.defaultTimeout) {
|
|
2597
2725
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.skipped_in_advance").getByText(taskTitle, {
|
|
2598
2726
|
exact: true
|
|
2599
2727
|
})).toBeVisible({
|
|
2600
|
-
timeout:
|
|
2728
|
+
timeout: timeout
|
|
2601
2729
|
});
|
|
2602
2730
|
}
|
|
2603
|
-
async waitForTaskAborted(taskTitle) {
|
|
2731
|
+
async waitForTaskAborted(taskTitle, timeout = this.defaultTimeout) {
|
|
2604
2732
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.aborted").getByText(taskTitle, {
|
|
2605
2733
|
exact: true
|
|
2606
2734
|
})).toBeVisible({
|
|
2607
|
-
timeout:
|
|
2735
|
+
timeout: timeout
|
|
2608
2736
|
});
|
|
2609
2737
|
}
|
|
2610
|
-
async waitForStatusLine(statusLine) {
|
|
2738
|
+
async waitForStatusLine(statusLine, timeout = this.defaultTimeout) {
|
|
2611
2739
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task .status-line").getByText(statusLine, {
|
|
2612
2740
|
exact: true
|
|
2613
2741
|
})).toBeVisible({
|
|
2614
|
-
timeout:
|
|
2742
|
+
timeout: timeout
|
|
2615
2743
|
});
|
|
2616
2744
|
}
|
|
2617
|
-
async waitForTaskStarted(taskTitle) {
|
|
2745
|
+
async waitForTaskStarted(taskTitle, timeout = this.defaultTimeout) {
|
|
2618
2746
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.in_progress").getByTitle(taskTitle, {
|
|
2619
2747
|
exact: true
|
|
2620
2748
|
})).toBeVisible({
|
|
2621
|
-
timeout:
|
|
2749
|
+
timeout: timeout
|
|
2622
2750
|
});
|
|
2623
2751
|
}
|
|
2624
|
-
async waitForTaskPlanned(title) {
|
|
2625
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`.task:has-text('${title}').planned`)).toBeVisible(
|
|
2752
|
+
async waitForTaskPlanned(title, timeout = this.defaultTimeout) {
|
|
2753
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`.task:has-text('${title}').planned`)).toBeVisible({
|
|
2754
|
+
timeout: timeout
|
|
2755
|
+
});
|
|
2626
2756
|
}
|
|
2627
2757
|
async expectTaskCompletedInAdvance(taskTitle) {
|
|
2628
2758
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#release-content .completed_in_advance .task-title").filter({
|
|
@@ -2835,10 +2965,9 @@ class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$exp
|
|
|
2835
2965
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`.task`).filter({
|
|
2836
2966
|
hasText: title
|
|
2837
2967
|
}).locator(`.task-infos .failure-count.count-warning`)).toBeVisible();
|
|
2838
|
-
|
|
2968
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`.task`).filter({
|
|
2839
2969
|
hasText: title
|
|
2840
|
-
}).locator(`.task-infos .failure-count.count-warning`).
|
|
2841
|
-
(0, $kKeXs$playwrighttest.expect)(count).toContain(failCount.toString());
|
|
2970
|
+
}).locator(`.task-infos .failure-count.count-warning`)).toContainText(failCount.toString());
|
|
2842
2971
|
}
|
|
2843
2972
|
async expectTaskToHaveBeenDelayed(title) {
|
|
2844
2973
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`.task`).filter({
|
|
@@ -2848,6 +2977,10 @@ class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$exp
|
|
|
2848
2977
|
async expectOnePhaseDisplayed() {
|
|
2849
2978
|
(0, $kKeXs$playwrighttest.expect)(await this.page.locator(".phase-content").count()).toBe(1);
|
|
2850
2979
|
}
|
|
2980
|
+
async restartPhases() {
|
|
2981
|
+
await this.page.getByTestId("restart-btn").click();
|
|
2982
|
+
return new $9b9a8c3da392d020$var$RestartPhaseModel(this.page);
|
|
2983
|
+
}
|
|
2851
2984
|
}
|
|
2852
2985
|
class $9b9a8c3da392d020$var$Phase extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2853
2986
|
constructor(page, phaseName){
|
|
@@ -3017,6 +3150,35 @@ class $9b9a8c3da392d020$var$Phase extends (0, $f8721861c660dd88$export$2b65d1d97
|
|
|
3017
3150
|
hasText: phaseName
|
|
3018
3151
|
})).not.toBeVisible();
|
|
3019
3152
|
}
|
|
3153
|
+
async expectCompletedPhase() {
|
|
3154
|
+
await (0, $kKeXs$playwrighttest.expect)(this.phaseLocator.locator("a")).toContainText("View all completed phases");
|
|
3155
|
+
}
|
|
3156
|
+
}
|
|
3157
|
+
class $9b9a8c3da392d020$var$RestartPhaseModel extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
3158
|
+
constructor(page){
|
|
3159
|
+
super(page);
|
|
3160
|
+
this.continueBtn = this.page.getByRole("button", {
|
|
3161
|
+
name: "Continue"
|
|
3162
|
+
});
|
|
3163
|
+
}
|
|
3164
|
+
async fromPhase(phase) {
|
|
3165
|
+
await this.page.locator('.modal select[data-test="fromPhase"]').selectOption(phase);
|
|
3166
|
+
}
|
|
3167
|
+
async fromTask(task) {
|
|
3168
|
+
await this.page.locator('.modal select[data-test="fromTask"]').selectOption(task);
|
|
3169
|
+
}
|
|
3170
|
+
async expectNoTaskSelectorVisible() {
|
|
3171
|
+
(0, $kKeXs$playwrighttest.expect)(await this.page.locator('.modal select[data-test="fromTask"]').isVisible()).toHaveLength(0);
|
|
3172
|
+
}
|
|
3173
|
+
async continue() {
|
|
3174
|
+
await this.page.locator(".modal .continue").click();
|
|
3175
|
+
}
|
|
3176
|
+
async resumeNow() {
|
|
3177
|
+
await this.page.locator(".modal .resume-now").click();
|
|
3178
|
+
}
|
|
3179
|
+
async resumeLater() {
|
|
3180
|
+
await this.page.locator(".modal .resume-later").click();
|
|
3181
|
+
}
|
|
3020
3182
|
}
|
|
3021
3183
|
|
|
3022
3184
|
|
|
@@ -3494,6 +3656,7 @@ class $04ff53be95b7a0a4$export$32284f8bcf0bc407 extends (0, $f8721861c660dd88$ex
|
|
|
3494
3656
|
|
|
3495
3657
|
|
|
3496
3658
|
|
|
3659
|
+
|
|
3497
3660
|
class $9058d40a81bdb1f5$export$b453f08936c58edb extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
3498
3661
|
constructor(page){
|
|
3499
3662
|
super(page);
|
|
@@ -3505,6 +3668,7 @@ class $9058d40a81bdb1f5$export$b453f08936c58edb extends (0, $f8721861c660dd88$ex
|
|
|
3505
3668
|
this.notificationPage = new (0, $04ff53be95b7a0a4$export$32284f8bcf0bc407)(page);
|
|
3506
3669
|
this.patternPage = new (0, $ceb2e9e08e1837c2$export$9b9454a7f137e99b)(page);
|
|
3507
3670
|
this.util = new (0, $2c89ba54932fbba8$export$f8f26dd395d7e1bd)(page);
|
|
3671
|
+
this.variables = new (0, $59543fc69900e8db$export$f8e64fcf447db2bf)(page);
|
|
3508
3672
|
}
|
|
3509
3673
|
async openFoldersPage() {
|
|
3510
3674
|
await this.page.goto("./#/folders");
|
|
@@ -3646,6 +3810,22 @@ class $9058d40a81bdb1f5$export$b453f08936c58edb extends (0, $f8721861c660dd88$ex
|
|
|
3646
3810
|
await this.util.openSideNavMenu("Templates");
|
|
3647
3811
|
await (0, $kKeXs$playwrighttest.expect)(this.page.getByLabel("breadcrumb").getByText("Templates")).toBeVisible();
|
|
3648
3812
|
}
|
|
3813
|
+
async openRelease() {
|
|
3814
|
+
await this.util.openSideNavMenu("Releases");
|
|
3815
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByLabel("breadcrumb").getByText("Releases")).toBeVisible();
|
|
3816
|
+
}
|
|
3817
|
+
async expectReleaseStarted(releaseName) {
|
|
3818
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release").filter({
|
|
3819
|
+
hasText: releaseName
|
|
3820
|
+
}).locator(".release-status").filter({
|
|
3821
|
+
hasText: "In progress"
|
|
3822
|
+
})).toBeVisible();
|
|
3823
|
+
}
|
|
3824
|
+
async openVariables() {
|
|
3825
|
+
await this.util.openSideNavMenu("Variables");
|
|
3826
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByLabel("breadcrumb").getByText("Variables")).toBeVisible();
|
|
3827
|
+
return this.variables;
|
|
3828
|
+
}
|
|
3649
3829
|
}
|
|
3650
3830
|
|
|
3651
3831
|
|
|
@@ -3952,7 +4132,7 @@ class $00fc48341ebf7de4$export$2fb4351c41ce6e7a extends (0, $f8721861c660dd88$ex
|
|
|
3952
4132
|
async verifyProductAnnouncements() {
|
|
3953
4133
|
await (0, $kKeXs$playwrighttest.expect)(this.announcementIcon).toBeVisible();
|
|
3954
4134
|
await this.announcementIcon.click();
|
|
3955
|
-
(0, $kKeXs$playwrighttest.expect)(
|
|
4135
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#pendo-guide-container")).toContainText("Product updates");
|
|
3956
4136
|
}
|
|
3957
4137
|
async clickHelpIcon() {
|
|
3958
4138
|
await this.page.getByTestId("right-side-nav").getByRole("button", {
|
|
@@ -4790,6 +4970,327 @@ class $3fad6a9449b6416f$export$1a0994e9c202d529 extends (0, $f8721861c660dd88$ex
|
|
|
4790
4970
|
|
|
4791
4971
|
|
|
4792
4972
|
|
|
4973
|
+
class $fd4eef3ad2b2e612$export$a87f0ae8695e74be extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
4974
|
+
constructor(page){
|
|
4975
|
+
super(page);
|
|
4976
|
+
this.addListValue = this.page.locator(".variable-selector .xl-components-input-full input");
|
|
4977
|
+
this.addVariableValue = this.page.locator(".variable-value .xl-components-input-full input");
|
|
4978
|
+
this.dateUtil = new (0, $880df57ffbf6e614$export$9b575f14aa5e09a1)(page);
|
|
4979
|
+
this.listAddButton = this.page.getByRole("button", {
|
|
4980
|
+
name: "Add"
|
|
4981
|
+
});
|
|
4982
|
+
}
|
|
4983
|
+
async openVariable(variableKey) {
|
|
4984
|
+
await this.page.locator(`.variables-list .variable`).getByText(variableKey).click();
|
|
4985
|
+
return new $fd4eef3ad2b2e612$var$ReleaseVariableModal(this.page);
|
|
4986
|
+
}
|
|
4987
|
+
async addNewVariable(variableName, labelname, description) {
|
|
4988
|
+
await this.page.locator("#action-toolbar").getByTestId("dot-button").click();
|
|
4989
|
+
await this.page.fill(`[name="fieldKey"]`, variableName);
|
|
4990
|
+
await this.page.locator(".variable-label input").fill(labelname);
|
|
4991
|
+
if (description) await this.page.locator(".variable-description input").fill(description);
|
|
4992
|
+
}
|
|
4993
|
+
async selectVariableTextType(valuename) {
|
|
4994
|
+
await this.page.getByRole("combobox").selectOption("StringVariable");
|
|
4995
|
+
await this.page.locator(".variable-value").type(valuename);
|
|
4996
|
+
}
|
|
4997
|
+
async selectVariableListboxType(possiblevalue, defaultValue, required) {
|
|
4998
|
+
await this.page.getByRole("combobox").selectOption("DropDownListBox");
|
|
4999
|
+
if (possiblevalue instanceof Array) for (const value of possiblevalue){
|
|
5000
|
+
await this.addListValue.fill(value);
|
|
5001
|
+
await this.listAddButton.click();
|
|
5002
|
+
}
|
|
5003
|
+
else {
|
|
5004
|
+
await this.addListValue.fill(possiblevalue);
|
|
5005
|
+
await this.listAddButton.click();
|
|
5006
|
+
}
|
|
5007
|
+
await this.page.locator(".variable-value select").type(defaultValue);
|
|
5008
|
+
if (required) await this.page.getByRole("checkbox").check();
|
|
5009
|
+
else await this.page.getByRole("checkbox").uncheck();
|
|
5010
|
+
}
|
|
5011
|
+
async selectVariablePasswordType(possiblevalue) {
|
|
5012
|
+
await this.page.getByRole("combobox").selectOption("PasswordStringVariable");
|
|
5013
|
+
await this.page.locator('input[type="password"]').type(possiblevalue);
|
|
5014
|
+
}
|
|
5015
|
+
async selectVariableCheckboxType() {
|
|
5016
|
+
await this.page.getByRole("combobox").selectOption("BooleanVariable");
|
|
5017
|
+
await this.page.getByRole("checkbox").check();
|
|
5018
|
+
}
|
|
5019
|
+
async selectVariableNumberType(possiblevalue) {
|
|
5020
|
+
await this.page.getByRole("combobox").selectOption("IntegerVariable");
|
|
5021
|
+
await this.page.locator('input[ng-model="var.value"]').fill(possiblevalue);
|
|
5022
|
+
}
|
|
5023
|
+
async selectVariableMultiListType(possiblevalue1, possiblevalue2) {
|
|
5024
|
+
await this.page.getByRole("combobox").selectOption("MultiSelectListBox");
|
|
5025
|
+
await this.addListValue.fill(possiblevalue1);
|
|
5026
|
+
await this.listAddButton.click();
|
|
5027
|
+
await this.addListValue.fill(possiblevalue2);
|
|
5028
|
+
await this.listAddButton.click();
|
|
5029
|
+
await this.page.locator(".react-tagsinput").click();
|
|
5030
|
+
await this.page.getByText("Select all", {
|
|
5031
|
+
exact: true
|
|
5032
|
+
}).click();
|
|
5033
|
+
}
|
|
5034
|
+
async addVariableDate() {
|
|
5035
|
+
await this.page.getByRole("combobox").selectOption("DateVariable");
|
|
5036
|
+
await this.page.getByText("Select date").click();
|
|
5037
|
+
}
|
|
5038
|
+
async setDate(date, monthYear) {
|
|
5039
|
+
await this.dateUtil.setDate(date, monthYear);
|
|
5040
|
+
}
|
|
5041
|
+
async addVariableKeyValueMap(keys1, values1) {
|
|
5042
|
+
await this.page.getByRole("combobox").selectOption("MapStringStringVariable");
|
|
5043
|
+
await this.page.getByPlaceholder("key").fill(keys1);
|
|
5044
|
+
await this.page.getByPlaceholder("Value").fill(values1);
|
|
5045
|
+
await this.listAddButton.click();
|
|
5046
|
+
await this.page.locator(".xl-map-string-string-div-buttons .search-icon").click();
|
|
5047
|
+
await this.page.getByRole("row", {
|
|
5048
|
+
name: "Search"
|
|
5049
|
+
}).getByRole("textbox").fill(keys1);
|
|
5050
|
+
const detail = await this.page.locator("table.table-condensed span").allInnerTexts();
|
|
5051
|
+
(0, $kKeXs$playwrighttest.expect)(detail[0]).toEqual(keys1);
|
|
5052
|
+
(0, $kKeXs$playwrighttest.expect)(detail[1]).toEqual(values1);
|
|
5053
|
+
}
|
|
5054
|
+
async addVariableSet(possiblevalue1) {
|
|
5055
|
+
await this.page.getByRole("combobox").selectOption("SetStringVariable");
|
|
5056
|
+
await this.page.locator(".dip-input input").fill(possiblevalue1);
|
|
5057
|
+
await this.listAddButton.click();
|
|
5058
|
+
}
|
|
5059
|
+
async submitTheVariable() {
|
|
5060
|
+
const createButton = this.page.locator(".modal-footer .save");
|
|
5061
|
+
await (0, $kKeXs$playwrighttest.expect)(createButton).toBeEnabled();
|
|
5062
|
+
await createButton.scrollIntoViewIfNeeded();
|
|
5063
|
+
await createButton.click();
|
|
5064
|
+
// Expect is needed here to avoid flackiness on clicking create button
|
|
5065
|
+
await (0, $kKeXs$playwrighttest.expect)(createButton).not.toBeVisible();
|
|
5066
|
+
}
|
|
5067
|
+
async expectVariableWithNameValueAndType(name, value, type) {
|
|
5068
|
+
const rowLocator = await this.page.locator(".variable .data-row").allTextContents();
|
|
5069
|
+
(0, $kKeXs$playwrighttest.expect)(rowLocator.toString()).toContain(name);
|
|
5070
|
+
(0, $kKeXs$playwrighttest.expect)(rowLocator.toString()).toContain(value);
|
|
5071
|
+
(0, $kKeXs$playwrighttest.expect)(rowLocator.toString()).toContain(type);
|
|
5072
|
+
}
|
|
5073
|
+
async clickEditVariable(variableName) {
|
|
5074
|
+
await this.page.locator("[id='variables-filter']").fill(variableName);
|
|
5075
|
+
await this.page.getByText("Edit").first().click();
|
|
5076
|
+
return new $fd4eef3ad2b2e612$var$ReleaseVariableModal(this.page);
|
|
5077
|
+
}
|
|
5078
|
+
async clickDeleteVariable(variableName) {
|
|
5079
|
+
await this.page.locator("[id='variables-filter']").fill(variableName);
|
|
5080
|
+
await this.page.locator(".action .delete-icon").first().click();
|
|
5081
|
+
return new $fd4eef3ad2b2e612$var$DeleteVariableModel(this.page);
|
|
5082
|
+
}
|
|
5083
|
+
async expectVariablesCountToBe(count) {
|
|
5084
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".variable .data-row")).toHaveCount(count);
|
|
5085
|
+
}
|
|
5086
|
+
async expectVariableNotPresent(variableName) {
|
|
5087
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".variable").filter({
|
|
5088
|
+
hasText: variableName
|
|
5089
|
+
})).not.toBeVisible();
|
|
5090
|
+
}
|
|
5091
|
+
async clearSearch() {
|
|
5092
|
+
await this.page.locator("[id='variables-filter']").clear();
|
|
5093
|
+
}
|
|
5094
|
+
async switchPossibleValuesToVariable(variableName) {
|
|
5095
|
+
await this.page.locator(".variable-toggle button").click();
|
|
5096
|
+
await this.page.locator(".ui-autocomplete-input").fill(variableName);
|
|
5097
|
+
await this.page.locator(".ui-menu-item-wrapper").filter({
|
|
5098
|
+
hasText: `${variableName}`
|
|
5099
|
+
}).click();
|
|
5100
|
+
}
|
|
5101
|
+
async selectVariableListboxTypeWithVariable(variableName, defaultValue, required) {
|
|
5102
|
+
await this.page.getByRole("combobox").selectOption("DropDownListBox");
|
|
5103
|
+
await this.page.locator(".variable-toggle button").click();
|
|
5104
|
+
await this.page.locator(".ui-autocomplete-input").fill(variableName);
|
|
5105
|
+
await this.page.locator(".ui-menu-item-wrapper").filter({
|
|
5106
|
+
hasText: `${variableName}`
|
|
5107
|
+
}).click();
|
|
5108
|
+
await this.page.locator(".variable-value select").type(defaultValue);
|
|
5109
|
+
if (required) await this.page.getByRole("checkbox").check();
|
|
5110
|
+
else await this.page.getByRole("checkbox").uncheck();
|
|
5111
|
+
}
|
|
5112
|
+
}
|
|
5113
|
+
class $fd4eef3ad2b2e612$var$ReleaseVariableModal extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
5114
|
+
constructor(page){
|
|
5115
|
+
super(page);
|
|
5116
|
+
this.dateUtil = new (0, $880df57ffbf6e614$export$9b575f14aa5e09a1)(page);
|
|
5117
|
+
}
|
|
5118
|
+
async expectValue(locators, expectFn) {
|
|
5119
|
+
const [index, locator] = await (0, $ef0df8ad8a777ce6$export$a0f926f04148e5d2)(locators);
|
|
5120
|
+
expectFn[index](locator);
|
|
5121
|
+
}
|
|
5122
|
+
async expectValueToBe(value) {
|
|
5123
|
+
await this.expectValue([
|
|
5124
|
+
this.page.locator("#modal .variable-value input"),
|
|
5125
|
+
this.page.locator("#modal .variable-value .field-readonly"),
|
|
5126
|
+
this.page.locator("#modal .variable-value .xl-map-string-string"),
|
|
5127
|
+
this.page.locator("#modal .variable-value .xl-list-display-mode .text-container")
|
|
5128
|
+
], [
|
|
5129
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveValue(value),
|
|
5130
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value),
|
|
5131
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value),
|
|
5132
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value)
|
|
5133
|
+
]);
|
|
5134
|
+
}
|
|
5135
|
+
async expectValueToContain(value) {
|
|
5136
|
+
await this.expectValue([
|
|
5137
|
+
this.page.locator("#modal .variable-value input"),
|
|
5138
|
+
this.page.locator("#modal .variable-value .field-readonly"),
|
|
5139
|
+
this.page.locator("#modal .variable-value .xl-map-string-string"),
|
|
5140
|
+
this.page.locator("#modal .variable-value .xl-list-display-mode")
|
|
5141
|
+
], [
|
|
5142
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l.inputValue()).toContain(value),
|
|
5143
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value),
|
|
5144
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value),
|
|
5145
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value)
|
|
5146
|
+
]);
|
|
5147
|
+
}
|
|
5148
|
+
async close() {
|
|
5149
|
+
await this.page.locator("#modal .modal-header button.close").click();
|
|
5150
|
+
}
|
|
5151
|
+
async expectPossibleValues(possiblevalue) {
|
|
5152
|
+
const listLocator = await this.page.locator(".editor .xl-list-row").allInnerTexts();
|
|
5153
|
+
if (possiblevalue instanceof Array) for (const value of possiblevalue)(0, $kKeXs$playwrighttest.expect)(listLocator).toContain(value);
|
|
5154
|
+
else (0, $kKeXs$playwrighttest.expect)(listLocator).toContain(possiblevalue);
|
|
5155
|
+
}
|
|
5156
|
+
async expectPossibleVariableValues(possiblevariablevalue) {
|
|
5157
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".variable-dropdown input")).toHaveValue(possiblevariablevalue);
|
|
5158
|
+
}
|
|
5159
|
+
async addPossibleValue(value) {
|
|
5160
|
+
if (value instanceof Array) for (const li of value){
|
|
5161
|
+
await this.page.locator(".xl-components-input-full input").fill(li);
|
|
5162
|
+
await this.page.getByRole("button", {
|
|
5163
|
+
name: "Add"
|
|
5164
|
+
}).click();
|
|
5165
|
+
}
|
|
5166
|
+
else {
|
|
5167
|
+
await this.page.locator(".xl-components-input-full input").fill(value);
|
|
5168
|
+
await this.page.getByRole("button", {
|
|
5169
|
+
name: "Add"
|
|
5170
|
+
}).click();
|
|
5171
|
+
}
|
|
5172
|
+
}
|
|
5173
|
+
async selectVariableValue(defaultValue) {
|
|
5174
|
+
await this.page.locator(".variable-value select").selectOption(defaultValue);
|
|
5175
|
+
}
|
|
5176
|
+
async save() {
|
|
5177
|
+
const saveButton = this.page.locator("#modal .modal-footer .save");
|
|
5178
|
+
await saveButton.scrollIntoViewIfNeeded();
|
|
5179
|
+
await saveButton.click({
|
|
5180
|
+
delay: 2000
|
|
5181
|
+
});
|
|
5182
|
+
// Expect is needed here to avoid flackiness on clicking save button on modal window
|
|
5183
|
+
await (0, $kKeXs$playwrighttest.expect)(saveButton).not.toBeVisible();
|
|
5184
|
+
}
|
|
5185
|
+
async createPossibleValuesVariable(variableName) {
|
|
5186
|
+
await this.page.locator(".variable-toggle button").click();
|
|
5187
|
+
await this.page.locator(".ui-autocomplete-input").fill(variableName);
|
|
5188
|
+
await this.page.locator(".ui-menu-item-wrapper").filter({
|
|
5189
|
+
hasText: `${variableName}`
|
|
5190
|
+
}).click();
|
|
5191
|
+
}
|
|
5192
|
+
async expectVariableValueToBe(value) {
|
|
5193
|
+
(0, $kKeXs$playwrighttest.expect)(await this.page.locator('.variable-value select option[selected="selected"]').textContent()).toBe(value);
|
|
5194
|
+
}
|
|
5195
|
+
async expectNoVariablesInList() {
|
|
5196
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByText("No variables defined.")).toBeVisible();
|
|
5197
|
+
}
|
|
5198
|
+
async expectNameInput(value) {
|
|
5199
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`#modal .variable-name input`)).toHaveValue(value);
|
|
5200
|
+
}
|
|
5201
|
+
async expectLabel(value) {
|
|
5202
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#modal .variable-label input")).toHaveValue(value);
|
|
5203
|
+
}
|
|
5204
|
+
async expectRequired(value) {
|
|
5205
|
+
if (value == true) await (0, $kKeXs$playwrighttest.expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).toBeChecked();
|
|
5206
|
+
else await (0, $kKeXs$playwrighttest.expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).not.toBeChecked();
|
|
5207
|
+
}
|
|
5208
|
+
async setDescription(description) {
|
|
5209
|
+
await this.page.locator(".variable-description input").click();
|
|
5210
|
+
await this.page.locator(".variable-description input").clear();
|
|
5211
|
+
await this.page.locator(".variable-description input").fill(description);
|
|
5212
|
+
}
|
|
5213
|
+
async setLabel(labelValue) {
|
|
5214
|
+
await this.page.locator(".variable-label input").fill(labelValue);
|
|
5215
|
+
}
|
|
5216
|
+
async setDate(date, monthYear) {
|
|
5217
|
+
await this.page.locator("#modal .date").click();
|
|
5218
|
+
await this.dateUtil.setDate(date, monthYear);
|
|
5219
|
+
}
|
|
5220
|
+
async setValue(value) {
|
|
5221
|
+
await this.page.locator(".variable-value input").fill(value);
|
|
5222
|
+
}
|
|
5223
|
+
}
|
|
5224
|
+
class $fd4eef3ad2b2e612$var$DeleteVariableModel extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
5225
|
+
constructor(page){
|
|
5226
|
+
super(page);
|
|
5227
|
+
this.model = new $fd4eef3ad2b2e612$var$ReleaseVariableModal(page);
|
|
5228
|
+
this.dateUtil = new (0, $880df57ffbf6e614$export$9b575f14aa5e09a1)(page);
|
|
5229
|
+
}
|
|
5230
|
+
async deleteVariable() {
|
|
5231
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByRole("heading", {
|
|
5232
|
+
name: "Replace and delete"
|
|
5233
|
+
})).toBeVisible();
|
|
5234
|
+
await this.page.getByRole("button", {
|
|
5235
|
+
name: "Delete"
|
|
5236
|
+
}).click();
|
|
5237
|
+
}
|
|
5238
|
+
async replaceItWithVariable(variable) {
|
|
5239
|
+
await this.model.createPossibleValuesVariable(variable);
|
|
5240
|
+
}
|
|
5241
|
+
async replaceItwithValue(value) {
|
|
5242
|
+
await this.page.locator(".display").click();
|
|
5243
|
+
await this.page.getByLabel("*").fill(value);
|
|
5244
|
+
}
|
|
5245
|
+
async clickReplaceAndDelete() {
|
|
5246
|
+
await this.page.getByRole("button", {
|
|
5247
|
+
name: "Replace and delete"
|
|
5248
|
+
}).click();
|
|
5249
|
+
}
|
|
5250
|
+
async addValue(value) {
|
|
5251
|
+
await this.page.locator(".xl-components-input-full input").fill(value);
|
|
5252
|
+
await this.page.getByRole("button", {
|
|
5253
|
+
name: "Add"
|
|
5254
|
+
}).click();
|
|
5255
|
+
}
|
|
5256
|
+
async remove(value) {
|
|
5257
|
+
await this.page.locator("li").filter({
|
|
5258
|
+
hasText: value
|
|
5259
|
+
}).locator("i.close-icon").click();
|
|
5260
|
+
}
|
|
5261
|
+
async expectReplacementPromptDisplayed() {
|
|
5262
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByRole("heading", {
|
|
5263
|
+
name: "Replace and delete"
|
|
5264
|
+
})).toBeVisible();
|
|
5265
|
+
}
|
|
5266
|
+
async close() {
|
|
5267
|
+
await this.page.locator("#modal .modal-header button.close").click();
|
|
5268
|
+
}
|
|
5269
|
+
async removeItemOnSet(value) {
|
|
5270
|
+
await this.page.locator("tr").filter({
|
|
5271
|
+
hasText: value
|
|
5272
|
+
}).locator("i.close-icon").click();
|
|
5273
|
+
}
|
|
5274
|
+
async addValueForSet(key, value) {
|
|
5275
|
+
await this.page.locator(".input-key").fill(key);
|
|
5276
|
+
await this.page.locator(".input-value").fill(value);
|
|
5277
|
+
}
|
|
5278
|
+
async replaceWithIntegerValue(value) {
|
|
5279
|
+
await this.page.locator(".editable").fill(value);
|
|
5280
|
+
}
|
|
5281
|
+
async replaceForBooleanValue() {
|
|
5282
|
+
await this.page.locator(".editor input").click();
|
|
5283
|
+
}
|
|
5284
|
+
async deleteBySettingDate(date, monthYear) {
|
|
5285
|
+
await this.page.locator("#modal .date").click();
|
|
5286
|
+
await this.dateUtil.setDate(date, monthYear);
|
|
5287
|
+
}
|
|
5288
|
+
}
|
|
5289
|
+
|
|
5290
|
+
|
|
5291
|
+
|
|
5292
|
+
|
|
5293
|
+
|
|
4793
5294
|
class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
4794
5295
|
constructor(page){
|
|
4795
5296
|
super(page);
|
|
@@ -4800,6 +5301,17 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $f8721861c660dd88$ex
|
|
|
4800
5301
|
await this.filterTaskByTitle(taskName);
|
|
4801
5302
|
await this.page.getByText(taskName).first().click();
|
|
4802
5303
|
}
|
|
5304
|
+
async complete(taskName, comment) {
|
|
5305
|
+
await this.page.locator(`.row.task-inner`, {
|
|
5306
|
+
hasText: taskName
|
|
5307
|
+
}).locator("span.complete").click();
|
|
5308
|
+
await this.commentBox.click();
|
|
5309
|
+
await this.commentBox.fill(comment);
|
|
5310
|
+
await this.page.getByRole("button", {
|
|
5311
|
+
name: "Complete",
|
|
5312
|
+
exact: true
|
|
5313
|
+
}).click();
|
|
5314
|
+
}
|
|
4803
5315
|
async skip(taskName, comment) {
|
|
4804
5316
|
await this.page.locator(`.row.task-inner`, {
|
|
4805
5317
|
hasText: taskName
|
|
@@ -4977,7 +5489,7 @@ class $ed2d4739e27d43c1$export$60c3bfa6385e2a10 extends (0, $f8721861c660dd88$ex
|
|
|
4977
5489
|
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`.task-line:has-text("${title}") >> text="${user}"`).first()).toHaveCount(1);
|
|
4978
5490
|
}
|
|
4979
5491
|
async expectTaskTitle(taskTitle) {
|
|
4980
|
-
(0, $kKeXs$playwrighttest.expect)(
|
|
5492
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#tasks0")).toContainText(taskTitle);
|
|
4981
5493
|
}
|
|
4982
5494
|
async clickOnTasksLabel() {
|
|
4983
5495
|
await this.page.getByLabel("breadcrumb").getByText("Tasks").click();
|
|
@@ -5359,7 +5871,10 @@ class $959d38250779aa22$var$Phase extends (0, $f8721861c660dd88$export$2b65d1d97
|
|
|
5359
5871
|
await this.page.locator(".icon-close").click();
|
|
5360
5872
|
await this.page.locator("#task-title").fill(taskTitle);
|
|
5361
5873
|
await this.page.getByTestId("save-select-task-btn").click();
|
|
5362
|
-
await
|
|
5874
|
+
await this.page.locator("#release-header").click();
|
|
5875
|
+
await (0, $kKeXs$playwrighttest.expect)(this.phaseLocator.locator(".task-title").filter({
|
|
5876
|
+
hasText: taskTitle
|
|
5877
|
+
})).toBeVisible();
|
|
5363
5878
|
}
|
|
5364
5879
|
async getNumberOfTasks() {
|
|
5365
5880
|
return await this.phaseLocator.locator(".task").count();
|
|
@@ -6832,7 +7347,7 @@ const $8977f8672c5de0fa$export$45f0aca2596a2bb3 = function() {
|
|
|
6832
7347
|
processTasks(subTask, task, idx);
|
|
6833
7348
|
});
|
|
6834
7349
|
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.templateVariables, function(variable, idx) {
|
|
6835
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable, getVariableEntity(variable.value, variable.key, task.id, idx));
|
|
7350
|
+
if (variable.value !== undefined) (0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable, getVariableEntity(variable.value, variable.key, task.id, idx));
|
|
6836
7351
|
});
|
|
6837
7352
|
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.attachments, function(attachment, idx) {
|
|
6838
7353
|
attachment.type = ATTACHMENT_TYPE;
|
|
@@ -6903,7 +7418,7 @@ const $8977f8672c5de0fa$export$45f0aca2596a2bb3 = function() {
|
|
|
6903
7418
|
attachment.id = `${release.id}/Attachment${index}`;
|
|
6904
7419
|
});
|
|
6905
7420
|
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(release.variables, function(variable, index) {
|
|
6906
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable, getVariableEntity(variable.value, variable.key, release.id, index));
|
|
7421
|
+
if (variable.value !== undefined) (0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable, getVariableEntity(variable.value, variable.key, release.id, index));
|
|
6907
7422
|
if (variable.valueProvider) (0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable.valueProvider, getValueProviderConfigurationEntity(variable.id));
|
|
6908
7423
|
});
|
|
6909
7424
|
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))((0, (/*@__PURE__*/$parcel$interopDefault($f51969c4a7467fa0$exports)))(release.variableValues), function(keyValue, index) {
|
|
@@ -6953,6 +7468,7 @@ const $6998c6a53a9eb4fa$export$e0969da9b8fb378d = (0, $kKeXs$playwrighttest.test
|
|
|
6953
7468
|
class $6998c6a53a9eb4fa$var$Fixtures {
|
|
6954
7469
|
archivedReleaseIds = [];
|
|
6955
7470
|
releaseIds = [];
|
|
7471
|
+
riskProfiles = [];
|
|
6956
7472
|
triggerIds = [];
|
|
6957
7473
|
configurationIds = [];
|
|
6958
7474
|
globalVariableIds = [];
|
|
@@ -7096,6 +7612,29 @@ class $6998c6a53a9eb4fa$var$Fixtures {
|
|
|
7096
7612
|
variable.showOnReleaseStart = false;
|
|
7097
7613
|
return this.doPost("api/v1/config/Configuration/variables/global", variable);
|
|
7098
7614
|
}
|
|
7615
|
+
addDefaultSmtpServer() {
|
|
7616
|
+
const defaultSmtpServer = [
|
|
7617
|
+
{
|
|
7618
|
+
type: "xlrelease.SmtpServer",
|
|
7619
|
+
id: "Configuration/mail/SmtpServer",
|
|
7620
|
+
host: "localhost",
|
|
7621
|
+
port: "25",
|
|
7622
|
+
fromAddress: "foo@bar.com",
|
|
7623
|
+
authentication: {
|
|
7624
|
+
id: "Configuration/mail/SmtpServer/authentication",
|
|
7625
|
+
type: "xlrelease.NoSmtpAuthentication"
|
|
7626
|
+
}
|
|
7627
|
+
}
|
|
7628
|
+
];
|
|
7629
|
+
return this.doPost("fixtures/", defaultSmtpServer);
|
|
7630
|
+
}
|
|
7631
|
+
riskProfile(riskProfile) {
|
|
7632
|
+
this.riskProfiles.push(riskProfile.id);
|
|
7633
|
+
return this.doPost("fixtures/riskProfiles", riskProfile);
|
|
7634
|
+
}
|
|
7635
|
+
deleteRiskProfile(riskProfileId) {
|
|
7636
|
+
return this.doDelete(`fixtures/riskProfiles/${riskProfileId}`);
|
|
7637
|
+
}
|
|
7099
7638
|
async cleanAll() {
|
|
7100
7639
|
for (const username of this.usernames)await this.deleteUser(username);
|
|
7101
7640
|
for (const userProfile of this.userProfiles)await this.deleteUserProfile(userProfile);
|