@camunda/e2e-test-suite 0.0.1270 → 0.0.1272
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/pages/8.10/ClusterSecretsPage.js +17 -1
- package/dist/pages/8.9/ClusterPage.js +11 -2
- package/dist/pages/8.9/ClusterSecretsPage.js +19 -4
- package/dist/pages/BrowseAllConnectorMarketplacePage.d.ts +1 -0
- package/dist/pages/BrowseAllConnectorMarketplacePage.js +26 -14
- package/dist/pages/SM-8.9/ClusterPage.js +5 -1
- package/dist/resources/Basic_Auth_REST_Connector.bpmn +2 -2
- package/dist/resources/ConnectorsBasicTest.bpmn +6 -6
- package/dist/resources/REST_Connector_Bearer_Auth_Process.bpmn +2 -2
- package/dist/resources/REST_Connector_No_Auth_Process.bpmn +1 -1
- package/dist/test-setup.d.ts +0 -1
- package/dist/test-setup.js +7 -29
- package/dist/tests/8.10/connectors-user-flows.spec.js +4 -7
- package/dist/tests/8.10/saas-migration-path-user-flows.spec.js +1 -2
- package/dist/tests/8.10/smoke-tests.spec.js +2 -3
- package/dist/tests/8.7/connectors-user-flows.spec.js +10 -14
- package/dist/tests/8.7/saas-migration-path-user-flows.spec.js +1 -2
- package/dist/tests/8.7/smoke-tests.spec.js +3 -3
- package/dist/tests/8.8/connectors-user-flows.spec.js +5 -7
- package/dist/tests/8.8/saas-migration-path-user-flows.spec.js +1 -2
- package/dist/tests/8.8/smoke-tests.spec.js +3 -3
- package/dist/tests/8.9/connectors-user-flows.spec.js +5 -7
- package/dist/tests/8.9/saas-migration-path-user-flows.spec.js +1 -2
- package/dist/tests/8.9/smoke-tests.spec.js +3 -3
- package/dist/tests/SM-8.10/connectors-user-flows.spec.js +6 -9
- package/dist/tests/SM-8.10/mt-enabled-user-flows.spec.js +6 -6
- package/dist/tests/SM-8.10/smoke-tests.spec.js +2 -1
- package/dist/tests/SM-8.7/connectors-user-flows.spec.js +4 -4
- package/dist/tests/SM-8.7/mt-enabled-user-flows.spec.js +5 -4
- package/dist/tests/SM-8.7/smoke-tests.spec.js +3 -2
- package/dist/tests/SM-8.8/connectors-user-flows.spec.js +4 -4
- package/dist/tests/SM-8.8/mt-enabled-user-flows.spec.js +5 -4
- package/dist/tests/SM-8.8/smoke-tests.spec.js +2 -1
- package/dist/tests/SM-8.9/connectors-user-flows.spec.js +6 -6
- package/dist/tests/SM-8.9/mt-enabled-user-flows.spec.js +5 -4
- package/dist/tests/SM-8.9/smoke-tests.spec.js +2 -1
- package/dist/tests/c8Run-8.10/connectors-user-flows.spec.js +2 -2
- package/dist/tests/c8Run-8.7/connectors-user-flows.spec.js +5 -8
- package/dist/tests/c8Run-8.8/connectors-user-flows.spec.js +5 -8
- package/dist/tests/c8Run-8.9/connectors-user-flows.spec.js +5 -8
- package/dist/utils/connectorSecrets.js +2 -1
- package/dist/utils/constants.d.ts +2 -0
- package/dist/utils/constants.js +20 -1
- package/package.json +1 -1
- package/playwright.config.ts +80 -0
- package/resources/Basic_Auth_REST_Connector.bpmn +2 -2
- package/resources/ConnectorsBasicTest.bpmn +6 -6
- package/resources/REST_Connector_Bearer_Auth_Process.bpmn +2 -2
- package/resources/REST_Connector_No_Auth_Process.bpmn +1 -1
|
@@ -88,7 +88,23 @@ class ClusterSecretsPage {
|
|
|
88
88
|
.or(this.page
|
|
89
89
|
.getByRole('navigation', { name: 'Main navigation' })
|
|
90
90
|
.getByRole('link', { name: 'Environments', exact: true }));
|
|
91
|
-
|
|
91
|
+
// Scope the cluster link to its row in the clusters table, the way
|
|
92
|
+
// ClusterPage.clusterLink already does (see the note on
|
|
93
|
+
// ClusterPage.clusterRow). A page-wide getByRole('link', {name}) matches
|
|
94
|
+
// two more things and turns an ordinary click into a strict-mode
|
|
95
|
+
// violation: Hub's sidebar entry for the same environment, and every
|
|
96
|
+
// extra row when the org holds several clusters under one name -- which
|
|
97
|
+
// it does as soon as a failed create is retried, because the Console
|
|
98
|
+
// enforces name uniqueness only per region. The comment on
|
|
99
|
+
// clickClusterBanner() below already describes this locator as
|
|
100
|
+
// row-based; now it is.
|
|
101
|
+
const clustersList = page
|
|
102
|
+
.getByRole('row')
|
|
103
|
+
.filter({ hasNotText: 'Generation' }); // Filter out header row
|
|
104
|
+
this.clusterLink = (name) => clustersList
|
|
105
|
+
.filter({ has: page.getByRole('link', { name: name, exact: true }) })
|
|
106
|
+
.first()
|
|
107
|
+
.getByRole('link', { name: name, exact: true });
|
|
92
108
|
// Some environments render this tab as "Cluster secrets" rather than
|
|
93
109
|
// "Connector Secrets" -- match either (see ClusterPage's identical
|
|
94
110
|
// connectorSecretsTab fallback; this page object has its own separate
|
|
@@ -73,9 +73,18 @@ class ClusterPage {
|
|
|
73
73
|
.getByRole('dialog')
|
|
74
74
|
.getByRole('button', { name: 'Delete' });
|
|
75
75
|
this.testClusterLink = page.getByRole('link', { name: 'Test Cluster' });
|
|
76
|
-
this.
|
|
76
|
+
// Camunda Hub renames this tab to "Cluster secrets". Accept either name,
|
|
77
|
+
// the way 8.10's ClusterPage already does: the 8.9 SaaS org is on Hub
|
|
78
|
+
// (see the create-cluster note below, which adapts to the same shell),
|
|
79
|
+
// so the Carbon-era name alone never matches there and every setup step
|
|
80
|
+
// that opens this tab fails on all three clusters.
|
|
81
|
+
this.connectorSecretsTab = page
|
|
82
|
+
.getByRole('tab', {
|
|
83
|
+
name: 'Cluster secrets',
|
|
84
|
+
})
|
|
85
|
+
.or(page.getByRole('tab', {
|
|
77
86
|
name: 'Connector Secrets',
|
|
78
|
-
});
|
|
87
|
+
}));
|
|
79
88
|
// Camunda Hub's create-cluster form replaced the Carbon tiles (a
|
|
80
89
|
// <label> per option) and tabs with design-system choice cards and toggle
|
|
81
90
|
// groups, all exposed as role="radio" named by their title. Each locator
|
|
@@ -77,10 +77,25 @@ class ClusterSecretsPage {
|
|
|
77
77
|
.or(this.page
|
|
78
78
|
.getByRole('navigation', { name: 'Main navigation' })
|
|
79
79
|
.getByRole('link', { name: 'Environments', exact: true }));
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
80
|
+
// Scope the cluster link to its row in the clusters table, as 8.10's
|
|
81
|
+
// ClusterSecretsPage does. The 8.9 org runs the Hub shell -- the tab
|
|
82
|
+
// rename handled above proves it -- and Hub's sidebar carries a link
|
|
83
|
+
// with the same name as the environment, so a page-wide
|
|
84
|
+
// getByRole('link', {name}) matches the sidebar entry and the table row
|
|
85
|
+
// together. Extra rows from a retried create collide the same way,
|
|
86
|
+
// because the Console enforces cluster-name uniqueness only per region.
|
|
87
|
+
const clustersList = page
|
|
88
|
+
.getByRole('row')
|
|
89
|
+
.filter({ hasNotText: 'Generation' }); // Filter out header row
|
|
90
|
+
this.clusterLink = (name) => clustersList
|
|
91
|
+
.filter({ has: page.getByRole('link', { name: name, exact: true }) })
|
|
92
|
+
.first()
|
|
93
|
+
.getByRole('link', { name: name, exact: true });
|
|
94
|
+
// Same Hub tab rename as ClusterPage.connectorSecretsTab above -- accept
|
|
95
|
+
// either name, as 8.10's ClusterSecretsPage does.
|
|
96
|
+
this.clusterSecretTab = this.page
|
|
97
|
+
.getByRole('tab', { name: 'Cluster secrets' })
|
|
98
|
+
.or(this.page.getByRole('tab', { name: 'Connector Secrets' }));
|
|
84
99
|
this.confirmDeleteInput = page.getByRole('textbox', {
|
|
85
100
|
name: 'Type the word DELETE to confirm',
|
|
86
101
|
});
|
|
@@ -11,6 +11,7 @@ declare class BrowseAllConnectorMarketplacePage {
|
|
|
11
11
|
isOpen(): Promise<boolean>;
|
|
12
12
|
waitForConnectorSearchResult(connectorName?: string): Promise<Locator>;
|
|
13
13
|
importConnectorToProject(connectorName?: string): Promise<void>;
|
|
14
|
+
private waitForAnyVisible;
|
|
14
15
|
private completeImportReviewIfNecessary;
|
|
15
16
|
private findConnectorCard;
|
|
16
17
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BrowseAllConnectorMarketplacePage = void 0;
|
|
4
|
+
const test_1 = require("@playwright/test");
|
|
4
5
|
class BrowseAllConnectorMarketplacePage {
|
|
5
6
|
page;
|
|
6
7
|
searchForConnectorTextbox;
|
|
@@ -52,9 +53,8 @@ class BrowseAllConnectorMarketplacePage {
|
|
|
52
53
|
const retryButton = this.marketplaceDetailFooter.getByRole('button', {
|
|
53
54
|
name: 'Try again',
|
|
54
55
|
});
|
|
55
|
-
const detailState = addButton.or(addedStatus).or(retryButton);
|
|
56
56
|
for (let attempt = 1; attempt <= 3; attempt++) {
|
|
57
|
-
await
|
|
57
|
+
await this.waitForAnyVisible([addButton, addedStatus, retryButton], 120000);
|
|
58
58
|
if (await addedStatus.isVisible()) {
|
|
59
59
|
break;
|
|
60
60
|
}
|
|
@@ -73,20 +73,35 @@ class BrowseAllConnectorMarketplacePage {
|
|
|
73
73
|
throw new Error('Browse All could not import the Marketplace connector after 3 attempts.');
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
|
-
await this.availableElementsHeading
|
|
77
|
-
.or(addedStatus)
|
|
78
|
-
.waitFor({ state: 'visible', timeout: 120000 });
|
|
76
|
+
await this.waitForAnyVisible([this.availableElementsHeading, addedStatus], 120000);
|
|
79
77
|
await browseAllDialog
|
|
80
78
|
.getByRole('button', { name: 'Close' })
|
|
81
79
|
.click({ timeout: 60000 });
|
|
82
80
|
await browseAllDialog.waitFor({ state: 'hidden', timeout: 60000 });
|
|
83
81
|
}
|
|
82
|
+
// Waits until any one of `locators` is visible.
|
|
83
|
+
//
|
|
84
|
+
// `Locator.or()` cannot do this: the union it builds is strict, so the
|
|
85
|
+
// moment two of the states are on screen together `waitFor` throws
|
|
86
|
+
// "strict mode violation ... resolved to 2 elements" rather than
|
|
87
|
+
// resolving. The marketplace shows exactly that pair once an import
|
|
88
|
+
// finishes -- the "Available elements" heading and the "Added to this
|
|
89
|
+
// project" status -- which failed every REST connector flow that imports
|
|
90
|
+
// its connector from Browse All. Polling each state on its own keeps the
|
|
91
|
+
// "whichever comes first" semantics these waits need.
|
|
92
|
+
async waitForAnyVisible(locators, timeout) {
|
|
93
|
+
await (0, test_1.expect)(async () => {
|
|
94
|
+
const visible = await Promise.all(locators.map((locator) => locator.isVisible()));
|
|
95
|
+
(0, test_1.expect)(visible).toContain(true);
|
|
96
|
+
}).toPass({ timeout, intervals: [1000, 2000, 5000] });
|
|
97
|
+
}
|
|
84
98
|
async completeImportReviewIfNecessary(retryButton, addedStatus) {
|
|
85
|
-
await this.
|
|
86
|
-
|
|
87
|
-
.
|
|
88
|
-
|
|
89
|
-
|
|
99
|
+
await this.waitForAnyVisible([
|
|
100
|
+
this.importModal,
|
|
101
|
+
this.availableElementsHeading,
|
|
102
|
+
addedStatus,
|
|
103
|
+
retryButton,
|
|
104
|
+
], 120000);
|
|
90
105
|
if (await retryButton.isVisible()) {
|
|
91
106
|
return false;
|
|
92
107
|
}
|
|
@@ -106,10 +121,7 @@ class BrowseAllConnectorMarketplacePage {
|
|
|
106
121
|
await confirmButton.click({ timeout: 60000 });
|
|
107
122
|
}
|
|
108
123
|
await this.importModal.waitFor({ state: 'hidden', timeout: 120000 });
|
|
109
|
-
await this.availableElementsHeading
|
|
110
|
-
.or(addedStatus)
|
|
111
|
-
.or(retryButton)
|
|
112
|
-
.waitFor({ state: 'visible', timeout: 120000 });
|
|
124
|
+
await this.waitForAnyVisible([this.availableElementsHeading, addedStatus, retryButton], 120000);
|
|
113
125
|
return !(await retryButton.isVisible());
|
|
114
126
|
}
|
|
115
127
|
async findConnectorCard(connectorName) {
|
|
@@ -22,7 +22,11 @@ class ClusterPage {
|
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
async assertCustomTagsAreVisible(tags) {
|
|
25
|
-
|
|
25
|
+
// No page.waitForLoadState('networkidle') here: the Console clusters page
|
|
26
|
+
// emits continuous polling/SSE traffic, so networkidle never fires and the
|
|
27
|
+
// wait times out on every attempt. The toBeVisible auto-wait below already
|
|
28
|
+
// covers the readiness window this assertion needs. SM-8.8 and SM-8.10
|
|
29
|
+
// dropped the same call for the same reason.
|
|
26
30
|
for (const tag of tags) {
|
|
27
31
|
await (0, test_1.expect)(this.clustersList.getByText(tag, { exact: true })).toBeVisible({
|
|
28
32
|
timeout: 60000,
|
|
@@ -15,13 +15,13 @@
|
|
|
15
15
|
<zeebe:input source="username" target="authentication.username" />
|
|
16
16
|
<zeebe:input source="password" target="authentication.password" />
|
|
17
17
|
<zeebe:input source="GET" target="method" />
|
|
18
|
-
<zeebe:input source="https://
|
|
18
|
+
<zeebe:input source="https://dummyjson.com/http/200/Awesome!" target="url" />
|
|
19
19
|
<zeebe:input source="20" target="connectionTimeoutInSeconds" />
|
|
20
20
|
<zeebe:input source="20" target="readTimeoutInSeconds" />
|
|
21
21
|
</zeebe:ioMapping>
|
|
22
22
|
<zeebe:taskHeaders>
|
|
23
23
|
<zeebe:header key="resultVariable" value="result" />
|
|
24
|
-
<zeebe:header key="resultExpression" value="={message:response.body.
|
|
24
|
+
<zeebe:header key="resultExpression" value="={message:response.body.message}" />
|
|
25
25
|
<zeebe:header key="errorExpression" />
|
|
26
26
|
<zeebe:header key="retryBackoff" value="PT0S" />
|
|
27
27
|
</zeebe:taskHeaders>
|
|
@@ -1041,13 +1041,13 @@
|
|
|
1041
1041
|
<zeebe:properties>
|
|
1042
1042
|
<zeebe:property name="inbound.type" value="io.camunda:http-polling:1" />
|
|
1043
1043
|
<zeebe:property name="authentication.type" value="oauth-client-credentials-flow" />
|
|
1044
|
-
<zeebe:property name="authentication.oauthTokenEndpoint" value="
|
|
1045
|
-
<zeebe:property name="authentication.clientId" value="
|
|
1046
|
-
<zeebe:property name="authentication.clientSecret" value="
|
|
1047
|
-
<zeebe:property name="authentication.clientAuthentication" value="
|
|
1048
|
-
<zeebe:property name="authentication.scopes"
|
|
1044
|
+
<zeebe:property name="authentication.oauthTokenEndpoint" value="=tokenEndpoint" />
|
|
1045
|
+
<zeebe:property name="authentication.clientId" value="=zeebeClientId" />
|
|
1046
|
+
<zeebe:property name="authentication.clientSecret" value="=zeebeSecret" />
|
|
1047
|
+
<zeebe:property name="authentication.clientAuthentication" value="credentialsBody" />
|
|
1048
|
+
<zeebe:property name="authentication.scopes" />
|
|
1049
1049
|
<zeebe:property name="method" value="GET" />
|
|
1050
|
-
<zeebe:property name="url" value="https://
|
|
1050
|
+
<zeebe:property name="url" value="https://dummyjson.com/http/200/Awesome!" />
|
|
1051
1051
|
<zeebe:property name="httpRequestInterval" value="PT15S" />
|
|
1052
1052
|
<zeebe:property name="processPollingInterval" value="PT5S" />
|
|
1053
1053
|
<zeebe:property name="connectionTimeoutInSeconds" value="20" />
|
|
@@ -12,12 +12,12 @@
|
|
|
12
12
|
<zeebe:input source="bearer" target="authentication.type" />
|
|
13
13
|
<zeebe:input source="thisisabearertoken" target="authentication.token" />
|
|
14
14
|
<zeebe:input source="POST" target="method" />
|
|
15
|
-
<zeebe:input source="https://
|
|
15
|
+
<zeebe:input source="https://dummyjson.com/http/200/Awesome!" target="url" />
|
|
16
16
|
<zeebe:input source="20" target="connectionTimeoutInSeconds" />
|
|
17
17
|
<zeebe:input source="20" target="readTimeoutInSeconds" />
|
|
18
18
|
</zeebe:ioMapping>
|
|
19
19
|
<zeebe:taskHeaders>
|
|
20
|
-
<zeebe:header key="resultExpression" value="={message:response.body.
|
|
20
|
+
<zeebe:header key="resultExpression" value="={message:response.body.message}" />
|
|
21
21
|
<zeebe:header key="retryBackoff" value="PT0S" />
|
|
22
22
|
</zeebe:taskHeaders>
|
|
23
23
|
</bpmn:extensionElements>
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
<zeebe:ioMapping>
|
|
12
12
|
<zeebe:input source="noAuth" target="authentication.type" />
|
|
13
13
|
<zeebe:input source="GET" target="method" />
|
|
14
|
-
<zeebe:input source="https://
|
|
14
|
+
<zeebe:input source="https://dummyjson.com/http/200/Awesome!" target="url" />
|
|
15
15
|
<zeebe:input source="20" target="connectionTimeoutInSeconds" />
|
|
16
16
|
<zeebe:input source="20" target="readTimeoutInSeconds" />
|
|
17
17
|
</zeebe:ioMapping>
|
package/dist/test-setup.d.ts
CHANGED
|
@@ -3,4 +3,3 @@ export declare function captureScreenshot(page: Page, testInfo: TestInfo): Promi
|
|
|
3
3
|
export declare function captureFailureVideo(page: Page, testInfo: TestInfo): Promise<void>;
|
|
4
4
|
export declare function generateRandomStringAsync(length: number): Promise<string>;
|
|
5
5
|
export declare function performBasicAuthPostRequest(requestUrl: string, username: string, password: string): Promise<void>;
|
|
6
|
-
export declare function performBearerTokenAuthPostRequest(requestUrl: string, bearerToken: string): Promise<void>;
|
package/dist/test-setup.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.performBasicAuthPostRequest = exports.generateRandomStringAsync = exports.captureFailureVideo = exports.captureScreenshot = void 0;
|
|
7
7
|
const test_1 = require("@playwright/test");
|
|
8
8
|
const crypto_1 = require("crypto");
|
|
9
9
|
const axios_1 = __importDefault(require("axios"));
|
|
@@ -128,37 +128,15 @@ function generateRandomStringAsync(length) {
|
|
|
128
128
|
});
|
|
129
129
|
}
|
|
130
130
|
exports.generateRandomStringAsync = generateRandomStringAsync;
|
|
131
|
+
// Fails the calling test when the REST mock the connector is about to call is
|
|
132
|
+
// unreachable, so the flow reports the mock rather than an unexplained Operate
|
|
133
|
+
// incident minutes later. The credentials go in the axios config, not in the
|
|
134
|
+
// second argument: that argument is the request body, so the previous version
|
|
135
|
+
// posted `{auth: {...}}` as JSON and sent no Authorization header at all.
|
|
131
136
|
async function performBasicAuthPostRequest(requestUrl, username, password) {
|
|
132
137
|
await (0, test_1.expect)(async () => {
|
|
133
|
-
const authResponse = await axios_1.default.post(requestUrl, {
|
|
134
|
-
auth: {
|
|
135
|
-
username: username,
|
|
136
|
-
password: password,
|
|
137
|
-
},
|
|
138
|
-
});
|
|
138
|
+
const authResponse = await axios_1.default.post(requestUrl, {}, { auth: { username: username, password: password } });
|
|
139
139
|
(0, test_1.expect)(authResponse.status).toBe(200);
|
|
140
140
|
}).toPass(constants_1.defaultAssertionOptions);
|
|
141
141
|
}
|
|
142
142
|
exports.performBasicAuthPostRequest = performBasicAuthPostRequest;
|
|
143
|
-
async function performBearerTokenAuthPostRequest(requestUrl, bearerToken) {
|
|
144
|
-
try {
|
|
145
|
-
const authToken = bearerToken;
|
|
146
|
-
const apiUrl = requestUrl;
|
|
147
|
-
const response = await axios_1.default.post(apiUrl, {
|
|
148
|
-
headers: {
|
|
149
|
-
Authorization: `Bearer ${authToken}`,
|
|
150
|
-
},
|
|
151
|
-
});
|
|
152
|
-
if (response.status === 200) {
|
|
153
|
-
console.log('Bearer Token API request successful.');
|
|
154
|
-
console.log('Response Data:', response.data);
|
|
155
|
-
}
|
|
156
|
-
else {
|
|
157
|
-
console.error('Bearer Token API request failed.');
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
catch (error) {
|
|
161
|
-
console.error('Bearer Token API request error:', error);
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
exports.performBearerTokenAuthPostRequest = performBearerTokenAuthPostRequest;
|
|
@@ -25,8 +25,7 @@ _8_10_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
25
25
|
await (0, _setup_1.captureScreenshot)(page, testInfo);
|
|
26
26
|
await (0, _setup_1.captureFailureVideo)(page, testInfo);
|
|
27
27
|
});
|
|
28
|
-
|
|
29
|
-
_8_10_1.test.skip('REST Connector No Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
28
|
+
(0, _8_10_1.test)('REST Connector No Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
30
29
|
_8_10_1.test.slow();
|
|
31
30
|
const processName = 'REST_Connector_No_Auth_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
|
|
32
31
|
await _8_10_1.test.step('Navigate to Web Modeler', async () => {
|
|
@@ -45,7 +44,7 @@ _8_10_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
45
44
|
await modelerHomePage.clickBpmnTemplateOption();
|
|
46
45
|
});
|
|
47
46
|
await _8_10_1.test.step('Create BPMN Diagram with REST Connector and Start Process Instance', async () => {
|
|
48
|
-
await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName,
|
|
47
|
+
await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, constants_1.REST_MOCK_URL, 'noAuth', 'body');
|
|
49
48
|
await modelerCreatePage.runProcessInstance(defaultClusterName);
|
|
50
49
|
});
|
|
51
50
|
await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
|
|
@@ -79,8 +78,7 @@ _8_10_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
79
78
|
});
|
|
80
79
|
});
|
|
81
80
|
});
|
|
82
|
-
|
|
83
|
-
_8_10_1.test.skip('REST Connector Bearer Token Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
81
|
+
(0, _8_10_1.test)('REST Connector Bearer Token Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
84
82
|
_8_10_1.test.slow();
|
|
85
83
|
const processName = 'REST_Connector_Bearer_Auth_Process' +
|
|
86
84
|
(await (0, _setup_1.generateRandomStringAsync)(3));
|
|
@@ -100,9 +98,8 @@ _8_10_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
100
98
|
await modelerHomePage.clickBpmnTemplateOption();
|
|
101
99
|
});
|
|
102
100
|
await _8_10_1.test.step('Create BPMN Diagram with REST Connector with Bearer Token Auth and Start Process Instance', async () => {
|
|
103
|
-
await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName,
|
|
101
|
+
await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, constants_1.REST_MOCK_URL, 'bearer', '{message:response.body.message}');
|
|
104
102
|
await modelerCreatePage.runProcessInstance(defaultClusterName);
|
|
105
|
-
await (0, _setup_1.performBearerTokenAuthPostRequest)('https://camunda.proxy.beeceptor.com/pre-prod/bearer-auth-test', 'thisisabearertoken');
|
|
106
103
|
});
|
|
107
104
|
await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
|
|
108
105
|
await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
|
|
@@ -110,8 +110,7 @@ _8_10_1.test.describe('SaaS Migration Path Tests', () => {
|
|
|
110
110
|
await (0, test_1.expect)(page.getByRole('cell', { name: 'Admin' })).toBeVisible();
|
|
111
111
|
});
|
|
112
112
|
});
|
|
113
|
-
|
|
114
|
-
_8_10_1.test.skip('Assert Connectors Still Function After SaaS Upgrade @tasklistV2', async ({ operateHomePage, appsPage, operateProcessesPage, operateProcessInstancePage, }) => {
|
|
113
|
+
(0, _8_10_1.test)('Assert Connectors Still Function After SaaS Upgrade @tasklistV2', async ({ operateHomePage, appsPage, operateProcessesPage, operateProcessInstancePage, }) => {
|
|
115
114
|
_8_10_1.test.slow();
|
|
116
115
|
// Use the same fixed name that was created in the pre-upgrade smoke tests
|
|
117
116
|
const processName = 'REST_Connector_Basic_Auth_ProcessUpgradeTest';
|
|
@@ -292,8 +292,7 @@ _8_10_1.test.describe('Smoke Tests', () => {
|
|
|
292
292
|
await optimizeReportPage.assertUserTaskInstanceCountWithRetry(2, appTab, countRetries, Math.floor(flowBudget(countRetries * constants_1.TIMEOUT.navigation) / countRetries));
|
|
293
293
|
});
|
|
294
294
|
});
|
|
295
|
-
|
|
296
|
-
_8_10_1.test.skip('Most Common REST Connector User Flow', async ({ page, loginPage, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }, testInfo) => {
|
|
295
|
+
(0, _8_10_1.test)('Most Common REST Connector User Flow', async ({ page, loginPage, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }, testInfo) => {
|
|
297
296
|
_8_10_1.test.slow();
|
|
298
297
|
const randomString = await (0, _setup_1.generateRandomStringAsync)(3);
|
|
299
298
|
const processName = 'REST_Connector_Basic_Auth_Process' + randomString;
|
|
@@ -311,7 +310,7 @@ _8_10_1.test.describe('Smoke Tests', () => {
|
|
|
311
310
|
await modelerHomePage.clickBpmnTemplateOption();
|
|
312
311
|
});
|
|
313
312
|
await _8_10_1.test.step('Create BPMN diagram with REST Connector using Basic Auth', async () => {
|
|
314
|
-
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName,
|
|
313
|
+
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, constants_1.REST_MOCK_BASIC_AUTH_URL, 'basic', '{message:response.body.message}', 'result', { username: 'username', password: 'password' });
|
|
315
314
|
});
|
|
316
315
|
await _8_10_1.test.step('Deploy and start process instance', async () => {
|
|
317
316
|
await modelerCreatePage.runProcessInstance(CLUSTER_NAME);
|
|
@@ -10,6 +10,7 @@ const UtilitiesPage_2 = require("../../pages/8.7/UtilitiesPage");
|
|
|
10
10
|
const apiHelpers_1 = require("../../utils/apiHelpers");
|
|
11
11
|
const expectLocatorWithRetry_1 = require("../../utils/assertionHelpers/expectLocatorWithRetry");
|
|
12
12
|
const users_1 = require("../../utils/users");
|
|
13
|
+
const constants_1 = require("../../utils/constants");
|
|
13
14
|
const testUser = (0, users_1.getTestUser)('seventeenthUser');
|
|
14
15
|
_8_7_1.test.describe.configure({ mode: 'parallel' });
|
|
15
16
|
_8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
@@ -22,8 +23,7 @@ _8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
|
22
23
|
await (0, _setup_1.captureScreenshot)(page, testInfo);
|
|
23
24
|
await (0, _setup_1.captureFailureVideo)(page, testInfo);
|
|
24
25
|
});
|
|
25
|
-
|
|
26
|
-
_8_7_1.test.skip('REST Connector No Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
26
|
+
(0, _8_7_1.test)('REST Connector No Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
27
27
|
_8_7_1.test.slow();
|
|
28
28
|
const processName = 'REST_Connector_No_Auth_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
|
|
29
29
|
await _8_7_1.test.step('Navigate to Web Modeler', async () => {
|
|
@@ -42,7 +42,7 @@ _8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
|
42
42
|
await modelerHomePage.clickBpmnTemplateOption();
|
|
43
43
|
});
|
|
44
44
|
await _8_7_1.test.step('Create BPMN Diagram with REST Connector and Start Process Instance', async () => {
|
|
45
|
-
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName,
|
|
45
|
+
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, constants_1.REST_MOCK_URL, 'noAuth', 'body');
|
|
46
46
|
await modelerCreatePage.runProcessInstance(defaultClusterName);
|
|
47
47
|
});
|
|
48
48
|
await _8_7_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
|
|
@@ -60,8 +60,7 @@ _8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
|
60
60
|
});
|
|
61
61
|
});
|
|
62
62
|
});
|
|
63
|
-
|
|
64
|
-
_8_7_1.test.skip('REST Connector Bearer Token Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
63
|
+
(0, _8_7_1.test)('REST Connector Bearer Token Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
65
64
|
_8_7_1.test.slow();
|
|
66
65
|
const processName = 'REST_Connector_Bearer_Auth_Process' +
|
|
67
66
|
(await (0, _setup_1.generateRandomStringAsync)(3));
|
|
@@ -81,9 +80,8 @@ _8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
|
81
80
|
await modelerHomePage.clickBpmnTemplateOption();
|
|
82
81
|
});
|
|
83
82
|
await _8_7_1.test.step('Create BPMN Diagram with REST Connector with Bearer Token Auth and Start Process Instance', async () => {
|
|
84
|
-
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName,
|
|
83
|
+
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, constants_1.REST_MOCK_URL, 'bearer', '{message:response.body.message}');
|
|
85
84
|
await modelerCreatePage.runProcessInstance(defaultClusterName);
|
|
86
|
-
await (0, _setup_1.performBearerTokenAuthPostRequest)('https://camunda.proxy.beeceptor.com/pre-prod/bearer-auth-test', 'thisisabearertoken');
|
|
87
85
|
});
|
|
88
86
|
await _8_7_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
|
|
89
87
|
await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
|
|
@@ -163,8 +161,7 @@ _8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
|
163
161
|
await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateProcessInstancePage, operateProcessInstancePage.completedIcon, 'Completed icon', 60000);
|
|
164
162
|
});
|
|
165
163
|
});
|
|
166
|
-
|
|
167
|
-
_8_7_1.test.skip('Connector Secrets User Flow - GCP', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, clusterPage, clusterSecretsPage, }) => {
|
|
164
|
+
(0, _8_7_1.test)('Connector Secrets User Flow - GCP', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, clusterPage, clusterSecretsPage, }) => {
|
|
168
165
|
_8_7_1.test.slow();
|
|
169
166
|
const processName = 'REST_Connector_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
|
|
170
167
|
await _8_7_1.test.step('Navigate to Cluster Secrets', async () => {
|
|
@@ -176,7 +173,7 @@ _8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
|
176
173
|
await clusterSecretsPage.deleteConnectorSecretsIfExist();
|
|
177
174
|
});
|
|
178
175
|
await _8_7_1.test.step('Create Cluster Secret', async () => {
|
|
179
|
-
await clusterSecretsPage.createNewSecret(defaultClusterName, 'endpoint_url',
|
|
176
|
+
await clusterSecretsPage.createNewSecret(defaultClusterName, 'endpoint_url', constants_1.REST_MOCK_BASIC_AUTH_URL);
|
|
180
177
|
await clusterSecretsPage.createNewSecret(defaultClusterName, 'username', 'username');
|
|
181
178
|
await clusterSecretsPage.createNewSecret(defaultClusterName, 'password', 'password');
|
|
182
179
|
});
|
|
@@ -199,7 +196,7 @@ _8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
|
199
196
|
await _8_7_1.test.step('Create BPMN Diagram with REST Connector using secrets and Start Process Instance', async () => {
|
|
200
197
|
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, 'secrets.endpoint_url', 'basic', '{message:response.body.message}', 'result', { username: 'secrets.username', password: 'secrets.password' });
|
|
201
198
|
await modelerCreatePage.runProcessInstance(defaultClusterName);
|
|
202
|
-
await (0, _setup_1.performBasicAuthPostRequest)(
|
|
199
|
+
await (0, _setup_1.performBasicAuthPostRequest)(constants_1.REST_MOCK_BASIC_AUTH_URL, 'username', 'password');
|
|
203
200
|
});
|
|
204
201
|
await _8_7_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
|
|
205
202
|
await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
|
|
@@ -216,8 +213,7 @@ _8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
|
216
213
|
.getByText('"Message from Mock!"'), 'Connector response message', 60000);
|
|
217
214
|
});
|
|
218
215
|
});
|
|
219
|
-
|
|
220
|
-
_8_7_1.test.skip('Connector Secrets User Flow - AWS', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, clusterPage, clusterSecretsPage, operateHomePage, operateProcessesPage, operateProcessInstancePage, }) => {
|
|
216
|
+
(0, _8_7_1.test)('Connector Secrets User Flow - AWS', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, clusterPage, clusterSecretsPage, operateHomePage, operateProcessesPage, operateProcessInstancePage, }) => {
|
|
221
217
|
_8_7_1.test.slow();
|
|
222
218
|
const processName = 'REST_Connector_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
|
|
223
219
|
await _8_7_1.test.step('Navigate to Cluster Secrets', async () => {
|
|
@@ -229,7 +225,7 @@ _8_7_1.test.describe('Connectors User Flow Tests', () => {
|
|
|
229
225
|
await clusterSecretsPage.deleteConnectorSecretsIfExist();
|
|
230
226
|
});
|
|
231
227
|
await _8_7_1.test.step('Create Cluster Secrets', async () => {
|
|
232
|
-
await clusterSecretsPage.createNewSecret(awsCluster, 'endpoint_url',
|
|
228
|
+
await clusterSecretsPage.createNewSecret(awsCluster, 'endpoint_url', constants_1.REST_MOCK_BASIC_AUTH_URL);
|
|
233
229
|
await clusterSecretsPage.createNewSecret(awsCluster, 'username', 'username');
|
|
234
230
|
await clusterSecretsPage.createNewSecret(awsCluster, 'password', 'password');
|
|
235
231
|
});
|
|
@@ -134,8 +134,7 @@ _8_7_1.test.describe('SaaS Migration Path Tests', () => {
|
|
|
134
134
|
});
|
|
135
135
|
});
|
|
136
136
|
});
|
|
137
|
-
|
|
138
|
-
_8_7_1.test.skip('Assert Connectors Still Function After SaaS Upgrade', async ({ operateHomePage, appsPage, operateProcessesPage, operateProcessInstancePage, }) => {
|
|
137
|
+
(0, _8_7_1.test)('Assert Connectors Still Function After SaaS Upgrade', async ({ operateHomePage, appsPage, operateProcessesPage, operateProcessInstancePage, }) => {
|
|
139
138
|
_8_7_1.test.slow();
|
|
140
139
|
// Use the same fixed name that was created in the pre-upgrade smoke tests
|
|
141
140
|
const processName = 'REST_Connector_Basic_Auth_ProcessUpgradeTest';
|
|
@@ -16,6 +16,7 @@ const OptimizeReportPage_1 = require("../../pages/8.7/OptimizeReportPage");
|
|
|
16
16
|
const expectLocatorWithRetry_1 = require("../../utils/assertionHelpers/expectLocatorWithRetry");
|
|
17
17
|
const users_1 = require("../../utils/users");
|
|
18
18
|
const sleep_1 = require("../../utils/sleep");
|
|
19
|
+
const constants_1 = require("../../utils/constants");
|
|
19
20
|
const testUser = (0, users_1.getTestUser)('thirteenthUser');
|
|
20
21
|
const CLUSTER_NAME = 'Test Cluster';
|
|
21
22
|
const TIMEOUT = {
|
|
@@ -188,8 +189,7 @@ _8_7_1.test.describe('Smoke Tests', () => {
|
|
|
188
189
|
});
|
|
189
190
|
});
|
|
190
191
|
});
|
|
191
|
-
|
|
192
|
-
_8_7_1.test.skip('Most Common REST Connector User Flow', async ({ page, loginPage, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }, testInfo) => {
|
|
192
|
+
(0, _8_7_1.test)('Most Common REST Connector User Flow', async ({ page, loginPage, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }, testInfo) => {
|
|
193
193
|
_8_7_1.test.slow();
|
|
194
194
|
const randomString = useFixedNames
|
|
195
195
|
? 'UpgradeTest'
|
|
@@ -214,7 +214,7 @@ _8_7_1.test.describe('Smoke Tests', () => {
|
|
|
214
214
|
await modelerHomePage.clickBpmnTemplateOption();
|
|
215
215
|
});
|
|
216
216
|
await _8_7_1.test.step('Create BPMN diagram with REST Connector using Basic Auth', async () => {
|
|
217
|
-
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName,
|
|
217
|
+
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, constants_1.REST_MOCK_BASIC_AUTH_URL, 'basic', '{message:response.body.message}', 'result', { username: 'username', password: 'password' });
|
|
218
218
|
});
|
|
219
219
|
await _8_7_1.test.step('Deploy and start process instance', async () => {
|
|
220
220
|
await modelerCreatePage.runProcessInstance(CLUSTER_NAME);
|
|
@@ -11,6 +11,7 @@ const UtilitiesPage_3 = require("../../pages/8.8/UtilitiesPage");
|
|
|
11
11
|
const apiHelpers_1 = require("../../utils/apiHelpers");
|
|
12
12
|
const expectLocatorWithRetry_1 = require("../../utils/assertionHelpers/expectLocatorWithRetry");
|
|
13
13
|
const users_1 = require("../../utils/users");
|
|
14
|
+
const constants_1 = require("../../utils/constants");
|
|
14
15
|
const testUser = (0, users_1.getTestUser)('seventeenthUser');
|
|
15
16
|
_8_8_1.test.describe.configure({ mode: 'parallel' });
|
|
16
17
|
_8_8_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
@@ -23,8 +24,7 @@ _8_8_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
23
24
|
await (0, _setup_1.captureScreenshot)(page, testInfo);
|
|
24
25
|
await (0, _setup_1.captureFailureVideo)(page, testInfo);
|
|
25
26
|
});
|
|
26
|
-
|
|
27
|
-
_8_8_1.test.skip('REST Connector No Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
27
|
+
(0, _8_8_1.test)('REST Connector No Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
28
28
|
_8_8_1.test.slow();
|
|
29
29
|
const processName = 'REST_Connector_No_Auth_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
|
|
30
30
|
await _8_8_1.test.step('Navigate to Web Modeler', async () => {
|
|
@@ -43,7 +43,7 @@ _8_8_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
43
43
|
await modelerHomePage.clickBpmnTemplateOption();
|
|
44
44
|
});
|
|
45
45
|
await _8_8_1.test.step('Create BPMN Diagram with REST Connector and Start Process Instance', async () => {
|
|
46
|
-
await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName,
|
|
46
|
+
await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, constants_1.REST_MOCK_URL, 'noAuth', 'body');
|
|
47
47
|
await modelerCreatePage.runProcessInstance(defaultClusterName);
|
|
48
48
|
});
|
|
49
49
|
await _8_8_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
|
|
@@ -61,8 +61,7 @@ _8_8_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
61
61
|
});
|
|
62
62
|
});
|
|
63
63
|
});
|
|
64
|
-
|
|
65
|
-
_8_8_1.test.skip('REST Connector Bearer Token Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
64
|
+
(0, _8_8_1.test)('REST Connector Bearer Token Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
66
65
|
_8_8_1.test.slow();
|
|
67
66
|
const processName = 'REST_Connector_Bearer_Auth_Process' +
|
|
68
67
|
(await (0, _setup_1.generateRandomStringAsync)(3));
|
|
@@ -82,9 +81,8 @@ _8_8_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
82
81
|
await modelerHomePage.clickBpmnTemplateOption();
|
|
83
82
|
});
|
|
84
83
|
await _8_8_1.test.step('Create BPMN Diagram with REST Connector with Bearer Token Auth and Start Process Instance', async () => {
|
|
85
|
-
await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName,
|
|
84
|
+
await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, constants_1.REST_MOCK_URL, 'bearer', '{message:response.body.message}');
|
|
86
85
|
await modelerCreatePage.runProcessInstance(defaultClusterName);
|
|
87
|
-
await (0, _setup_1.performBearerTokenAuthPostRequest)('https://camunda.proxy.beeceptor.com/pre-prod/bearer-auth-test', 'thisisabearertoken');
|
|
88
86
|
});
|
|
89
87
|
await _8_8_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
|
|
90
88
|
await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
|
|
@@ -155,8 +155,7 @@ _8_8_1.test.describe('SaaS Migration Path Tests', () => {
|
|
|
155
155
|
await (0, test_1.expect)(page.getByRole('cell', { name: 'Admin' })).toBeVisible();
|
|
156
156
|
});
|
|
157
157
|
});
|
|
158
|
-
|
|
159
|
-
_8_8_1.test.skip('Assert Connectors Still Function After SaaS Upgrade', async ({ operateHomePage, appsPage, operateProcessesPage, operateProcessInstancePage, }) => {
|
|
158
|
+
(0, _8_8_1.test)('Assert Connectors Still Function After SaaS Upgrade', async ({ operateHomePage, appsPage, operateProcessesPage, operateProcessInstancePage, }) => {
|
|
160
159
|
_8_8_1.test.slow();
|
|
161
160
|
// Use the same fixed name that was created in the pre-upgrade smoke tests
|
|
162
161
|
const processName = 'REST_Connector_Basic_Auth_ProcessUpgradeTest';
|
|
@@ -16,6 +16,7 @@ const OptimizeReportPage_1 = require("../../pages/8.8/OptimizeReportPage");
|
|
|
16
16
|
const expectLocatorWithRetry_1 = require("../../utils/assertionHelpers/expectLocatorWithRetry");
|
|
17
17
|
const users_1 = require("../../utils/users");
|
|
18
18
|
const sleep_1 = require("../../utils/sleep");
|
|
19
|
+
const constants_1 = require("../../utils/constants");
|
|
19
20
|
const testUser = (0, users_1.getTestUser)('thirteenthUser');
|
|
20
21
|
const CLUSTER_NAME = 'Test Cluster';
|
|
21
22
|
const TIMEOUT = {
|
|
@@ -170,8 +171,7 @@ _8_8_1.test.describe('Smoke Tests', () => {
|
|
|
170
171
|
});
|
|
171
172
|
});
|
|
172
173
|
});
|
|
173
|
-
|
|
174
|
-
_8_8_1.test.skip('Most Common REST Connector User Flow', async ({ page, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
174
|
+
(0, _8_8_1.test)('Most Common REST Connector User Flow', async ({ page, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
|
|
175
175
|
_8_8_1.test.slow();
|
|
176
176
|
const randomString = useFixedNames
|
|
177
177
|
? 'UpgradeTest'
|
|
@@ -190,7 +190,7 @@ _8_8_1.test.describe('Smoke Tests', () => {
|
|
|
190
190
|
await modelerHomePage.clickBpmnTemplateOption();
|
|
191
191
|
});
|
|
192
192
|
await _8_8_1.test.step('Create BPMN diagram with REST Connector using Basic Auth and start process', async () => {
|
|
193
|
-
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName,
|
|
193
|
+
await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, constants_1.REST_MOCK_BASIC_AUTH_URL, 'basic', '{message:response.body.message}', 'result', { username: 'username', password: 'password' });
|
|
194
194
|
await modelerCreatePage.runProcessInstance(CLUSTER_NAME);
|
|
195
195
|
});
|
|
196
196
|
await _8_8_1.test.step('Assert process completes in Operate and verify connector result', async () => {
|