@camunda/e2e-test-suite 0.0.997 → 0.0.998

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.
@@ -110,13 +110,30 @@ async function findClusterByName(page, clusterName) {
110
110
  return clusters.find((c) => c.name === clusterName);
111
111
  }
112
112
  async function deleteClusterViaApi(page, clusterName) {
113
- const cluster = await findClusterByName(page, clusterName);
114
- if (!cluster)
115
- return;
116
113
  const token = await getUserToken(page);
117
114
  const orgId = getOrgId();
118
- await page.request.delete(`${getConsoleBaseUrl()}/api/orgs/${orgId}/clusters/${cluster.uuid}`, { headers: { Authorization: `Bearer ${token}` } });
119
- await (0, sleep_1.sleep)(5000);
115
+ const deadline = Date.now() + 180000;
116
+ // Re-deleting a cluster that is already terminating can answer 409/400.
117
+ const deleteIssued = new Set();
118
+ // Loop until no cluster carries this name: there can be more than one, and
119
+ // deletion is asynchronous. Leaving one behind means the caller's create adds
120
+ // a duplicate, which breaks clickClusterLink in strict mode.
121
+ while (Date.now() < deadline) {
122
+ const cluster = await findClusterByName(page, clusterName);
123
+ if (!cluster)
124
+ return;
125
+ if (!deleteIssued.has(cluster.uuid)) {
126
+ const response = await page.request.delete(`${getConsoleBaseUrl()}/api/orgs/${orgId}/clusters/${cluster.uuid}`, { headers: { Authorization: `Bearer ${token}` } });
127
+ if (!response.ok() && response.status() !== 404) {
128
+ throw new Error(`Failed to delete cluster "${clusterName}" (${cluster.uuid}): ` +
129
+ `HTTP ${response.status()} - ${await response.text()}`);
130
+ }
131
+ deleteIssued.add(cluster.uuid);
132
+ }
133
+ await (0, sleep_1.sleep)(5000);
134
+ }
135
+ throw new Error(`Cluster "${clusterName}" still listed after 180s; creating another would ` +
136
+ `leave duplicates.`);
120
137
  }
121
138
  exports.deleteClusterViaApi = deleteClusterViaApi;
122
139
  function resolveMinorVersion() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camunda/e2e-test-suite",
3
- "version": "0.0.997",
3
+ "version": "0.0.998",
4
4
  "description": "End-to-end test helpers for Camunda 8",
5
5
  "repository": {
6
6
  "type": "git",