@digital-ai/devops-page-object-release 0.0.0-snapshot-20260123084921 → 0.0.0-snapshot-20260123125310
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -2
- package/dist/main.js +503 -31
- package/dist/main.js.map +1 -1
- package/dist/module.js +504 -32
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +98 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# @digital-ai/devops-page-object-release
|
|
2
2
|
|
|
3
|
-
## 0.0.0-snapshot-
|
|
3
|
+
## 0.0.0-snapshot-20260123125310
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
7
|
-
-
|
|
7
|
+
- 650862d: S-127587: Changed the page objects to support SAAS
|
|
8
8
|
|
|
9
9
|
## 0.0.99
|
|
10
10
|
|
package/dist/main.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
var $kKeXs$buffer = require("buffer");
|
|
1
2
|
var $kKeXs$playwrighttest = require("@playwright/test");
|
|
2
3
|
var $kKeXs$child_process = require("child_process");
|
|
3
4
|
var $kKeXs$process = require("process");
|
|
@@ -6224,7 +6225,7 @@ class $506d511737b3ea46$export$74ca1eaaa9a0054 extends (0, $f8721861c660dd88$exp
|
|
|
6224
6225
|
}
|
|
6225
6226
|
async addVariableText(valuename) {
|
|
6226
6227
|
await this.page.getByRole("combobox").selectOption("StringVariable");
|
|
6227
|
-
await this.page.locator(".variable-value
|
|
6228
|
+
await this.page.locator(".variable-value").type(valuename);
|
|
6228
6229
|
await this.submitTheVariable();
|
|
6229
6230
|
}
|
|
6230
6231
|
async addVariableListbox(possiblevalue) {
|
|
@@ -6236,7 +6237,7 @@ class $506d511737b3ea46$export$74ca1eaaa9a0054 extends (0, $f8721861c660dd88$exp
|
|
|
6236
6237
|
}
|
|
6237
6238
|
async addVariablePassword(possiblevalue) {
|
|
6238
6239
|
await this.page.getByRole("combobox").selectOption("PasswordStringVariable");
|
|
6239
|
-
await this.page.locator('input[type="password"]').
|
|
6240
|
+
await this.page.locator('input[type="password"]').type(possiblevalue);
|
|
6240
6241
|
await this.submitTheVariable();
|
|
6241
6242
|
}
|
|
6242
6243
|
async addVariableCheckbox() {
|
|
@@ -6301,7 +6302,7 @@ class $506d511737b3ea46$export$74ca1eaaa9a0054 extends (0, $f8721861c660dd88$exp
|
|
|
6301
6302
|
await this.page.getByRole("button", {
|
|
6302
6303
|
name: "New global variable"
|
|
6303
6304
|
}).click();
|
|
6304
|
-
await this.page.locator(`div.input-group > input`).
|
|
6305
|
+
await this.page.locator(`div.input-group > input`).type(variableName);
|
|
6305
6306
|
await this.addVariablelabel.fill(labelname);
|
|
6306
6307
|
await this.page.locator(".variable-description input").fill(description);
|
|
6307
6308
|
}
|
|
@@ -6312,7 +6313,7 @@ class $506d511737b3ea46$export$74ca1eaaa9a0054 extends (0, $f8721861c660dd88$exp
|
|
|
6312
6313
|
})).toBeVisible();
|
|
6313
6314
|
}
|
|
6314
6315
|
async submitTheVariable() {
|
|
6315
|
-
const pagesubmit = this.page.locator(".button.save");
|
|
6316
|
+
const pagesubmit = await this.page.locator(".button.save");
|
|
6316
6317
|
await pagesubmit.hover();
|
|
6317
6318
|
await pagesubmit.click();
|
|
6318
6319
|
}
|
|
@@ -6328,7 +6329,6 @@ class $506d511737b3ea46$export$74ca1eaaa9a0054 extends (0, $f8721861c660dd88$exp
|
|
|
6328
6329
|
await this.page.getByRole("button", {
|
|
6329
6330
|
name: "Delete"
|
|
6330
6331
|
}).click();
|
|
6331
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("alert.notice.ng-scope")).toBeVisible();
|
|
6332
6332
|
}
|
|
6333
6333
|
async editVariable(variableName, editedvariabletext) {
|
|
6334
6334
|
await this.page.locator("[id='variables-filter']").fill(variableName);
|
|
@@ -7428,6 +7428,465 @@ class $a8855257f8bb2b12$export$61be9a231bfbe7b9 extends (0, $f8721861c660dd88$ex
|
|
|
7428
7428
|
|
|
7429
7429
|
|
|
7430
7430
|
|
|
7431
|
+
class $a6a3c1345fc4767e$export$b6fbc3e67030138f extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
7432
|
+
async setStatus(status) {
|
|
7433
|
+
await this.page.locator(".react-tagsinput").click({
|
|
7434
|
+
force: true
|
|
7435
|
+
});
|
|
7436
|
+
await this.page.getByText("Clear all").click();
|
|
7437
|
+
await this.page.locator(".react-tagsinput").click({
|
|
7438
|
+
force: true
|
|
7439
|
+
});
|
|
7440
|
+
if (status === "Select all") await this.page.getByText(status).click();
|
|
7441
|
+
else await this.page.getByTitle(status).locator("i").first().click();
|
|
7442
|
+
}
|
|
7443
|
+
async openReleaseGroup(title) {
|
|
7444
|
+
await this.page.locator("xlr-release-group-row").filter({
|
|
7445
|
+
hasText: title
|
|
7446
|
+
}).getByRole("link").click();
|
|
7447
|
+
await this.page.getByTitle(title).click();
|
|
7448
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveURL(/.*ReleaseGroup/);
|
|
7449
|
+
}
|
|
7450
|
+
async expectReleaseGroupStatus(status) {
|
|
7451
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release-status")).toContainText(status);
|
|
7452
|
+
}
|
|
7453
|
+
async expectReleaseGroupDisplayed(title) {
|
|
7454
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".row").getByText(title, {
|
|
7455
|
+
exact: true
|
|
7456
|
+
})).toBeVisible();
|
|
7457
|
+
}
|
|
7458
|
+
async expectReleaseGroupNotDisplayed(title) {
|
|
7459
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".row").getByText(title, {
|
|
7460
|
+
exact: true
|
|
7461
|
+
})).not.toBeVisible();
|
|
7462
|
+
}
|
|
7463
|
+
async searchReleaseGroupByTitle(title) {
|
|
7464
|
+
await this.page.getByPlaceholder("Search for groups...", {
|
|
7465
|
+
exact: true
|
|
7466
|
+
}).click();
|
|
7467
|
+
await this.page.getByPlaceholder("Search for groups...", {
|
|
7468
|
+
exact: true
|
|
7469
|
+
}).fill(title);
|
|
7470
|
+
await this.page.getByPlaceholder("Search for groups...", {
|
|
7471
|
+
exact: true
|
|
7472
|
+
}).press("Enter");
|
|
7473
|
+
}
|
|
7474
|
+
async deleteReleaseGroup(title) {
|
|
7475
|
+
await this.page.locator(".fc-list-item-line").filter({
|
|
7476
|
+
hasText: title
|
|
7477
|
+
}).locator(".fc-item-delete").click();
|
|
7478
|
+
await this.page.getByRole("button", {
|
|
7479
|
+
name: "Delete"
|
|
7480
|
+
}).click();
|
|
7481
|
+
}
|
|
7482
|
+
async clickReleaseGroupEdit(title) {
|
|
7483
|
+
await this.page.locator(".fc-list-item-line").filter({
|
|
7484
|
+
hasText: title
|
|
7485
|
+
}).locator(".fc-item-update").click();
|
|
7486
|
+
}
|
|
7487
|
+
async enterReleaseGroupDetails(new_title) {
|
|
7488
|
+
await this.page.locator(".modal-body").locator("#title").fill(new_title);
|
|
7489
|
+
}
|
|
7490
|
+
async clickSaveButton() {
|
|
7491
|
+
await this.page.locator(".modal-footer").getByRole("button", {
|
|
7492
|
+
name: "Save"
|
|
7493
|
+
}).click();
|
|
7494
|
+
}
|
|
7495
|
+
async clickCancelButton() {
|
|
7496
|
+
await this.page.locator(".modal-footer").getByRole("button", {
|
|
7497
|
+
name: "Cancel"
|
|
7498
|
+
}).click();
|
|
7499
|
+
}
|
|
7500
|
+
}
|
|
7501
|
+
|
|
7502
|
+
|
|
7503
|
+
|
|
7504
|
+
|
|
7505
|
+
class $3fad6a9449b6416f$export$1a0994e9c202d529 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
7506
|
+
async expectReleaseDisplayed(title) {
|
|
7507
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByText(title, {
|
|
7508
|
+
exact: true
|
|
7509
|
+
})).toBeVisible();
|
|
7510
|
+
}
|
|
7511
|
+
async expectReleaseNotDisplayed(title) {
|
|
7512
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByText(title, {
|
|
7513
|
+
exact: true
|
|
7514
|
+
})).not.toBeVisible({
|
|
7515
|
+
timeout: 10000
|
|
7516
|
+
});
|
|
7517
|
+
}
|
|
7518
|
+
async expectPhaseDisplayed(title) {
|
|
7519
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByText(title, {
|
|
7520
|
+
exact: true
|
|
7521
|
+
})).toBeVisible();
|
|
7522
|
+
}
|
|
7523
|
+
async openContextMenu(title) {
|
|
7524
|
+
await this.page.locator(".timeline-row-name").filter({
|
|
7525
|
+
hasText: title
|
|
7526
|
+
}).locator(".options-icon").click();
|
|
7527
|
+
}
|
|
7528
|
+
async removeFromReleaseGroup() {
|
|
7529
|
+
await this.page.getByRole("menuitem", {
|
|
7530
|
+
name: "Remove from group"
|
|
7531
|
+
}).locator("a").click();
|
|
7532
|
+
await this.page.getByRole("button", {
|
|
7533
|
+
name: "Remove"
|
|
7534
|
+
}).click();
|
|
7535
|
+
}
|
|
7536
|
+
async expectNumberOfReleases(num_of_release) {
|
|
7537
|
+
const elementCount = await this.page.locator(".timeline-row-name-release").count();
|
|
7538
|
+
(0, $kKeXs$playwrighttest.expect)(elementCount).toBe(num_of_release);
|
|
7539
|
+
}
|
|
7540
|
+
async openAddReleaseList() {
|
|
7541
|
+
await this.page.getByRole("button", {
|
|
7542
|
+
name: "Add release"
|
|
7543
|
+
}).click();
|
|
7544
|
+
}
|
|
7545
|
+
async filterReleases(title) {
|
|
7546
|
+
await this.page.getByPlaceholder("Search for a release...").click();
|
|
7547
|
+
await this.page.getByPlaceholder("Search for a release...").fill(title);
|
|
7548
|
+
await this.page.waitForTimeout(5000);
|
|
7549
|
+
await this.page.getByPlaceholder("Search for a release...").press("Enter");
|
|
7550
|
+
}
|
|
7551
|
+
async expectNumberOfReleasesOnModal(num_of_release) {
|
|
7552
|
+
const elementCount = await this.page.locator(".release-modal-line").count();
|
|
7553
|
+
(0, $kKeXs$playwrighttest.expect)(elementCount).toBe(num_of_release);
|
|
7554
|
+
}
|
|
7555
|
+
async selectAllReleaseCheckbox() {
|
|
7556
|
+
await this.page.getByLabel("Select all").check();
|
|
7557
|
+
}
|
|
7558
|
+
async addReleasesToGroup() {
|
|
7559
|
+
await this.page.getByRole("button", {
|
|
7560
|
+
name: "Add"
|
|
7561
|
+
}).click();
|
|
7562
|
+
}
|
|
7563
|
+
}
|
|
7564
|
+
|
|
7565
|
+
|
|
7566
|
+
|
|
7567
|
+
|
|
7568
|
+
|
|
7569
|
+
|
|
7570
|
+
|
|
7571
|
+
class $fd4eef3ad2b2e612$export$a87f0ae8695e74be extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
7572
|
+
constructor(page){
|
|
7573
|
+
super(page);
|
|
7574
|
+
this.addListValue = this.page.locator(".variable-selector .xl-components-input-full input");
|
|
7575
|
+
this.addVariableValue = this.page.locator(".variable-value .xl-components-input-full input");
|
|
7576
|
+
this.dateUtil = new (0, $880df57ffbf6e614$export$9b575f14aa5e09a1)(page);
|
|
7577
|
+
this.listAddButton = this.page.getByRole("button", {
|
|
7578
|
+
name: "Add"
|
|
7579
|
+
});
|
|
7580
|
+
}
|
|
7581
|
+
async openVariable(variableKey) {
|
|
7582
|
+
await this.page.locator(`.variables-list .variable`).getByText(variableKey).click();
|
|
7583
|
+
return new $fd4eef3ad2b2e612$var$ReleaseVariableModal(this.page);
|
|
7584
|
+
}
|
|
7585
|
+
async addNewVariable(variableName, labelname, description) {
|
|
7586
|
+
await this.page.locator("#action-toolbar").getByText("New variable").click();
|
|
7587
|
+
await this.page.fill(`[name="fieldKey"]`, variableName);
|
|
7588
|
+
await this.page.locator(".variable-label input").fill(labelname);
|
|
7589
|
+
if (description) await this.page.locator(".variable-description input").fill(description);
|
|
7590
|
+
}
|
|
7591
|
+
async selectVariableTextType(valuename) {
|
|
7592
|
+
await this.page.getByRole("combobox").selectOption("StringVariable");
|
|
7593
|
+
await this.page.locator(".variable-value").type(valuename);
|
|
7594
|
+
}
|
|
7595
|
+
async selectVariableListboxType(possiblevalue, defaultValue, required) {
|
|
7596
|
+
await this.page.getByRole("combobox").selectOption("DropDownListBox");
|
|
7597
|
+
if (possiblevalue instanceof Array) for (const value of possiblevalue){
|
|
7598
|
+
await this.addListValue.fill(value);
|
|
7599
|
+
await this.listAddButton.click();
|
|
7600
|
+
}
|
|
7601
|
+
else {
|
|
7602
|
+
await this.addListValue.fill(possiblevalue);
|
|
7603
|
+
await this.listAddButton.click();
|
|
7604
|
+
}
|
|
7605
|
+
await this.page.locator(".variable-value select").type(defaultValue);
|
|
7606
|
+
if (required) await this.page.getByRole("checkbox").check();
|
|
7607
|
+
else await this.page.getByRole("checkbox").uncheck();
|
|
7608
|
+
}
|
|
7609
|
+
async selectVariablePasswordType(possiblevalue) {
|
|
7610
|
+
await this.page.getByRole("combobox").selectOption("PasswordStringVariable");
|
|
7611
|
+
await this.page.locator('input[type="password"]').type(possiblevalue);
|
|
7612
|
+
}
|
|
7613
|
+
async selectVariableCheckboxType() {
|
|
7614
|
+
await this.page.getByRole("combobox").selectOption("BooleanVariable");
|
|
7615
|
+
await this.page.getByRole("checkbox").check();
|
|
7616
|
+
}
|
|
7617
|
+
async selectVariableNumberType(possiblevalue) {
|
|
7618
|
+
await this.page.getByRole("combobox").selectOption("IntegerVariable");
|
|
7619
|
+
await this.page.locator('input[ng-model="var.value"]').fill(possiblevalue);
|
|
7620
|
+
}
|
|
7621
|
+
async selectVariableMultiListType(possiblevalue1, possiblevalue2) {
|
|
7622
|
+
await this.page.getByRole("combobox").selectOption("MultiSelectListBox");
|
|
7623
|
+
await this.addListValue.fill(possiblevalue1);
|
|
7624
|
+
await this.listAddButton.click();
|
|
7625
|
+
await this.addListValue.fill(possiblevalue2);
|
|
7626
|
+
await this.listAddButton.click();
|
|
7627
|
+
await this.page.locator(".react-tagsinput").click();
|
|
7628
|
+
await this.page.getByText("Select all", {
|
|
7629
|
+
exact: true
|
|
7630
|
+
}).click();
|
|
7631
|
+
}
|
|
7632
|
+
async addVariableDate() {
|
|
7633
|
+
await this.page.getByRole("combobox").selectOption("DateVariable");
|
|
7634
|
+
await this.page.getByText("Select date").click();
|
|
7635
|
+
}
|
|
7636
|
+
async setDate(date, monthYear) {
|
|
7637
|
+
await this.dateUtil.setDate(date, monthYear);
|
|
7638
|
+
}
|
|
7639
|
+
async addVariableKeyValueMap(keys1, values1) {
|
|
7640
|
+
await this.page.getByRole("combobox").selectOption("MapStringStringVariable");
|
|
7641
|
+
await this.page.getByPlaceholder("key").fill(keys1);
|
|
7642
|
+
await this.page.getByPlaceholder("Value").fill(values1);
|
|
7643
|
+
await this.listAddButton.click();
|
|
7644
|
+
await this.page.locator(".xl-map-string-string-div-buttons .search-icon").click();
|
|
7645
|
+
await this.page.getByRole("row", {
|
|
7646
|
+
name: "Search"
|
|
7647
|
+
}).getByRole("textbox").fill(keys1);
|
|
7648
|
+
const detail = await this.page.locator("table.table-condensed span").allInnerTexts();
|
|
7649
|
+
(0, $kKeXs$playwrighttest.expect)(detail[0]).toEqual(keys1);
|
|
7650
|
+
(0, $kKeXs$playwrighttest.expect)(detail[1]).toEqual(values1);
|
|
7651
|
+
}
|
|
7652
|
+
async addVariableSet(possiblevalue1) {
|
|
7653
|
+
await this.page.getByRole("combobox").selectOption("SetStringVariable");
|
|
7654
|
+
await this.page.locator(".dip-input input").fill(possiblevalue1);
|
|
7655
|
+
await this.listAddButton.click();
|
|
7656
|
+
}
|
|
7657
|
+
async submitTheVariable() {
|
|
7658
|
+
const createButton = this.page.locator(".modal-footer .save");
|
|
7659
|
+
await (0, $kKeXs$playwrighttest.expect)(createButton).toBeEnabled();
|
|
7660
|
+
await createButton.scrollIntoViewIfNeeded();
|
|
7661
|
+
await createButton.click();
|
|
7662
|
+
// Expect is needed here to avoid flackiness on clicking create button
|
|
7663
|
+
await (0, $kKeXs$playwrighttest.expect)(createButton).not.toBeVisible();
|
|
7664
|
+
}
|
|
7665
|
+
async expectVariableWithNameValueAndType(name, value, type) {
|
|
7666
|
+
const rowLocator = await this.page.locator(".variable .data-row").allTextContents();
|
|
7667
|
+
(0, $kKeXs$playwrighttest.expect)(rowLocator.toString()).toContain(name);
|
|
7668
|
+
(0, $kKeXs$playwrighttest.expect)(rowLocator.toString()).toContain(value);
|
|
7669
|
+
(0, $kKeXs$playwrighttest.expect)(rowLocator.toString()).toContain(type);
|
|
7670
|
+
}
|
|
7671
|
+
async clickEditVariable(variableName) {
|
|
7672
|
+
await this.page.locator("[id='variables-filter']").fill(variableName);
|
|
7673
|
+
await this.page.getByText("Edit").first().click();
|
|
7674
|
+
return new $fd4eef3ad2b2e612$var$ReleaseVariableModal(this.page);
|
|
7675
|
+
}
|
|
7676
|
+
async clickDeleteVariable(variableName) {
|
|
7677
|
+
await this.page.locator("[id='variables-filter']").fill(variableName);
|
|
7678
|
+
await this.page.locator(".action .delete-icon").first().click();
|
|
7679
|
+
return new $fd4eef3ad2b2e612$var$DeleteVariableModel(this.page);
|
|
7680
|
+
}
|
|
7681
|
+
async expectVariablesCountToBe(count) {
|
|
7682
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".variable .data-row")).toHaveCount(count);
|
|
7683
|
+
}
|
|
7684
|
+
async expectVariableNotPresent(variableName) {
|
|
7685
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".variable").filter({
|
|
7686
|
+
hasText: variableName
|
|
7687
|
+
})).not.toBeVisible();
|
|
7688
|
+
}
|
|
7689
|
+
async clearSearch() {
|
|
7690
|
+
await this.page.locator("[id='variables-filter']").clear();
|
|
7691
|
+
}
|
|
7692
|
+
async switchPossibleValuesToVariable(variableName) {
|
|
7693
|
+
await this.page.locator(".variable-toggle button").click();
|
|
7694
|
+
await this.page.locator(".ui-autocomplete-input").fill(variableName);
|
|
7695
|
+
await this.page.locator(".ui-menu-item-wrapper").filter({
|
|
7696
|
+
hasText: `${variableName}`
|
|
7697
|
+
}).click();
|
|
7698
|
+
}
|
|
7699
|
+
async selectVariableListboxTypeWithVariable(variableName, defaultValue, required) {
|
|
7700
|
+
await this.page.getByRole("combobox").selectOption("DropDownListBox");
|
|
7701
|
+
await this.page.locator(".variable-toggle button").click();
|
|
7702
|
+
await this.page.locator(".ui-autocomplete-input").fill(variableName);
|
|
7703
|
+
await this.page.locator(".ui-menu-item-wrapper").filter({
|
|
7704
|
+
hasText: `${variableName}`
|
|
7705
|
+
}).click();
|
|
7706
|
+
await this.page.locator(".variable-value select").type(defaultValue);
|
|
7707
|
+
if (required) await this.page.getByRole("checkbox").check();
|
|
7708
|
+
else await this.page.getByRole("checkbox").uncheck();
|
|
7709
|
+
}
|
|
7710
|
+
}
|
|
7711
|
+
class $fd4eef3ad2b2e612$var$ReleaseVariableModal extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
7712
|
+
constructor(page){
|
|
7713
|
+
super(page);
|
|
7714
|
+
this.dateUtil = new (0, $880df57ffbf6e614$export$9b575f14aa5e09a1)(page);
|
|
7715
|
+
}
|
|
7716
|
+
async expectValue(locators, expectFn) {
|
|
7717
|
+
const [index, locator] = await (0, $ef0df8ad8a777ce6$export$a0f926f04148e5d2)(locators);
|
|
7718
|
+
expectFn[index](locator);
|
|
7719
|
+
}
|
|
7720
|
+
async expectValueToBe(value) {
|
|
7721
|
+
await this.expectValue([
|
|
7722
|
+
this.page.locator("#modal .variable-value input"),
|
|
7723
|
+
this.page.locator("#modal .variable-value .field-readonly"),
|
|
7724
|
+
this.page.locator("#modal .variable-value .xl-map-string-string"),
|
|
7725
|
+
this.page.locator("#modal .variable-value .xl-list-display-mode .text-container")
|
|
7726
|
+
], [
|
|
7727
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveValue(value),
|
|
7728
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value),
|
|
7729
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value),
|
|
7730
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value)
|
|
7731
|
+
]);
|
|
7732
|
+
}
|
|
7733
|
+
async expectValueToContain(value) {
|
|
7734
|
+
await this.expectValue([
|
|
7735
|
+
this.page.locator("#modal .variable-value input"),
|
|
7736
|
+
this.page.locator("#modal .variable-value .field-readonly"),
|
|
7737
|
+
this.page.locator("#modal .variable-value .xl-map-string-string"),
|
|
7738
|
+
this.page.locator("#modal .variable-value .xl-list-display-mode")
|
|
7739
|
+
], [
|
|
7740
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l.inputValue()).toContain(value),
|
|
7741
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value),
|
|
7742
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value),
|
|
7743
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value)
|
|
7744
|
+
]);
|
|
7745
|
+
}
|
|
7746
|
+
async close() {
|
|
7747
|
+
await this.page.locator("#modal .modal-header button.close").click();
|
|
7748
|
+
}
|
|
7749
|
+
async expectPossibleValues(possiblevalue) {
|
|
7750
|
+
const listLocator = await this.page.locator(".editor .xl-list-row").allInnerTexts();
|
|
7751
|
+
if (possiblevalue instanceof Array) for (const value of possiblevalue)(0, $kKeXs$playwrighttest.expect)(listLocator).toContain(value);
|
|
7752
|
+
else (0, $kKeXs$playwrighttest.expect)(listLocator).toContain(possiblevalue);
|
|
7753
|
+
}
|
|
7754
|
+
async expectPossibleVariableValues(possiblevariablevalue) {
|
|
7755
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".variable-dropdown input")).toHaveValue(possiblevariablevalue);
|
|
7756
|
+
}
|
|
7757
|
+
async addPossibleValue(value) {
|
|
7758
|
+
if (value instanceof Array) for (const li of value){
|
|
7759
|
+
await this.page.locator(".xl-components-input-full input").fill(li);
|
|
7760
|
+
await this.page.getByRole("button", {
|
|
7761
|
+
name: "Add"
|
|
7762
|
+
}).click();
|
|
7763
|
+
}
|
|
7764
|
+
else {
|
|
7765
|
+
await this.page.locator(".xl-components-input-full input").fill(value);
|
|
7766
|
+
await this.page.getByRole("button", {
|
|
7767
|
+
name: "Add"
|
|
7768
|
+
}).click();
|
|
7769
|
+
}
|
|
7770
|
+
}
|
|
7771
|
+
async selectVariableValue(defaultValue) {
|
|
7772
|
+
await this.page.locator(".variable-value select").selectOption(defaultValue);
|
|
7773
|
+
}
|
|
7774
|
+
async save() {
|
|
7775
|
+
const saveButton = this.page.locator("#modal .modal-footer .save");
|
|
7776
|
+
await saveButton.scrollIntoViewIfNeeded();
|
|
7777
|
+
await saveButton.click({
|
|
7778
|
+
delay: 2000
|
|
7779
|
+
});
|
|
7780
|
+
// Expect is needed here to avoid flackiness on clicking save button on modal window
|
|
7781
|
+
await (0, $kKeXs$playwrighttest.expect)(saveButton).not.toBeVisible();
|
|
7782
|
+
}
|
|
7783
|
+
async createPossibleValuesVariable(variableName) {
|
|
7784
|
+
await this.page.locator(".variable-toggle button").click();
|
|
7785
|
+
await this.page.locator(".ui-autocomplete-input").fill(variableName);
|
|
7786
|
+
await this.page.locator(".ui-menu-item-wrapper").filter({
|
|
7787
|
+
hasText: `${variableName}`
|
|
7788
|
+
}).click();
|
|
7789
|
+
}
|
|
7790
|
+
async expectVariableValueToBe(value) {
|
|
7791
|
+
(0, $kKeXs$playwrighttest.expect)(await this.page.locator('.variable-value select option[selected="selected"]').textContent()).toBe(value);
|
|
7792
|
+
}
|
|
7793
|
+
async expectNoVariablesInList() {
|
|
7794
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByText("No variables defined.")).toBeVisible();
|
|
7795
|
+
}
|
|
7796
|
+
async expectNameInput(value) {
|
|
7797
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(`#modal .variable-name input`)).toHaveValue(value);
|
|
7798
|
+
}
|
|
7799
|
+
async expectLabel(value) {
|
|
7800
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator("#modal .variable-label input")).toHaveValue(value);
|
|
7801
|
+
}
|
|
7802
|
+
async expectRequired(value) {
|
|
7803
|
+
if (value == true) await (0, $kKeXs$playwrighttest.expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).toBeChecked();
|
|
7804
|
+
else await (0, $kKeXs$playwrighttest.expect)(this.page.locator('.form-group input[ng-model="var.requiresValue"]')).not.toBeChecked();
|
|
7805
|
+
}
|
|
7806
|
+
async setDescription(description) {
|
|
7807
|
+
await this.page.locator(".variable-description input").click();
|
|
7808
|
+
await this.page.locator(".variable-description input").clear();
|
|
7809
|
+
await this.page.locator(".variable-description input").fill(description);
|
|
7810
|
+
}
|
|
7811
|
+
async setLabel(labelValue) {
|
|
7812
|
+
await this.page.locator(".variable-label input").fill(labelValue);
|
|
7813
|
+
}
|
|
7814
|
+
async setDate(date, monthYear) {
|
|
7815
|
+
await this.page.locator("#modal .date").click();
|
|
7816
|
+
await this.dateUtil.setDate(date, monthYear);
|
|
7817
|
+
}
|
|
7818
|
+
async setValue(value) {
|
|
7819
|
+
await this.page.locator(".variable-value input").fill(value);
|
|
7820
|
+
}
|
|
7821
|
+
}
|
|
7822
|
+
class $fd4eef3ad2b2e612$var$DeleteVariableModel extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
7823
|
+
constructor(page){
|
|
7824
|
+
super(page);
|
|
7825
|
+
this.model = new $fd4eef3ad2b2e612$var$ReleaseVariableModal(page);
|
|
7826
|
+
this.dateUtil = new (0, $880df57ffbf6e614$export$9b575f14aa5e09a1)(page);
|
|
7827
|
+
}
|
|
7828
|
+
async deleteVariable() {
|
|
7829
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByRole("heading", {
|
|
7830
|
+
name: "Replace and delete"
|
|
7831
|
+
})).toBeVisible();
|
|
7832
|
+
await this.page.getByRole("button", {
|
|
7833
|
+
name: "Delete"
|
|
7834
|
+
}).click();
|
|
7835
|
+
}
|
|
7836
|
+
async replaceItWithVariable(variable) {
|
|
7837
|
+
await this.model.createPossibleValuesVariable(variable);
|
|
7838
|
+
}
|
|
7839
|
+
async replaceItwithValue(value) {
|
|
7840
|
+
await this.page.locator(".display").click();
|
|
7841
|
+
await this.page.getByLabel("*").fill(value);
|
|
7842
|
+
}
|
|
7843
|
+
async clickReplaceAndDelete() {
|
|
7844
|
+
await this.page.getByRole("button", {
|
|
7845
|
+
name: "Replace and delete"
|
|
7846
|
+
}).click();
|
|
7847
|
+
}
|
|
7848
|
+
async addValue(value) {
|
|
7849
|
+
await this.page.locator(".xl-components-input-full input").fill(value);
|
|
7850
|
+
await this.page.getByRole("button", {
|
|
7851
|
+
name: "Add"
|
|
7852
|
+
}).click();
|
|
7853
|
+
}
|
|
7854
|
+
async remove(value) {
|
|
7855
|
+
await this.page.locator("li").filter({
|
|
7856
|
+
hasText: value
|
|
7857
|
+
}).locator("i.close-icon").click();
|
|
7858
|
+
}
|
|
7859
|
+
async expectReplacementPromptDisplayed() {
|
|
7860
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByRole("heading", {
|
|
7861
|
+
name: "Replace and delete"
|
|
7862
|
+
})).toBeVisible();
|
|
7863
|
+
}
|
|
7864
|
+
async close() {
|
|
7865
|
+
await this.page.locator("#modal .modal-header button.close").click();
|
|
7866
|
+
}
|
|
7867
|
+
async removeItemOnSet(value) {
|
|
7868
|
+
await this.page.locator("tr").filter({
|
|
7869
|
+
hasText: value
|
|
7870
|
+
}).locator("i.close-icon").click();
|
|
7871
|
+
}
|
|
7872
|
+
async addValueForSet(key, value) {
|
|
7873
|
+
await this.page.locator(".input-key").fill(key);
|
|
7874
|
+
await this.page.locator(".input-value").fill(value);
|
|
7875
|
+
}
|
|
7876
|
+
async replaceWithIntegerValue(value) {
|
|
7877
|
+
await this.page.locator(".editable").fill(value);
|
|
7878
|
+
}
|
|
7879
|
+
async replaceForBooleanValue() {
|
|
7880
|
+
await this.page.locator(".editor input").click();
|
|
7881
|
+
}
|
|
7882
|
+
async deleteBySettingDate(date, monthYear) {
|
|
7883
|
+
await this.page.locator("#modal .date").click();
|
|
7884
|
+
await this.dateUtil.setDate(date, monthYear);
|
|
7885
|
+
}
|
|
7886
|
+
}
|
|
7887
|
+
|
|
7888
|
+
|
|
7889
|
+
|
|
7431
7890
|
|
|
7432
7891
|
|
|
7433
7892
|
|
|
@@ -9690,6 +10149,7 @@ class $4ef41cf96a5fae4c$export$b8a61e5c71402559 {
|
|
|
9690
10149
|
this.header = new (0, $00fc48341ebf7de4$export$2fb4351c41ce6e7a)(page);
|
|
9691
10150
|
this.managePluginsPage = new (0, $b4d98f757ef92467$export$7b434e00c788d0bf)(page);
|
|
9692
10151
|
this.releasePage = new (0, $9b9a8c3da392d020$export$f43492e8ac3c566)(page);
|
|
10152
|
+
this.summaryPage = new (0, $fd3e87c08fb5976e$export$46146ef3ab8c339b)(page);
|
|
9693
10153
|
this.settingsMenu = new (0, $7867194f18360347$export$1d7840d5cdc861d5)(page);
|
|
9694
10154
|
this.systemSettingsPage = new (0, $dbc8f157e7b24b12$export$2edf430132ca35d0)(page);
|
|
9695
10155
|
this.usersPage = new (0, $3ceab7c613cabfd6$export$107317390f5aa598)(page);
|
|
@@ -9700,8 +10160,10 @@ class $4ef41cf96a5fae4c$export$b8a61e5c71402559 {
|
|
|
9700
10160
|
this.templateListPage = new (0, $8b6ce149dd48e48b$export$7e1d435fa474ee21)(page);
|
|
9701
10161
|
this.personalSettingsPage = new (0, $010122e1d9b28b80$export$3cf9c90f870f31bd)(page);
|
|
9702
10162
|
this.releaseCalendarPage = new (0, $a8855257f8bb2b12$export$43682cddead1dd78)(page);
|
|
9703
|
-
this.
|
|
10163
|
+
this.releaseGroupPage = new (0, $a6a3c1345fc4767e$export$b6fbc3e67030138f)(page);
|
|
10164
|
+
this.releaseGroupTimelinePage = new (0, $3fad6a9449b6416f$export$1a0994e9c202d529)(page);
|
|
9704
10165
|
this.releaseListPage = new (0, $87643f2d97b0644e$export$a678525e79c4ccc4)(page);
|
|
10166
|
+
this.releaseGanttPage = new (0, $e8395395d01b66bb$export$5a82be0a2a261cc6)(page);
|
|
9705
10167
|
this.rolesPage = new (0, $84dbf24c796d0540$export$7a5b979a220f477c)(page);
|
|
9706
10168
|
this.util = new (0, $2c89ba54932fbba8$export$f8f26dd395d7e1bd)(page);
|
|
9707
10169
|
this.workflowCatalogPage = new (0, $7bcc05352d6debcf$export$5628dfd1b9e94785)(page);
|
|
@@ -9722,7 +10184,7 @@ class $4ef41cf96a5fae4c$export$b8a61e5c71402559 {
|
|
|
9722
10184
|
async openVariablesOnReleasePage(releaseId) {
|
|
9723
10185
|
await this.page.goto(`./#/releases/${releaseId}/variables`);
|
|
9724
10186
|
await this.page.waitForSelector("#release-variables");
|
|
9725
|
-
return new (0, $
|
|
10187
|
+
return new (0, $fd4eef3ad2b2e612$export$a87f0ae8695e74be)(this.page);
|
|
9726
10188
|
}
|
|
9727
10189
|
async openRelease(id) {
|
|
9728
10190
|
return this.openReleaseOrTemplate(id, true);
|
|
@@ -9742,11 +10204,6 @@ class $4ef41cf96a5fae4c$export$b8a61e5c71402559 {
|
|
|
9742
10204
|
exact: true
|
|
9743
10205
|
}).click();
|
|
9744
10206
|
}
|
|
9745
|
-
async gotoHomePageFromRelease() {
|
|
9746
|
-
await this.page.getByRole("link", {
|
|
9747
|
-
name: "Home"
|
|
9748
|
-
}).click();
|
|
9749
|
-
}
|
|
9750
10207
|
async gotoFolderPage() {
|
|
9751
10208
|
await this.page.locator("ul.side-nav li").getByLabel("Folders", {
|
|
9752
10209
|
exact: true
|
|
@@ -9863,26 +10320,31 @@ class $4ef41cf96a5fae4c$export$b8a61e5c71402559 {
|
|
|
9863
10320
|
|
|
9864
10321
|
|
|
9865
10322
|
|
|
10323
|
+
|
|
9866
10324
|
class $258749e0671c845a$export$f14c0e3f98d164c0 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
9867
10325
|
/**
|
|
9868
10326
|
* Login with username and password
|
|
9869
10327
|
* @param userName
|
|
9870
10328
|
* @param password
|
|
9871
10329
|
*/ async login(userName, password) {
|
|
9872
|
-
|
|
9873
|
-
|
|
9874
|
-
|
|
9875
|
-
|
|
9876
|
-
|
|
9877
|
-
|
|
9878
|
-
|
|
9879
|
-
|
|
10330
|
+
if (!$kKeXs$process.env.TEST_ENV) throw new Error("TEST_ENV is not defined. Aborting login.");
|
|
10331
|
+
const testEnv = $kKeXs$process.env.TEST_ENV;
|
|
10332
|
+
$kKeXs$process.stderr.write(`[UI Login Env:]\n` + ` TEST_ENV=${testEnv}\n`);
|
|
10333
|
+
await this.page.goto("./");
|
|
10334
|
+
if (testEnv === "saas") {
|
|
10335
|
+
const saasUsername = this.page.locator('input[name="username"]');
|
|
10336
|
+
await saasUsername.fill(userName);
|
|
10337
|
+
const saasPassword = this.page.locator('input[name="password"]');
|
|
10338
|
+
await saasPassword.fill(password);
|
|
10339
|
+
} else {
|
|
10340
|
+
const localUsername = this.page.getByPlaceholder("User");
|
|
10341
|
+
await localUsername.fill(userName);
|
|
10342
|
+
const localPassword = this.page.getByPlaceholder("Password");
|
|
10343
|
+
await localPassword.fill(password);
|
|
10344
|
+
}
|
|
9880
10345
|
await this.page.getByRole("button", {
|
|
9881
|
-
name:
|
|
9882
|
-
}).click(
|
|
9883
|
-
timeout: 10000
|
|
9884
|
-
});
|
|
9885
|
-
await this.page.waitForTimeout(1000);
|
|
10346
|
+
name: /log in|sign in/i
|
|
10347
|
+
}).click();
|
|
9886
10348
|
await this.closePendoModalWindow();
|
|
9887
10349
|
}
|
|
9888
10350
|
async loginWithoutReload(userName, password) {
|
|
@@ -10761,9 +11223,19 @@ const $8977f8672c5de0fa$export$45f0aca2596a2bb3 = function() {
|
|
|
10761
11223
|
|
|
10762
11224
|
|
|
10763
11225
|
|
|
11226
|
+
|
|
11227
|
+
var $6998c6a53a9eb4fa$require$Buffer = $kKeXs$buffer.Buffer;
|
|
10764
11228
|
const $6998c6a53a9eb4fa$var$JIRA_ISSUE_API_URL = "https://digitalai.atlassian.net/rest/api/2/issue";
|
|
10765
|
-
|
|
10766
|
-
|
|
11229
|
+
function $6998c6a53a9eb4fa$var$encodeBasicAuth() {
|
|
11230
|
+
const username = $kKeXs$process.env.TEST_USERNAME;
|
|
11231
|
+
const password = $kKeXs$process.env.TEST_PASSWORD;
|
|
11232
|
+
const environment = $kKeXs$process.env.TEST_ENV;
|
|
11233
|
+
$kKeXs$process.stderr.write(`[Fixtures Env:]\n` + ` TEST_ENV=${environment}\n`);
|
|
11234
|
+
if (!username || !password) throw new Error("Missing TEST_USERNAME or TEST_PASSWORD in environment variables");
|
|
11235
|
+
return $6998c6a53a9eb4fa$require$Buffer.from(`${username}:${password}`).toString("base64");
|
|
11236
|
+
}
|
|
11237
|
+
const $6998c6a53a9eb4fa$export$1d40aa9bc568f58d = {
|
|
11238
|
+
Authorization: `Basic ${$6998c6a53a9eb4fa$var$encodeBasicAuth()}`,
|
|
10767
11239
|
Cookie: "XSRF-TOKEN=1;",
|
|
10768
11240
|
"X-XSRF-TOKEN": "1"
|
|
10769
11241
|
};
|
|
@@ -11245,24 +11717,24 @@ class $6998c6a53a9eb4fa$var$Fixtures {
|
|
|
11245
11717
|
doPost(url, body) {
|
|
11246
11718
|
return this.request.post(url, {
|
|
11247
11719
|
data: body,
|
|
11248
|
-
headers: $6998c6a53a9eb4fa$
|
|
11720
|
+
headers: $6998c6a53a9eb4fa$export$1d40aa9bc568f58d
|
|
11249
11721
|
});
|
|
11250
11722
|
}
|
|
11251
11723
|
doPut(url, body) {
|
|
11252
11724
|
return this.request.put(url, {
|
|
11253
11725
|
data: body,
|
|
11254
|
-
headers: $6998c6a53a9eb4fa$
|
|
11726
|
+
headers: $6998c6a53a9eb4fa$export$1d40aa9bc568f58d
|
|
11255
11727
|
});
|
|
11256
11728
|
}
|
|
11257
11729
|
doGet(url) {
|
|
11258
11730
|
return this.request.get(url, {
|
|
11259
|
-
headers: $6998c6a53a9eb4fa$
|
|
11731
|
+
headers: $6998c6a53a9eb4fa$export$1d40aa9bc568f58d
|
|
11260
11732
|
});
|
|
11261
11733
|
}
|
|
11262
11734
|
doDelete(url, body) {
|
|
11263
11735
|
return this.request.delete(url, {
|
|
11264
11736
|
data: body,
|
|
11265
|
-
headers: $6998c6a53a9eb4fa$
|
|
11737
|
+
headers: $6998c6a53a9eb4fa$export$1d40aa9bc568f58d
|
|
11266
11738
|
});
|
|
11267
11739
|
}
|
|
11268
11740
|
initDefaults(ci) {
|