@digital-ai/devops-page-object-release 0.0.25 → 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/dist/module.js CHANGED
@@ -30,6 +30,7 @@ class $9626bc9256ce31f7$export$2b65d1d97338f32b {
30
30
  class $05d91a1d3381a287$export$34addcca3f0ae43f extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
31
31
  constructor(page){
32
32
  super(page);
33
+ this.releaseForm = this.page.locator("#release-properties .form-group");
33
34
  }
34
35
  async setName(releaseName) {
35
36
  await this.page.locator("#release-form-title").click();
@@ -76,6 +77,14 @@ class $05d91a1d3381a287$export$34addcca3f0ae43f extends (0, $9626bc9256ce31f7$ex
76
77
  await this.page.locator(`#form-${variableName} .display`).click();
77
78
  await this.page.locator(`input[name="${variableName}"]`).fill(value);
78
79
  }
80
+ async setVariable(variable, value) {
81
+ await this.releaseForm.filter({
82
+ hasText: variable
83
+ }).locator("div[inline-text-editor]").click();
84
+ await this.releaseForm.filter({
85
+ hasText: variable
86
+ }).locator("div[inline-text-editor] input").fill(value);
87
+ }
79
88
  }
80
89
 
81
90
 
@@ -281,7 +290,7 @@ class $71075ce65fcede1d$export$9b575f14aa5e09a1 extends (0, $9626bc9256ce31f7$ex
281
290
  }
282
291
 
283
292
 
284
- class $f48771b486a3eb8f$export$a87f0ae8695e74be extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
293
+ class $dfc4ce40cbd0eb71$export$f8e64fcf447db2bf extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
285
294
  constructor(page){
286
295
  super(page);
287
296
  this.addListValue = this.page.locator(".variable-selector .xl-components-input-full input");
@@ -293,7 +302,7 @@ class $f48771b486a3eb8f$export$a87f0ae8695e74be extends (0, $9626bc9256ce31f7$ex
293
302
  }
294
303
  async openVariable(variableKey) {
295
304
  await this.page.locator(`.variables-list .variable`).getByText(variableKey).click();
296
- return new $f48771b486a3eb8f$var$ReleaseVariableModal(this.page);
305
+ return new $dfc4ce40cbd0eb71$var$VariableModal(this.page);
297
306
  }
298
307
  async addNewVariable(variableName, labelname, description) {
299
308
  await this.page.locator("#action-toolbar").getByTestId("dot-button").click();
@@ -382,14 +391,16 @@ class $f48771b486a3eb8f$export$a87f0ae8695e74be extends (0, $9626bc9256ce31f7$ex
382
391
  (0, $hOLA6$expect)(rowLocator.toString()).toContain(type);
383
392
  }
384
393
  async clickEditVariable(variableName) {
385
- await this.page.locator("[id='variables-filter']").fill(variableName);
386
- await this.page.getByText("Edit").first().click();
387
- return new $f48771b486a3eb8f$var$ReleaseVariableModal(this.page);
394
+ await this.page.locator(".data-row").filter({
395
+ hasText: variableName
396
+ }).getByText("Edit").first().click();
397
+ return new $dfc4ce40cbd0eb71$var$VariableModal(this.page);
388
398
  }
389
399
  async clickDeleteVariable(variableName) {
390
- await this.page.locator("[id='variables-filter']").fill(variableName);
391
- await this.page.locator(".action .delete-icon").first().click();
392
- return new $f48771b486a3eb8f$var$DeleteVariableModel(this.page);
400
+ await this.page.locator(".data-row").filter({
401
+ hasText: variableName
402
+ }).locator(".action .delete-icon").first().click();
403
+ return new $dfc4ce40cbd0eb71$var$DeleteVariableModel(this.page);
393
404
  }
394
405
  async expectVariablesCountToBe(count) {
395
406
  await (0, $hOLA6$expect)(this.page.locator(".variable .data-row")).toHaveCount(count);
@@ -399,7 +410,7 @@ class $f48771b486a3eb8f$export$a87f0ae8695e74be extends (0, $9626bc9256ce31f7$ex
399
410
  hasText: variableName
400
411
  })).not.toBeVisible();
401
412
  }
402
- async clearSearch() {
413
+ async clearReleaseVariableSearch() {
403
414
  await this.page.locator("[id='variables-filter']").clear();
404
415
  }
405
416
  async switchPossibleValuesToVariable(variableName) {
@@ -420,8 +431,14 @@ class $f48771b486a3eb8f$export$a87f0ae8695e74be extends (0, $9626bc9256ce31f7$ex
420
431
  if (required) await this.page.getByRole("checkbox").check();
421
432
  else await this.page.getByRole("checkbox").uncheck();
422
433
  }
434
+ async searchFolderVariable(variableName) {
435
+ await this.page.locator(".searchFilter").fill(variableName);
436
+ }
437
+ async clearFolderVarSearch() {
438
+ await this.page.locator(".searchFilter").clear();
439
+ }
423
440
  }
424
- class $f48771b486a3eb8f$var$ReleaseVariableModal extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
441
+ class $dfc4ce40cbd0eb71$var$VariableModal extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
425
442
  constructor(page){
426
443
  super(page);
427
444
  this.dateUtil = new (0, $71075ce65fcede1d$export$9b575f14aa5e09a1)(page);
@@ -464,8 +481,8 @@ class $f48771b486a3eb8f$var$ReleaseVariableModal extends (0, $9626bc9256ce31f7$e
464
481
  if (possiblevalue instanceof Array) for (const value of possiblevalue)(0, $hOLA6$expect)(listLocator).toContain(value);
465
482
  else (0, $hOLA6$expect)(listLocator).toContain(possiblevalue);
466
483
  }
467
- async expectPossibleVariableValues(possiblevariablevalue) {
468
- await (0, $hOLA6$expect)(this.page.locator(".variable-dropdown input")).toHaveValue(possiblevariablevalue);
484
+ async expectPossibleVariableValues(possibleVariableValue) {
485
+ await (0, $hOLA6$expect)(this.page.locator(".variable-dropdown input")).toHaveValue(possibleVariableValue);
469
486
  }
470
487
  async addPossibleValue(value) {
471
488
  if (value instanceof Array) for (const li of value){
@@ -513,7 +530,7 @@ class $f48771b486a3eb8f$var$ReleaseVariableModal extends (0, $9626bc9256ce31f7$e
513
530
  await (0, $hOLA6$expect)(this.page.locator("#modal .variable-label input")).toHaveValue(value);
514
531
  }
515
532
  async expectRequired(value) {
516
- if (value == true) await (0, $hOLA6$expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).toBeChecked();
533
+ if (value) await (0, $hOLA6$expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).toBeChecked();
517
534
  else await (0, $hOLA6$expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).not.toBeChecked();
518
535
  }
519
536
  async setDescription(description) {
@@ -531,11 +548,17 @@ class $f48771b486a3eb8f$var$ReleaseVariableModal extends (0, $9626bc9256ce31f7$e
531
548
  async setValue(value) {
532
549
  await this.page.locator(".variable-value input").fill(value);
533
550
  }
551
+ async clickMultiline() {
552
+ await this.page.locator("#multiline").click();
553
+ }
554
+ async setValueForMultilinePassword(value) {
555
+ await this.page.locator(".password-textarea").fill(value);
556
+ }
534
557
  }
535
- class $f48771b486a3eb8f$var$DeleteVariableModel extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
558
+ class $dfc4ce40cbd0eb71$var$DeleteVariableModel extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
536
559
  constructor(page){
537
560
  super(page);
538
- this.model = new $f48771b486a3eb8f$var$ReleaseVariableModal(page);
561
+ this.model = new $dfc4ce40cbd0eb71$var$VariableModal(page);
539
562
  this.dateUtil = new (0, $71075ce65fcede1d$export$9b575f14aa5e09a1)(page);
540
563
  }
541
564
  async deleteVariable() {
@@ -738,7 +761,7 @@ class $90bb70a7e909e500$export$519356f6c50361f7 extends (0, $9626bc9256ce31f7$ex
738
761
  }).click();
739
762
  }
740
763
  async setVariable(propertyName, variableName) {
741
- return this.setValueFromCi(propertyName, variableName);
764
+ await this.railLocator.locator(`input[id="${propertyName}"]`).fill(variableName);
742
765
  }
743
766
  async expectValueFromString(propertyName, propertyValue) {
744
767
  return await (0, $hOLA6$expect)(this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`)).toHaveText(propertyValue);
@@ -803,8 +826,7 @@ class $90bb70a7e909e500$export$519356f6c50361f7 extends (0, $9626bc9256ce31f7$ex
803
826
  }
804
827
  async getDependencyCount() {
805
828
  await (0, $hOLA6$expect)(this.railLocator.locator(".gate-task-dependencies")).toBeVisible();
806
- const count = await this.railLocator.locator(".gate-task-dependencies .dependency").count();
807
- return count;
829
+ return await this.railLocator.locator(".gate-task-dependencies .dependency").count();
808
830
  }
809
831
  async addDependency() {
810
832
  await (0, $hOLA6$expect)(this.railLocator.locator(".add-dependency-btn")).toBeVisible();
@@ -847,6 +869,84 @@ class $90bb70a7e909e500$export$519356f6c50361f7 extends (0, $9626bc9256ce31f7$ex
847
869
  }).click();
848
870
  await (0, $hOLA6$expect)(this.page.locator(".phase-link-container").locator(".variable").first()).toHaveText(expectedDescription);
849
871
  }
872
+ async setReleaseTitle(releaseName) {
873
+ await this.page.getByLabel("Release title *").fill(releaseName);
874
+ }
875
+ async setFolder(folderName) {
876
+ await this.page.getByPlaceholder("Select a folder").click();
877
+ await this.page.getByPlaceholder("Search folder...").fill(folderName);
878
+ await this.page.getByRole("button", {
879
+ name: folderName
880
+ }).click();
881
+ }
882
+ async setTemplate(templateName) {
883
+ await this.page.getByLabel("Template").click();
884
+ await this.page.getByLabel("Template").fill(templateName);
885
+ await this.page.getByRole("option", {
886
+ name: templateName
887
+ }).click();
888
+ }
889
+ async clearTemplate() {
890
+ await this.page.locator("#templateId").click();
891
+ await this.page.locator("#templateId").clear();
892
+ }
893
+ async errorMsgVisible(errorMessage) {
894
+ await (0, $hOLA6$expect)(this.page.locator("#dialogTitle")).toContainText(errorMessage);
895
+ }
896
+ async isButtonVisible(buttonName, visible = true) {
897
+ (0, $hOLA6$expect)(await this.page.getByRole("button", {
898
+ name: buttonName
899
+ }).isVisible()).toBe(visible);
900
+ }
901
+ async cancelDialogWindow() {
902
+ await this.page.getByRole("button", {
903
+ name: "cancel"
904
+ }).click();
905
+ }
906
+ async acceptDialogWindow() {
907
+ await this.page.getByRole("button", {
908
+ name: "ok"
909
+ }).click();
910
+ }
911
+ async setRiskProfile(RiskProfile) {
912
+ await this.page.getByLabel("Risk profile").click();
913
+ await this.page.getByLabel("Risk profile").fill(RiskProfile);
914
+ await this.page.getByRole("option", {
915
+ name: RiskProfile
916
+ }).click();
917
+ }
918
+ async expectTemplate(template) {
919
+ const templateName = await this.page.locator("#templateId").getAttribute("value");
920
+ (0, $hOLA6$expect)(templateName).toEqual(template);
921
+ }
922
+ async setAutoCompletePassword(passwordValue) {
923
+ await this.page.getByTestId("password").getByLabel("Click to switch between").click();
924
+ await this.page.locator("#password").fill(passwordValue);
925
+ await this.page.getByRole("option", {
926
+ name: passwordValue
927
+ }).click();
928
+ }
929
+ async setAutoCompleteField(fieldLabel, value) {
930
+ await this.page.getByLabel(fieldLabel).click();
931
+ await this.page.getByLabel(fieldLabel).fill(value);
932
+ await this.page.getByRole("option", {
933
+ name: value
934
+ }).click();
935
+ }
936
+ async setNewAutoCompleteField(fieldLabel, value) {
937
+ await this.page.getByLabel(fieldLabel).click();
938
+ await this.page.getByLabel(fieldLabel).fill(value);
939
+ await this.page.getByTestId("dot-action-item-btn").click();
940
+ }
941
+ async setTextField(fieldID, value) {
942
+ await this.page.locator(`[data-test-id="${fieldID}"]`).nth(1).click();
943
+ await this.page.locator(`input[name='${fieldID}']`).fill(value);
944
+ }
945
+ async abortButtonVisibility(visible = true) {
946
+ (0, $hOLA6$expect)(await this.page.getByRole("button", {
947
+ name: "Abort"
948
+ }).isVisible()).toBe(visible);
949
+ }
850
950
  }
851
951
  class $90bb70a7e909e500$export$fbbf45eff21470e3 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
852
952
  constructor(page){
@@ -1005,6 +1105,25 @@ class $9c357602b6f466e7$export$aa59788fdecae2f2 extends (0, $9626bc9256ce31f7$ex
1005
1105
 
1006
1106
 
1007
1107
 
1108
+
1109
+
1110
+ class $499d3d8c8706756b$export$b7be47b40aa877fc extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
1111
+ constructor(page){
1112
+ super(page);
1113
+ }
1114
+ async expectStartDateToBeDisplayed() {
1115
+ (0, $hOLA6$expect)(await this.page.locator(".flex-section.column").filter({
1116
+ hasText: "Start Date"
1117
+ }).locator(".task-date-view-content").isVisible()).toBe(true);
1118
+ }
1119
+ async expectEndDateToBeDisplayed() {
1120
+ (0, $hOLA6$expect)(await this.page.locator(".flex-section.column").filter({
1121
+ hasText: "End Date"
1122
+ }).locator(".task-date-view-content").isVisible()).toBe(true);
1123
+ }
1124
+ }
1125
+
1126
+
1008
1127
  class $8e39246218b802fc$export$e946776eae644790 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
1009
1128
  constructor(page){
1010
1129
  super(page);
@@ -1031,7 +1150,8 @@ class $8e39246218b802fc$export$e946776eae644790 extends (0, $9626bc9256ce31f7$ex
1031
1150
  exact: true
1032
1151
  });
1033
1152
  this.completeButton = this.page.getByRole("button", {
1034
- name: "Complete"
1153
+ name: "Complete",
1154
+ exact: true
1035
1155
  });
1036
1156
  }
1037
1157
  async openOverviewRail() {
@@ -1042,6 +1162,7 @@ class $8e39246218b802fc$export$e946776eae644790 extends (0, $9626bc9256ce31f7$ex
1042
1162
  }
1043
1163
  async openSchedulingRail() {
1044
1164
  await this.openRail("Scheduling");
1165
+ return new (0, $499d3d8c8706756b$export$b7be47b40aa877fc)(this.page);
1045
1166
  }
1046
1167
  async openConditionRail() {
1047
1168
  await this.openRail("Conditions");
@@ -1576,6 +1697,7 @@ class $87bbb6d35ad31a00$export$f8f26dd395d7e1bd extends (0, $9626bc9256ce31f7$ex
1576
1697
 
1577
1698
 
1578
1699
  class $43cbcdfccb6c2a76$export$f43492e8ac3c566 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
1700
+ defaultTimeout = 10000;
1579
1701
  constructor(page){
1580
1702
  super(page);
1581
1703
  this.createPage = new (0, $05d91a1d3381a287$export$34addcca3f0ae43f)(page);
@@ -1584,7 +1706,7 @@ class $43cbcdfccb6c2a76$export$f43492e8ac3c566 extends (0, $9626bc9256ce31f7$exp
1584
1706
  this.teamsPermissions = new (0, $96c6280ff1c47b81$export$3bc3e140e0dcb075)(page);
1585
1707
  this.phaseTitle = this.page.locator(".phase .phase-title");
1586
1708
  this.properties = new (0, $c9bb587dd92143c3$export$d1077068a9cc9f17)(page);
1587
- this.variables = new (0, $f48771b486a3eb8f$export$a87f0ae8695e74be)(page);
1709
+ this.variables = new (0, $dfc4ce40cbd0eb71$export$f8e64fcf447db2bf)(page);
1588
1710
  this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
1589
1711
  }
1590
1712
  async openTriggers() {
@@ -1623,74 +1745,78 @@ class $43cbcdfccb6c2a76$export$f43492e8ac3c566 extends (0, $9626bc9256ce31f7$exp
1623
1745
  name: "Start"
1624
1746
  }).click();
1625
1747
  }
1626
- async waitForCompletion(timeout) {
1748
+ async waitForCompletion(timeout = this.defaultTimeout) {
1627
1749
  await this.page.locator("#release.completed").waitFor({
1628
1750
  timeout: timeout
1629
1751
  });
1630
1752
  }
1631
- async waitForTaskCompleted(taskTitle) {
1753
+ async waitForTaskCompleted(taskTitle, timeout = this.defaultTimeout) {
1632
1754
  await (0, $hOLA6$expect)(this.page.locator(".task.completed").getByText(taskTitle, {
1633
1755
  exact: true
1634
1756
  })).toBeVisible({
1635
- timeout: 10000
1757
+ timeout: timeout
1636
1758
  });
1637
1759
  }
1638
- async waitForTaskCompletedInAdvance(taskTitle) {
1760
+ async waitForTaskCompletedInAdvance(taskTitle, timeout = this.defaultTimeout) {
1639
1761
  await (0, $hOLA6$expect)(this.page.locator(".task.completed_in_advance").getByText(taskTitle, {
1640
1762
  exact: true
1641
1763
  })).toBeVisible({
1642
- timeout: 10000
1764
+ timeout: timeout
1643
1765
  });
1644
1766
  }
1645
- async waitForTaskInProgress(taskTitle) {
1767
+ async waitForTaskInProgress(taskTitle, timeout = this.defaultTimeout) {
1646
1768
  await (0, $hOLA6$expect)(this.page.locator(".task.in_progress").getByText(taskTitle, {
1647
1769
  exact: true
1648
- })).toBeVisible();
1770
+ })).toBeVisible({
1771
+ timeout: timeout
1772
+ });
1649
1773
  }
1650
- async waitForTaskFailed(taskTitle) {
1774
+ async waitForTaskFailed(taskTitle, timeout = this.defaultTimeout) {
1651
1775
  await (0, $hOLA6$expect)(this.page.locator(".task.failed").getByText(taskTitle, {
1652
1776
  exact: true
1653
1777
  })).toBeVisible({
1654
- timeout: 10000
1778
+ timeout: timeout
1655
1779
  });
1656
1780
  }
1657
- async waitForTaskSkipped(taskTitle) {
1781
+ async waitForTaskSkipped(taskTitle, timeout = this.defaultTimeout) {
1658
1782
  await (0, $hOLA6$expect)(this.page.locator(".task.skipped").getByText(taskTitle, {
1659
1783
  exact: true
1660
1784
  })).toBeVisible({
1661
- timeout: 10000
1785
+ timeout: timeout
1662
1786
  });
1663
1787
  }
1664
- async waitForTaskSkippedInAdvance(taskTitle) {
1788
+ async waitForTaskSkippedInAdvance(taskTitle, timeout = this.defaultTimeout) {
1665
1789
  await (0, $hOLA6$expect)(this.page.locator(".task.skipped_in_advance").getByText(taskTitle, {
1666
1790
  exact: true
1667
1791
  })).toBeVisible({
1668
- timeout: 10000
1792
+ timeout: timeout
1669
1793
  });
1670
1794
  }
1671
- async waitForTaskAborted(taskTitle) {
1795
+ async waitForTaskAborted(taskTitle, timeout = this.defaultTimeout) {
1672
1796
  await (0, $hOLA6$expect)(this.page.locator(".task.aborted").getByText(taskTitle, {
1673
1797
  exact: true
1674
1798
  })).toBeVisible({
1675
- timeout: 10000
1799
+ timeout: timeout
1676
1800
  });
1677
1801
  }
1678
- async waitForStatusLine(statusLine) {
1802
+ async waitForStatusLine(statusLine, timeout = this.defaultTimeout) {
1679
1803
  await (0, $hOLA6$expect)(this.page.locator(".task .status-line").getByText(statusLine, {
1680
1804
  exact: true
1681
1805
  })).toBeVisible({
1682
- timeout: 10000
1806
+ timeout: timeout
1683
1807
  });
1684
1808
  }
1685
- async waitForTaskStarted(taskTitle) {
1809
+ async waitForTaskStarted(taskTitle, timeout = this.defaultTimeout) {
1686
1810
  await (0, $hOLA6$expect)(this.page.locator(".task.in_progress").getByTitle(taskTitle, {
1687
1811
  exact: true
1688
1812
  })).toBeVisible({
1689
- timeout: 10000
1813
+ timeout: timeout
1690
1814
  });
1691
1815
  }
1692
- async waitForTaskPlanned(title) {
1693
- await (0, $hOLA6$expect)(this.page.locator(`.task:has-text('${title}').planned`)).toBeVisible();
1816
+ async waitForTaskPlanned(title, timeout = this.defaultTimeout) {
1817
+ await (0, $hOLA6$expect)(this.page.locator(`.task:has-text('${title}').planned`)).toBeVisible({
1818
+ timeout: timeout
1819
+ });
1694
1820
  }
1695
1821
  async expectTaskCompletedInAdvance(taskTitle) {
1696
1822
  await (0, $hOLA6$expect)(this.page.locator("#release-content .completed_in_advance .task-title").filter({
@@ -1915,6 +2041,10 @@ class $43cbcdfccb6c2a76$export$f43492e8ac3c566 extends (0, $9626bc9256ce31f7$exp
1915
2041
  async expectOnePhaseDisplayed() {
1916
2042
  (0, $hOLA6$expect)(await this.page.locator(".phase-content").count()).toBe(1);
1917
2043
  }
2044
+ async restartPhases() {
2045
+ await this.page.getByTestId("restart-btn").click();
2046
+ return new $43cbcdfccb6c2a76$var$RestartPhaseModel(this.page);
2047
+ }
1918
2048
  }
1919
2049
  class $43cbcdfccb6c2a76$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
1920
2050
  constructor(page, phaseName){
@@ -2084,6 +2214,35 @@ class $43cbcdfccb6c2a76$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97
2084
2214
  hasText: phaseName
2085
2215
  })).not.toBeVisible();
2086
2216
  }
2217
+ async expectCompletedPhase() {
2218
+ await (0, $hOLA6$expect)(this.phaseLocator.locator("a")).toContainText("View all completed phases");
2219
+ }
2220
+ }
2221
+ class $43cbcdfccb6c2a76$var$RestartPhaseModel extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
2222
+ constructor(page){
2223
+ super(page);
2224
+ this.continueBtn = this.page.getByRole("button", {
2225
+ name: "Continue"
2226
+ });
2227
+ }
2228
+ async fromPhase(phase) {
2229
+ await this.page.locator('.modal select[data-test="fromPhase"]').selectOption(phase);
2230
+ }
2231
+ async fromTask(task) {
2232
+ await this.page.locator('.modal select[data-test="fromTask"]').selectOption(task);
2233
+ }
2234
+ async expectNoTaskSelectorVisible() {
2235
+ (0, $hOLA6$expect)(await this.page.locator('.modal select[data-test="fromTask"]').isVisible()).toHaveLength(0);
2236
+ }
2237
+ async continue() {
2238
+ await this.page.locator(".modal .continue").click();
2239
+ }
2240
+ async resumeNow() {
2241
+ await this.page.locator(".modal .resume-now").click();
2242
+ }
2243
+ async resumeLater() {
2244
+ await this.page.locator(".modal .resume-later").click();
2245
+ }
2087
2246
  }
2088
2247
 
2089
2248
 
@@ -2561,6 +2720,7 @@ class $7e73332bf754777c$export$32284f8bcf0bc407 extends (0, $9626bc9256ce31f7$ex
2561
2720
 
2562
2721
 
2563
2722
 
2723
+
2564
2724
  class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
2565
2725
  constructor(page){
2566
2726
  super(page);
@@ -2572,6 +2732,7 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
2572
2732
  this.notificationPage = new (0, $7e73332bf754777c$export$32284f8bcf0bc407)(page);
2573
2733
  this.patternPage = new (0, $d13e78163af94d50$export$9b9454a7f137e99b)(page);
2574
2734
  this.util = new (0, $87bbb6d35ad31a00$export$f8f26dd395d7e1bd)(page);
2735
+ this.variables = new (0, $dfc4ce40cbd0eb71$export$f8e64fcf447db2bf)(page);
2575
2736
  }
2576
2737
  async openFoldersPage() {
2577
2738
  await this.page.goto("./#/folders");
@@ -2713,6 +2874,22 @@ class $50c91328c9110668$export$b453f08936c58edb extends (0, $9626bc9256ce31f7$ex
2713
2874
  await this.util.openSideNavMenu("Templates");
2714
2875
  await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Templates")).toBeVisible();
2715
2876
  }
2877
+ async openRelease() {
2878
+ await this.util.openSideNavMenu("Releases");
2879
+ await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Releases")).toBeVisible();
2880
+ }
2881
+ async expectReleaseStarted(releaseName) {
2882
+ await (0, $hOLA6$expect)(this.page.locator(".release").filter({
2883
+ hasText: releaseName
2884
+ }).locator(".release-status").filter({
2885
+ hasText: "In progress"
2886
+ })).toBeVisible();
2887
+ }
2888
+ async openVariables() {
2889
+ await this.util.openSideNavMenu("Variables");
2890
+ await (0, $hOLA6$expect)(this.page.getByLabel("breadcrumb").getByText("Variables")).toBeVisible();
2891
+ return this.variables;
2892
+ }
2716
2893
  }
2717
2894
 
2718
2895
 
@@ -3857,6 +4034,327 @@ class $cc231ea61b77c7a2$export$1a0994e9c202d529 extends (0, $9626bc9256ce31f7$ex
3857
4034
 
3858
4035
 
3859
4036
 
4037
+ class $f48771b486a3eb8f$export$a87f0ae8695e74be extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
4038
+ constructor(page){
4039
+ super(page);
4040
+ this.addListValue = this.page.locator(".variable-selector .xl-components-input-full input");
4041
+ this.addVariableValue = this.page.locator(".variable-value .xl-components-input-full input");
4042
+ this.dateUtil = new (0, $71075ce65fcede1d$export$9b575f14aa5e09a1)(page);
4043
+ this.listAddButton = this.page.getByRole("button", {
4044
+ name: "Add"
4045
+ });
4046
+ }
4047
+ async openVariable(variableKey) {
4048
+ await this.page.locator(`.variables-list .variable`).getByText(variableKey).click();
4049
+ return new $f48771b486a3eb8f$var$ReleaseVariableModal(this.page);
4050
+ }
4051
+ async addNewVariable(variableName, labelname, description) {
4052
+ await this.page.locator("#action-toolbar").getByTestId("dot-button").click();
4053
+ await this.page.fill(`[name="fieldKey"]`, variableName);
4054
+ await this.page.locator(".variable-label input").fill(labelname);
4055
+ if (description) await this.page.locator(".variable-description input").fill(description);
4056
+ }
4057
+ async selectVariableTextType(valuename) {
4058
+ await this.page.getByRole("combobox").selectOption("StringVariable");
4059
+ await this.page.locator(".variable-value").type(valuename);
4060
+ }
4061
+ async selectVariableListboxType(possiblevalue, defaultValue, required) {
4062
+ await this.page.getByRole("combobox").selectOption("DropDownListBox");
4063
+ if (possiblevalue instanceof Array) for (const value of possiblevalue){
4064
+ await this.addListValue.fill(value);
4065
+ await this.listAddButton.click();
4066
+ }
4067
+ else {
4068
+ await this.addListValue.fill(possiblevalue);
4069
+ await this.listAddButton.click();
4070
+ }
4071
+ await this.page.locator(".variable-value select").type(defaultValue);
4072
+ if (required) await this.page.getByRole("checkbox").check();
4073
+ else await this.page.getByRole("checkbox").uncheck();
4074
+ }
4075
+ async selectVariablePasswordType(possiblevalue) {
4076
+ await this.page.getByRole("combobox").selectOption("PasswordStringVariable");
4077
+ await this.page.locator('input[type="password"]').type(possiblevalue);
4078
+ }
4079
+ async selectVariableCheckboxType() {
4080
+ await this.page.getByRole("combobox").selectOption("BooleanVariable");
4081
+ await this.page.getByRole("checkbox").check();
4082
+ }
4083
+ async selectVariableNumberType(possiblevalue) {
4084
+ await this.page.getByRole("combobox").selectOption("IntegerVariable");
4085
+ await this.page.locator('input[ng-model="var.value"]').fill(possiblevalue);
4086
+ }
4087
+ async selectVariableMultiListType(possiblevalue1, possiblevalue2) {
4088
+ await this.page.getByRole("combobox").selectOption("MultiSelectListBox");
4089
+ await this.addListValue.fill(possiblevalue1);
4090
+ await this.listAddButton.click();
4091
+ await this.addListValue.fill(possiblevalue2);
4092
+ await this.listAddButton.click();
4093
+ await this.page.locator(".react-tagsinput").click();
4094
+ await this.page.getByText("Select all", {
4095
+ exact: true
4096
+ }).click();
4097
+ }
4098
+ async addVariableDate() {
4099
+ await this.page.getByRole("combobox").selectOption("DateVariable");
4100
+ await this.page.getByText("Select date").click();
4101
+ }
4102
+ async setDate(date, monthYear) {
4103
+ await this.dateUtil.setDate(date, monthYear);
4104
+ }
4105
+ async addVariableKeyValueMap(keys1, values1) {
4106
+ await this.page.getByRole("combobox").selectOption("MapStringStringVariable");
4107
+ await this.page.getByPlaceholder("key").fill(keys1);
4108
+ await this.page.getByPlaceholder("Value").fill(values1);
4109
+ await this.listAddButton.click();
4110
+ await this.page.locator(".xl-map-string-string-div-buttons .search-icon").click();
4111
+ await this.page.getByRole("row", {
4112
+ name: "Search"
4113
+ }).getByRole("textbox").fill(keys1);
4114
+ const detail = await this.page.locator("table.table-condensed span").allInnerTexts();
4115
+ (0, $hOLA6$expect)(detail[0]).toEqual(keys1);
4116
+ (0, $hOLA6$expect)(detail[1]).toEqual(values1);
4117
+ }
4118
+ async addVariableSet(possiblevalue1) {
4119
+ await this.page.getByRole("combobox").selectOption("SetStringVariable");
4120
+ await this.page.locator(".dip-input input").fill(possiblevalue1);
4121
+ await this.listAddButton.click();
4122
+ }
4123
+ async submitTheVariable() {
4124
+ const createButton = this.page.locator(".modal-footer .save");
4125
+ await (0, $hOLA6$expect)(createButton).toBeEnabled();
4126
+ await createButton.scrollIntoViewIfNeeded();
4127
+ await createButton.click();
4128
+ // Expect is needed here to avoid flackiness on clicking create button
4129
+ await (0, $hOLA6$expect)(createButton).not.toBeVisible();
4130
+ }
4131
+ async expectVariableWithNameValueAndType(name, value, type) {
4132
+ const rowLocator = await this.page.locator(".variable .data-row").allTextContents();
4133
+ (0, $hOLA6$expect)(rowLocator.toString()).toContain(name);
4134
+ (0, $hOLA6$expect)(rowLocator.toString()).toContain(value);
4135
+ (0, $hOLA6$expect)(rowLocator.toString()).toContain(type);
4136
+ }
4137
+ async clickEditVariable(variableName) {
4138
+ await this.page.locator("[id='variables-filter']").fill(variableName);
4139
+ await this.page.getByText("Edit").first().click();
4140
+ return new $f48771b486a3eb8f$var$ReleaseVariableModal(this.page);
4141
+ }
4142
+ async clickDeleteVariable(variableName) {
4143
+ await this.page.locator("[id='variables-filter']").fill(variableName);
4144
+ await this.page.locator(".action .delete-icon").first().click();
4145
+ return new $f48771b486a3eb8f$var$DeleteVariableModel(this.page);
4146
+ }
4147
+ async expectVariablesCountToBe(count) {
4148
+ await (0, $hOLA6$expect)(this.page.locator(".variable .data-row")).toHaveCount(count);
4149
+ }
4150
+ async expectVariableNotPresent(variableName) {
4151
+ await (0, $hOLA6$expect)(this.page.locator(".variable").filter({
4152
+ hasText: variableName
4153
+ })).not.toBeVisible();
4154
+ }
4155
+ async clearSearch() {
4156
+ await this.page.locator("[id='variables-filter']").clear();
4157
+ }
4158
+ async switchPossibleValuesToVariable(variableName) {
4159
+ await this.page.locator(".variable-toggle button").click();
4160
+ await this.page.locator(".ui-autocomplete-input").fill(variableName);
4161
+ await this.page.locator(".ui-menu-item-wrapper").filter({
4162
+ hasText: `${variableName}`
4163
+ }).click();
4164
+ }
4165
+ async selectVariableListboxTypeWithVariable(variableName, defaultValue, required) {
4166
+ await this.page.getByRole("combobox").selectOption("DropDownListBox");
4167
+ await this.page.locator(".variable-toggle button").click();
4168
+ await this.page.locator(".ui-autocomplete-input").fill(variableName);
4169
+ await this.page.locator(".ui-menu-item-wrapper").filter({
4170
+ hasText: `${variableName}`
4171
+ }).click();
4172
+ await this.page.locator(".variable-value select").type(defaultValue);
4173
+ if (required) await this.page.getByRole("checkbox").check();
4174
+ else await this.page.getByRole("checkbox").uncheck();
4175
+ }
4176
+ }
4177
+ class $f48771b486a3eb8f$var$ReleaseVariableModal extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
4178
+ constructor(page){
4179
+ super(page);
4180
+ this.dateUtil = new (0, $71075ce65fcede1d$export$9b575f14aa5e09a1)(page);
4181
+ }
4182
+ async expectValue(locators, expectFn) {
4183
+ const [index, locator] = await (0, $251ce8153733e46f$export$a0f926f04148e5d2)(locators);
4184
+ expectFn[index](locator);
4185
+ }
4186
+ async expectValueToBe(value) {
4187
+ await this.expectValue([
4188
+ this.page.locator("#modal .variable-value input"),
4189
+ this.page.locator("#modal .variable-value .field-readonly"),
4190
+ this.page.locator("#modal .variable-value .xl-map-string-string"),
4191
+ this.page.locator("#modal .variable-value .xl-list-display-mode .text-container")
4192
+ ], [
4193
+ (l)=>(0, $hOLA6$expect)(l).toHaveValue(value),
4194
+ (l)=>(0, $hOLA6$expect)(l).toHaveText(value),
4195
+ (l)=>(0, $hOLA6$expect)(l).toHaveText(value),
4196
+ (l)=>(0, $hOLA6$expect)(l).toHaveText(value)
4197
+ ]);
4198
+ }
4199
+ async expectValueToContain(value) {
4200
+ await this.expectValue([
4201
+ this.page.locator("#modal .variable-value input"),
4202
+ this.page.locator("#modal .variable-value .field-readonly"),
4203
+ this.page.locator("#modal .variable-value .xl-map-string-string"),
4204
+ this.page.locator("#modal .variable-value .xl-list-display-mode")
4205
+ ], [
4206
+ (l)=>(0, $hOLA6$expect)(l.inputValue()).toContain(value),
4207
+ (l)=>(0, $hOLA6$expect)(l).toContainText(value),
4208
+ (l)=>(0, $hOLA6$expect)(l).toContainText(value),
4209
+ (l)=>(0, $hOLA6$expect)(l).toContainText(value)
4210
+ ]);
4211
+ }
4212
+ async close() {
4213
+ await this.page.locator("#modal .modal-header button.close").click();
4214
+ }
4215
+ async expectPossibleValues(possiblevalue) {
4216
+ const listLocator = await this.page.locator(".editor .xl-list-row").allInnerTexts();
4217
+ if (possiblevalue instanceof Array) for (const value of possiblevalue)(0, $hOLA6$expect)(listLocator).toContain(value);
4218
+ else (0, $hOLA6$expect)(listLocator).toContain(possiblevalue);
4219
+ }
4220
+ async expectPossibleVariableValues(possiblevariablevalue) {
4221
+ await (0, $hOLA6$expect)(this.page.locator(".variable-dropdown input")).toHaveValue(possiblevariablevalue);
4222
+ }
4223
+ async addPossibleValue(value) {
4224
+ if (value instanceof Array) for (const li of value){
4225
+ await this.page.locator(".xl-components-input-full input").fill(li);
4226
+ await this.page.getByRole("button", {
4227
+ name: "Add"
4228
+ }).click();
4229
+ }
4230
+ else {
4231
+ await this.page.locator(".xl-components-input-full input").fill(value);
4232
+ await this.page.getByRole("button", {
4233
+ name: "Add"
4234
+ }).click();
4235
+ }
4236
+ }
4237
+ async selectVariableValue(defaultValue) {
4238
+ await this.page.locator(".variable-value select").selectOption(defaultValue);
4239
+ }
4240
+ async save() {
4241
+ const saveButton = this.page.locator("#modal .modal-footer .save");
4242
+ await saveButton.scrollIntoViewIfNeeded();
4243
+ await saveButton.click({
4244
+ delay: 2000
4245
+ });
4246
+ // Expect is needed here to avoid flackiness on clicking save button on modal window
4247
+ await (0, $hOLA6$expect)(saveButton).not.toBeVisible();
4248
+ }
4249
+ async createPossibleValuesVariable(variableName) {
4250
+ await this.page.locator(".variable-toggle button").click();
4251
+ await this.page.locator(".ui-autocomplete-input").fill(variableName);
4252
+ await this.page.locator(".ui-menu-item-wrapper").filter({
4253
+ hasText: `${variableName}`
4254
+ }).click();
4255
+ }
4256
+ async expectVariableValueToBe(value) {
4257
+ (0, $hOLA6$expect)(await this.page.locator('.variable-value select option[selected="selected"]').textContent()).toBe(value);
4258
+ }
4259
+ async expectNoVariablesInList() {
4260
+ await (0, $hOLA6$expect)(this.page.getByText("No variables defined.")).toBeVisible();
4261
+ }
4262
+ async expectNameInput(value) {
4263
+ await (0, $hOLA6$expect)(this.page.locator(`#modal .variable-name input`)).toHaveValue(value);
4264
+ }
4265
+ async expectLabel(value) {
4266
+ await (0, $hOLA6$expect)(this.page.locator("#modal .variable-label input")).toHaveValue(value);
4267
+ }
4268
+ async expectRequired(value) {
4269
+ if (value == true) await (0, $hOLA6$expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).toBeChecked();
4270
+ else await (0, $hOLA6$expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).not.toBeChecked();
4271
+ }
4272
+ async setDescription(description) {
4273
+ await this.page.locator(".variable-description input").click();
4274
+ await this.page.locator(".variable-description input").clear();
4275
+ await this.page.locator(".variable-description input").fill(description);
4276
+ }
4277
+ async setLabel(labelValue) {
4278
+ await this.page.locator(".variable-label input").fill(labelValue);
4279
+ }
4280
+ async setDate(date, monthYear) {
4281
+ await this.page.locator("#modal .date").click();
4282
+ await this.dateUtil.setDate(date, monthYear);
4283
+ }
4284
+ async setValue(value) {
4285
+ await this.page.locator(".variable-value input").fill(value);
4286
+ }
4287
+ }
4288
+ class $f48771b486a3eb8f$var$DeleteVariableModel extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
4289
+ constructor(page){
4290
+ super(page);
4291
+ this.model = new $f48771b486a3eb8f$var$ReleaseVariableModal(page);
4292
+ this.dateUtil = new (0, $71075ce65fcede1d$export$9b575f14aa5e09a1)(page);
4293
+ }
4294
+ async deleteVariable() {
4295
+ await (0, $hOLA6$expect)(this.page.getByRole("heading", {
4296
+ name: "Replace and delete"
4297
+ })).toBeVisible();
4298
+ await this.page.getByRole("button", {
4299
+ name: "Delete"
4300
+ }).click();
4301
+ }
4302
+ async replaceItWithVariable(variable) {
4303
+ await this.model.createPossibleValuesVariable(variable);
4304
+ }
4305
+ async replaceItwithValue(value) {
4306
+ await this.page.locator(".display").click();
4307
+ await this.page.getByLabel("*").fill(value);
4308
+ }
4309
+ async clickReplaceAndDelete() {
4310
+ await this.page.getByRole("button", {
4311
+ name: "Replace and delete"
4312
+ }).click();
4313
+ }
4314
+ async addValue(value) {
4315
+ await this.page.locator(".xl-components-input-full input").fill(value);
4316
+ await this.page.getByRole("button", {
4317
+ name: "Add"
4318
+ }).click();
4319
+ }
4320
+ async remove(value) {
4321
+ await this.page.locator("li").filter({
4322
+ hasText: value
4323
+ }).locator("i.close-icon").click();
4324
+ }
4325
+ async expectReplacementPromptDisplayed() {
4326
+ await (0, $hOLA6$expect)(this.page.getByRole("heading", {
4327
+ name: "Replace and delete"
4328
+ })).toBeVisible();
4329
+ }
4330
+ async close() {
4331
+ await this.page.locator("#modal .modal-header button.close").click();
4332
+ }
4333
+ async removeItemOnSet(value) {
4334
+ await this.page.locator("tr").filter({
4335
+ hasText: value
4336
+ }).locator("i.close-icon").click();
4337
+ }
4338
+ async addValueForSet(key, value) {
4339
+ await this.page.locator(".input-key").fill(key);
4340
+ await this.page.locator(".input-value").fill(value);
4341
+ }
4342
+ async replaceWithIntegerValue(value) {
4343
+ await this.page.locator(".editable").fill(value);
4344
+ }
4345
+ async replaceForBooleanValue() {
4346
+ await this.page.locator(".editor input").click();
4347
+ }
4348
+ async deleteBySettingDate(date, monthYear) {
4349
+ await this.page.locator("#modal .date").click();
4350
+ await this.dateUtil.setDate(date, monthYear);
4351
+ }
4352
+ }
4353
+
4354
+
4355
+
4356
+
4357
+
3860
4358
  class $c37c93912f458e81$export$60c3bfa6385e2a10 extends (0, $9626bc9256ce31f7$export$2b65d1d97338f32b) {
3861
4359
  constructor(page){
3862
4360
  super(page);
@@ -3867,6 +4365,17 @@ class $c37c93912f458e81$export$60c3bfa6385e2a10 extends (0, $9626bc9256ce31f7$ex
3867
4365
  await this.filterTaskByTitle(taskName);
3868
4366
  await this.page.getByText(taskName).first().click();
3869
4367
  }
4368
+ async complete(taskName, comment) {
4369
+ await this.page.locator(`.row.task-inner`, {
4370
+ hasText: taskName
4371
+ }).locator("span.complete").click();
4372
+ await this.commentBox.click();
4373
+ await this.commentBox.fill(comment);
4374
+ await this.page.getByRole("button", {
4375
+ name: "Complete",
4376
+ exact: true
4377
+ }).click();
4378
+ }
3870
4379
  async skip(taskName, comment) {
3871
4380
  await this.page.locator(`.row.task-inner`, {
3872
4381
  hasText: taskName
@@ -4426,7 +4935,10 @@ class $0c4084f199d70d72$var$Phase extends (0, $9626bc9256ce31f7$export$2b65d1d97
4426
4935
  await this.page.locator(".icon-close").click();
4427
4936
  await this.page.locator("#task-title").fill(taskTitle);
4428
4937
  await this.page.getByTestId("save-select-task-btn").click();
4429
- await (0, $hOLA6$expect)(this.phaseLocator.getByText(taskTitle)).toBeVisible();
4938
+ await this.page.locator("#release-header").click();
4939
+ await (0, $hOLA6$expect)(this.phaseLocator.locator(".task-title").filter({
4940
+ hasText: taskTitle
4941
+ })).toBeVisible();
4430
4942
  }
4431
4943
  async getNumberOfTasks() {
4432
4944
  return await this.phaseLocator.locator(".task").count();
@@ -5225,7 +5737,7 @@ const $f86fbaaa8b4e8c61$export$45f0aca2596a2bb3 = function() {
5225
5737
  processTasks(subTask, task, idx);
5226
5738
  });
5227
5739
  (0, $hOLA6$lodasheach)(task.templateVariables, function(variable, idx) {
5228
- (0, $hOLA6$lodashdefaults)(variable, getVariableEntity(variable.value, variable.key, task.id, idx));
5740
+ if (variable.value !== undefined) (0, $hOLA6$lodashdefaults)(variable, getVariableEntity(variable.value, variable.key, task.id, idx));
5229
5741
  });
5230
5742
  (0, $hOLA6$lodasheach)(task.attachments, function(attachment, idx) {
5231
5743
  attachment.type = ATTACHMENT_TYPE;
@@ -5296,7 +5808,7 @@ const $f86fbaaa8b4e8c61$export$45f0aca2596a2bb3 = function() {
5296
5808
  attachment.id = `${release.id}/Attachment${index}`;
5297
5809
  });
5298
5810
  (0, $hOLA6$lodashforEach)(release.variables, function(variable, index) {
5299
- (0, $hOLA6$lodashdefaults)(variable, getVariableEntity(variable.value, variable.key, release.id, index));
5811
+ if (variable.value !== undefined) (0, $hOLA6$lodashdefaults)(variable, getVariableEntity(variable.value, variable.key, release.id, index));
5300
5812
  if (variable.valueProvider) (0, $hOLA6$lodashdefaults)(variable.valueProvider, getValueProviderConfigurationEntity(variable.id));
5301
5813
  });
5302
5814
  (0, $hOLA6$lodashforEach)((0, $hOLA6$lodashtoPairs)(release.variableValues), function(keyValue, index) {
@@ -5346,6 +5858,7 @@ const $80c3ae34677b4324$export$e0969da9b8fb378d = (0, $hOLA6$test).extend({
5346
5858
  class $80c3ae34677b4324$var$Fixtures {
5347
5859
  archivedReleaseIds = [];
5348
5860
  releaseIds = [];
5861
+ riskProfiles = [];
5349
5862
  triggerIds = [];
5350
5863
  configurationIds = [];
5351
5864
  globalVariableIds = [];
@@ -5489,6 +6002,29 @@ class $80c3ae34677b4324$var$Fixtures {
5489
6002
  variable.showOnReleaseStart = false;
5490
6003
  return this.doPost("api/v1/config/Configuration/variables/global", variable);
5491
6004
  }
6005
+ addDefaultSmtpServer() {
6006
+ const defaultSmtpServer = [
6007
+ {
6008
+ type: "xlrelease.SmtpServer",
6009
+ id: "Configuration/mail/SmtpServer",
6010
+ host: "localhost",
6011
+ port: "25",
6012
+ fromAddress: "foo@bar.com",
6013
+ authentication: {
6014
+ id: "Configuration/mail/SmtpServer/authentication",
6015
+ type: "xlrelease.NoSmtpAuthentication"
6016
+ }
6017
+ }
6018
+ ];
6019
+ return this.doPost("fixtures/", defaultSmtpServer);
6020
+ }
6021
+ riskProfile(riskProfile) {
6022
+ this.riskProfiles.push(riskProfile.id);
6023
+ return this.doPost("fixtures/riskProfiles", riskProfile);
6024
+ }
6025
+ deleteRiskProfile(riskProfileId) {
6026
+ return this.doDelete(`fixtures/riskProfiles/${riskProfileId}`);
6027
+ }
5492
6028
  async cleanAll() {
5493
6029
  for (const username of this.usernames)await this.deleteUser(username);
5494
6030
  for (const userProfile of this.userProfiles)await this.deleteUserProfile(userProfile);