@camunda/e2e-test-suite 0.0.202 → 0.0.203

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.
Files changed (120) hide show
  1. package/README.md +1 -0
  2. package/dist/fixtures/8.10.d.ts +75 -0
  3. package/dist/fixtures/8.10.js +187 -0
  4. package/dist/pages/8.10/AppsPage.d.ts +38 -0
  5. package/dist/pages/8.10/AppsPage.js +398 -0
  6. package/dist/pages/8.10/Authorization.d.ts +31 -0
  7. package/dist/pages/8.10/Authorization.js +143 -0
  8. package/dist/pages/8.10/ClientCredentialsDetailsPage.d.ts +12 -0
  9. package/dist/pages/8.10/ClientCredentialsDetailsPage.js +36 -0
  10. package/dist/pages/8.10/ClusterDetailsPage.d.ts +81 -0
  11. package/dist/pages/8.10/ClusterDetailsPage.js +475 -0
  12. package/dist/pages/8.10/ClusterPage.d.ts +63 -0
  13. package/dist/pages/8.10/ClusterPage.js +349 -0
  14. package/dist/pages/8.10/ClusterSecretsPage.d.ts +46 -0
  15. package/dist/pages/8.10/ClusterSecretsPage.js +219 -0
  16. package/dist/pages/8.10/ConnectorMarketplacePage.d.ts +19 -0
  17. package/dist/pages/8.10/ConnectorMarketplacePage.js +56 -0
  18. package/dist/pages/8.10/ConnectorSettingsPage.d.ts +38 -0
  19. package/dist/pages/8.10/ConnectorSettingsPage.js +142 -0
  20. package/dist/pages/8.10/ConnectorTemplatePage.d.ts +11 -0
  21. package/dist/pages/8.10/ConnectorTemplatePage.js +34 -0
  22. package/dist/pages/8.10/ConsoleOrganizationPage.d.ts +76 -0
  23. package/dist/pages/8.10/ConsoleOrganizationPage.js +402 -0
  24. package/dist/pages/8.10/FormJsPage.d.ts +28 -0
  25. package/dist/pages/8.10/FormJsPage.js +85 -0
  26. package/dist/pages/8.10/HomePage.d.ts +27 -0
  27. package/dist/pages/8.10/HomePage.js +88 -0
  28. package/dist/pages/8.10/IdpCreatePage.d.ts +81 -0
  29. package/dist/pages/8.10/IdpCreatePage.js +355 -0
  30. package/dist/pages/8.10/LoginPage.d.ts +42 -0
  31. package/dist/pages/8.10/LoginPage.js +93 -0
  32. package/dist/pages/8.10/ModelerCreatePage.d.ts +224 -0
  33. package/dist/pages/8.10/ModelerCreatePage.js +1166 -0
  34. package/dist/pages/8.10/ModelerHomePage.d.ts +54 -0
  35. package/dist/pages/8.10/ModelerHomePage.js +235 -0
  36. package/dist/pages/8.10/ModelerUserInvitePage.d.ts +29 -0
  37. package/dist/pages/8.10/ModelerUserInvitePage.js +136 -0
  38. package/dist/pages/8.10/OCIdentityAuthorizationsPage.d.ts +11 -0
  39. package/dist/pages/8.10/OCIdentityAuthorizationsPage.js +32 -0
  40. package/dist/pages/8.10/OCIdentityGroupsPage.d.ts +38 -0
  41. package/dist/pages/8.10/OCIdentityGroupsPage.js +166 -0
  42. package/dist/pages/8.10/OCIdentityHomePage.d.ts +18 -0
  43. package/dist/pages/8.10/OCIdentityHomePage.js +57 -0
  44. package/dist/pages/8.10/OCIdentityMappingRulesPage.d.ts +23 -0
  45. package/dist/pages/8.10/OCIdentityMappingRulesPage.js +124 -0
  46. package/dist/pages/8.10/OCIdentityRolesPage.d.ts +40 -0
  47. package/dist/pages/8.10/OCIdentityRolesPage.js +182 -0
  48. package/dist/pages/8.10/OperateHomePage.d.ts +23 -0
  49. package/dist/pages/8.10/OperateHomePage.js +73 -0
  50. package/dist/pages/8.10/OperateProcessInstancePage.d.ts +23 -0
  51. package/dist/pages/8.10/OperateProcessInstancePage.js +94 -0
  52. package/dist/pages/8.10/OperateProcessesPage.d.ts +25 -0
  53. package/dist/pages/8.10/OperateProcessesPage.js +103 -0
  54. package/dist/pages/8.10/OptimizeCollectionsPage.d.ts +17 -0
  55. package/dist/pages/8.10/OptimizeCollectionsPage.js +68 -0
  56. package/dist/pages/8.10/OptimizeDashboardPage.d.ts +11 -0
  57. package/dist/pages/8.10/OptimizeDashboardPage.js +65 -0
  58. package/dist/pages/8.10/OptimizeHomePage.d.ts +13 -0
  59. package/dist/pages/8.10/OptimizeHomePage.js +55 -0
  60. package/dist/pages/8.10/OptimizeReportPage.d.ts +48 -0
  61. package/dist/pages/8.10/OptimizeReportPage.js +159 -0
  62. package/dist/pages/8.10/PlayPage.d.ts +14 -0
  63. package/dist/pages/8.10/PlayPage.js +68 -0
  64. package/dist/pages/8.10/SettingsPage.d.ts +10 -0
  65. package/dist/pages/8.10/SettingsPage.js +43 -0
  66. package/dist/pages/8.10/SignUpPage.d.ts +42 -0
  67. package/dist/pages/8.10/SignUpPage.js +134 -0
  68. package/dist/pages/8.10/TaskDetailsPage.d.ts +75 -0
  69. package/dist/pages/8.10/TaskDetailsPage.js +269 -0
  70. package/dist/pages/8.10/TaskPanelPage.d.ts +21 -0
  71. package/dist/pages/8.10/TaskPanelPage.js +93 -0
  72. package/dist/pages/8.10/TaskProcessesPage.d.ts +13 -0
  73. package/dist/pages/8.10/TaskProcessesPage.js +68 -0
  74. package/dist/pages/8.10/UtilitiesPage.d.ts +47 -0
  75. package/dist/pages/8.10/UtilitiesPage.js +489 -0
  76. package/dist/tests/8.10/access-user-role-management.spec.d.ts +1 -0
  77. package/dist/tests/8.10/access-user-role-management.spec.js +323 -0
  78. package/dist/tests/8.10/agentic-ai-user-flows.spec.d.ts +1 -0
  79. package/dist/tests/8.10/agentic-ai-user-flows.spec.js +185 -0
  80. package/dist/tests/8.10/api-tests-v2.spec.d.ts +1 -0
  81. package/dist/tests/8.10/api-tests-v2.spec.js +20 -0
  82. package/dist/tests/8.10/aws-cluster-user-flows.spec.d.ts +1 -0
  83. package/dist/tests/8.10/aws-cluster-user-flows.spec.js +178 -0
  84. package/dist/tests/8.10/cluster-variables.spec.d.ts +1 -0
  85. package/dist/tests/8.10/cluster-variables.spec.js +70 -0
  86. package/dist/tests/8.10/connectors-user-flows.spec.d.ts +1 -0
  87. package/dist/tests/8.10/connectors-user-flows.spec.js +479 -0
  88. package/dist/tests/8.10/console-user-flows.spec.d.ts +1 -0
  89. package/dist/tests/8.10/console-user-flows.spec.js +187 -0
  90. package/dist/tests/8.10/hto-user-flows.spec.d.ts +1 -0
  91. package/dist/tests/8.10/hto-user-flows.spec.js +471 -0
  92. package/dist/tests/8.10/idp-user-flows.spec.d.ts +1 -0
  93. package/dist/tests/8.10/idp-user-flows.spec.js +214 -0
  94. package/dist/tests/8.10/login-negative-tests.spec.d.ts +1 -0
  95. package/dist/tests/8.10/login-negative-tests.spec.js +29 -0
  96. package/dist/tests/8.10/login.spec.d.ts +1 -0
  97. package/dist/tests/8.10/login.spec.js +26 -0
  98. package/dist/tests/8.10/navigation.spec.d.ts +1 -0
  99. package/dist/tests/8.10/navigation.spec.js +65 -0
  100. package/dist/tests/8.10/operate-access-flow.spec.d.ts +1 -0
  101. package/dist/tests/8.10/operate-access-flow.spec.js +51 -0
  102. package/dist/tests/8.10/optimize-api-tests.spec.d.ts +1 -0
  103. package/dist/tests/8.10/optimize-api-tests.spec.js +268 -0
  104. package/dist/tests/8.10/optimize-user-flows.spec.d.ts +1 -0
  105. package/dist/tests/8.10/optimize-user-flows.spec.js +255 -0
  106. package/dist/tests/8.10/play.spec.d.ts +1 -0
  107. package/dist/tests/8.10/play.spec.js +85 -0
  108. package/dist/tests/8.10/rba-enabled-v1-user-flows.spec.d.ts +1 -0
  109. package/dist/tests/8.10/rba-enabled-v1-user-flows.spec.js +443 -0
  110. package/dist/tests/8.10/rba-enabled-v2-user-flows.spec.d.ts +1 -0
  111. package/dist/tests/8.10/rba-enabled-v2-user-flows.spec.js +446 -0
  112. package/dist/tests/8.10/smoke-tests.spec.d.ts +1 -0
  113. package/dist/tests/8.10/smoke-tests.spec.js +181 -0
  114. package/dist/tests/8.10/test-setup.spec.d.ts +1 -0
  115. package/dist/tests/8.10/test-setup.spec.js +94 -0
  116. package/dist/tests/8.10/utr-enabled-user-flows.spec.d.ts +1 -0
  117. package/dist/tests/8.10/utr-enabled-user-flows.spec.js +182 -0
  118. package/dist/tests/8.10/web-modeler-user-flows.spec.d.ts +1 -0
  119. package/dist/tests/8.10/web-modeler-user-flows.spec.js +544 -0
  120. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,214 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const test_1 = require("@playwright/test");
4
+ const _8_10_1 = require("../../fixtures/8.10");
5
+ const _setup_1 = require("../../test-setup.js");
6
+ const UtilitiesPage_1 = require("../../pages/8.10/UtilitiesPage");
7
+ const randomName_1 = require("../../utils/randomName");
8
+ const fileUpload_1 = require("../../utils/fileUpload");
9
+ const connectorSecrets_1 = require("../../utils/connectorSecrets");
10
+ const users_1 = require("../../utils/users");
11
+ const testUser = (0, users_1.getTestUser)('twentiethUser');
12
+ let idpApplicationName;
13
+ let idpDocumentExtractionTemplateName;
14
+ const unstructuredTestCases = [
15
+ {
16
+ provider: 'AWS',
17
+ model: 'Claude 3.5 Sonnet',
18
+ uploadFiles: ['idp/idp_sample_bank_statement.pdf'],
19
+ },
20
+ {
21
+ provider: 'Azure',
22
+ model: 'OpenAI Model Router',
23
+ uploadFiles: ['idp/idp_sample_bank_statement.pdf'],
24
+ },
25
+ {
26
+ provider: 'GCP',
27
+ model: 'Gemini 2.5 Pro',
28
+ uploadFiles: ['idp/idp_sample_bank_statement.pdf'],
29
+ },
30
+ ];
31
+ const structuredTestCases = [
32
+ {
33
+ provider: 'AWS',
34
+ model: '',
35
+ uploadFiles: ['idp/structured_invoice_test.pdf'],
36
+ extractionFiles: [
37
+ 'idp/structured_invoice_1.pdf',
38
+ 'idp/structured_invoice_2.pdf',
39
+ 'idp/structured_invoice_3.pdf',
40
+ ],
41
+ },
42
+ {
43
+ provider: 'GCP',
44
+ model: '',
45
+ uploadFiles: ['idp/structured_invoice_test.pdf'],
46
+ extractionFiles: [
47
+ 'idp/structured_invoice_1.pdf',
48
+ 'idp/structured_invoice_2.pdf',
49
+ 'idp/structured_invoice_3.pdf',
50
+ ],
51
+ },
52
+ ]; /* For structured documents, the model is empty since is not necessary */
53
+ _8_10_1.test.describe.configure({ mode: 'parallel' });
54
+ _8_10_1.test.describe('IDP User Flow Tests', () => {
55
+ const clusterName = 'Test Cluster';
56
+ _8_10_1.test.afterEach(async ({ page }, testInfo) => {
57
+ await (0, _setup_1.captureScreenshot)(page, testInfo);
58
+ await (0, _setup_1.captureFailureVideo)(page, testInfo);
59
+ });
60
+ _8_10_1.test.beforeEach(async ({ page, loginPage }, testInfo) => {
61
+ await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, testUser, (testInfo.workerIndex + 1) * 1000);
62
+ });
63
+ _8_10_1.test.describe('Unstructured Extraction', () => {
64
+ for (const params of unstructuredTestCases) {
65
+ (0, _8_10_1.test)(`${params.provider} unstructured (${params.model}) - User creates an idp application with a document extraction template`, async ({ page, idpCreatePage, modelerHomePage, homePage, appsPage, clusterPage, clusterSecretsPage, }) => {
66
+ _8_10_1.test.slow();
67
+ idpApplicationName = await (0, randomName_1.randomNameAgregator)(`${params.provider} unstructured` + ' - IDP_Application_Name');
68
+ idpDocumentExtractionTemplateName = await (0, randomName_1.randomNameAgregator)(`${params.provider} unstructured` + ' - IDP_Extraction_Template_Name');
69
+ await _8_10_1.test.step('Navigate to Connectors Secrets', async () => {
70
+ await homePage.clickClusters();
71
+ await clusterPage.clickClusterLink(clusterName);
72
+ await clusterPage.clickConnectorSecretsTab(clusterName);
73
+ await clusterSecretsPage.assertSecretsOrCreate(clusterName, connectorSecrets_1.allConnectorSecrets[params.provider]);
74
+ });
75
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
76
+ await (0, test_1.expect)(homePage.camundaComponentsButton).toBeVisible({
77
+ timeout: 120000,
78
+ });
79
+ await appsPage.clickCamundaApps();
80
+ await appsPage.clickModeler();
81
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
82
+ timeout: 120000,
83
+ });
84
+ });
85
+ await _8_10_1.test.step('Navigate to Cross Component Test Project', async () => {
86
+ await modelerHomePage.clickMessageBanner();
87
+ await modelerHomePage.clickCrossComponentProjectFolder();
88
+ });
89
+ await _8_10_1.test.step('Add an IDP application to the project', async () => {
90
+ await modelerHomePage.clickDiagramTypeDropdown();
91
+ await modelerHomePage.clickIdpApplicationTemplateOption();
92
+ });
93
+ await _8_10_1.test.step('Creates a document extraction template', async () => {
94
+ await modelerHomePage.enterIdpApplicationName(idpApplicationName);
95
+ await modelerHomePage.selectCluster(clusterName);
96
+ await modelerHomePage.clickCreateIdpApplicationButton();
97
+ await idpCreatePage.clickCreateIdpTemplateButton();
98
+ await idpCreatePage.fillIdpExtractionTemplateName(`${idpDocumentExtractionTemplateName}`);
99
+ await idpCreatePage.fillIdpDescriptionField(`${idpDocumentExtractionTemplateName} description`);
100
+ await idpCreatePage.selectProvider(params.provider);
101
+ await idpCreatePage.clickCreateIdpExtractationTemplateButton();
102
+ });
103
+ await _8_10_1.test.step('Upload a file for extraction', async () => {
104
+ await idpCreatePage.clickUnstructuredUploadFilesButton();
105
+ await (0, fileUpload_1.uploadFile)(page, params.uploadFiles);
106
+ await idpCreatePage.clickExtractButton();
107
+ });
108
+ await _8_10_1.test.step('Add a field for extraction and extract the data', async () => {
109
+ await idpCreatePage.fillExtractFieldName('bank_account_number');
110
+ await idpCreatePage.fillPromptField();
111
+ await idpCreatePage.clickAddExtractionFieldButton();
112
+ await idpCreatePage.selectExtractionModelOption(params.model);
113
+ await idpCreatePage.clickExtractDocumentButton();
114
+ });
115
+ await _8_10_1.test.step('Save extracted data as a test case', async () => {
116
+ await idpCreatePage.clickSaveAsTestCaseButton();
117
+ await idpCreatePage.clickCloseToastNotification();
118
+ });
119
+ await _8_10_1.test.step('Validate extraction', async () => {
120
+ await idpCreatePage.clickValidateExtractionTab();
121
+ await idpCreatePage.clickExpandAllRowsButton();
122
+ await idpCreatePage.assertPassTestCaseResultsRow();
123
+ });
124
+ await _8_10_1.test.step('Publish the IDP application to project', async () => {
125
+ await idpCreatePage.clickPublishButton();
126
+ await idpCreatePage.clickPublishToProjecOption();
127
+ await idpCreatePage.fillVersionFieldName(idpApplicationName);
128
+ await idpCreatePage.fillVersionFieldDescription(idpApplicationName);
129
+ await idpCreatePage.clickPublishButtonModal();
130
+ await idpCreatePage.assertIdpSuccessPublishNotification();
131
+ });
132
+ });
133
+ }
134
+ });
135
+ _8_10_1.test.describe('Structured Extraction', () => {
136
+ for (const params of structuredTestCases) {
137
+ (0, _8_10_1.test)(`${params.provider} structured - User creates an idp application with a document extraction template`, async ({ page, idpCreatePage, modelerHomePage, homePage, appsPage, clusterPage, clusterSecretsPage, }) => {
138
+ _8_10_1.test.slow();
139
+ idpApplicationName = await (0, randomName_1.randomNameAgregator)(`${params.provider} structured` + ' - IDP_Application_Name');
140
+ idpDocumentExtractionTemplateName = await (0, randomName_1.randomNameAgregator)(`${params.provider} structured` + ' - IDP_Extraction_Template_Name');
141
+ await _8_10_1.test.step('Navigate to Connectors Secrets', async () => {
142
+ await homePage.clickClusters();
143
+ await clusterPage.clickClusterLink(clusterName);
144
+ await clusterPage.clickConnectorSecretsTab(clusterName);
145
+ await clusterSecretsPage.assertSecretsOrCreate(clusterName, connectorSecrets_1.allConnectorSecrets[params.provider]);
146
+ });
147
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
148
+ await (0, test_1.expect)(homePage.camundaComponentsButton).toBeVisible({
149
+ timeout: 120000,
150
+ });
151
+ await appsPage.clickCamundaApps();
152
+ await appsPage.clickModeler();
153
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
154
+ timeout: 120000,
155
+ });
156
+ });
157
+ await _8_10_1.test.step('Navigate to Cross Component Test Project', async () => {
158
+ await modelerHomePage.clickMessageBanner();
159
+ await modelerHomePage.clickCrossComponentProjectFolder();
160
+ });
161
+ await _8_10_1.test.step('Add an IDP application to the project', async () => {
162
+ await modelerHomePage.clickDiagramTypeDropdown();
163
+ await modelerHomePage.clickIdpApplicationTemplateOption();
164
+ });
165
+ await _8_10_1.test.step('Creates a document extraction template', async () => {
166
+ await modelerHomePage.enterIdpApplicationName(idpApplicationName);
167
+ await modelerHomePage.selectCluster(clusterName);
168
+ await modelerHomePage.clickCreateIdpApplicationButton();
169
+ await idpCreatePage.clickCreateIdpTemplateButton();
170
+ await idpCreatePage.selectStructuredDataExtractionMethod();
171
+ await idpCreatePage.fillIdpExtractionTemplateName(`${idpDocumentExtractionTemplateName}`);
172
+ await idpCreatePage.fillIdpDescriptionField(`${idpDocumentExtractionTemplateName} - description`);
173
+ await idpCreatePage.selectProvider(params.provider);
174
+ await idpCreatePage.clickCreateIdpExtractationTemplateButton();
175
+ });
176
+ await _8_10_1.test.step('Upload a file for extraction', async () => {
177
+ await idpCreatePage.clickStructuredUploadFilesButton();
178
+ await (0, fileUpload_1.uploadFile)(page, params.uploadFiles);
179
+ });
180
+ await _8_10_1.test.step('Select all the fields extracted rows', async () => {
181
+ await idpCreatePage.selectAllExtractionFields();
182
+ });
183
+ await _8_10_1.test.step('Switch to the tables tab', async () => {
184
+ await idpCreatePage.clickTablesTab();
185
+ });
186
+ await _8_10_1.test.step('Select all the extracted tables', async () => {
187
+ await idpCreatePage.selectAllExtractedTables();
188
+ });
189
+ await _8_10_1.test.step('Confirm selection of fields and tables', async () => {
190
+ await idpCreatePage.assertFieldsAndTablesSelection();
191
+ });
192
+ await _8_10_1.test.step('Click on the Test Template tab', async () => {
193
+ await idpCreatePage.clickTestTemplateTab();
194
+ });
195
+ await _8_10_1.test.step('Upload multiples files for testing the extraction', async () => {
196
+ await idpCreatePage.clickStructuredUploadFilesButton();
197
+ await (0, fileUpload_1.uploadFile)(page, params.extractionFiles);
198
+ await idpCreatePage.clickTestExtractionTemplateButton();
199
+ });
200
+ await _8_10_1.test.step('Test Summary Results and Details Results sections are visible ', async () => {
201
+ await idpCreatePage.extractionResultsAreVisible();
202
+ });
203
+ await _8_10_1.test.step('Publish the IDP application to project', async () => {
204
+ await idpCreatePage.clickPublishTemplateButton();
205
+ await idpCreatePage.clickPublishToProjecOption();
206
+ await idpCreatePage.fillVersionFieldName(idpApplicationName);
207
+ await idpCreatePage.fillVersionFieldDescription(idpApplicationName);
208
+ await idpCreatePage.clickPublishTemplateToProjectButton();
209
+ await idpCreatePage.assertStructuredTemplateSuccessNotification();
210
+ });
211
+ });
212
+ }
213
+ });
214
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const test_1 = require("@playwright/test");
4
+ const _setup_1 = require("../../test-setup.js");
5
+ const _8_10_1 = require("../../fixtures/8.10");
6
+ const sleep_1 = require("../../utils/sleep");
7
+ _8_10_1.test.describe.configure({ mode: 'parallel' });
8
+ _8_10_1.test.describe('Login Tests - invalid-input - (negative) generated', () => {
9
+ _8_10_1.test.beforeEach(async ({ page }, testInfo) => {
10
+ await page.goto('/');
11
+ await (0, sleep_1.sleep)((testInfo.workerIndex + 1) * 1000);
12
+ });
13
+ _8_10_1.test.afterEach(async ({ page }, testInfo) => {
14
+ await (0, _setup_1.captureScreenshot)(page, testInfo);
15
+ await (0, _setup_1.captureFailureVideo)(page, testInfo);
16
+ });
17
+ (0, _8_10_1.test)('Basic Login - invalid usernameInput minlength', async ({ loginPage }) => {
18
+ const usernameInputTooShort = 'aaaa';
19
+ await loginPage.fillUsername(usernameInputTooShort);
20
+ await loginPage.clickContinueButton();
21
+ await (0, test_1.expect)(loginPage.usernameInput.locator).toHaveAttribute('aria-invalid', 'true');
22
+ });
23
+ (0, _8_10_1.test)('Basic Login - invalid usernameInput maxlength', async ({ loginPage }) => {
24
+ const usernameInputTooLong = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
25
+ await loginPage.fillUsername(usernameInputTooLong);
26
+ await loginPage.clickContinueButton();
27
+ await (0, test_1.expect)(loginPage.usernameInput.locator).toHaveAttribute('aria-invalid', 'true');
28
+ });
29
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const test_1 = require("@playwright/test");
4
+ const _setup_1 = require("../../test-setup.js");
5
+ const _8_10_1 = require("../../fixtures/8.10");
6
+ const sleep_1 = require("../../utils/sleep");
7
+ _8_10_1.test.describe.configure({ mode: 'parallel' });
8
+ _8_10_1.test.describe('Login Tests', () => {
9
+ _8_10_1.test.beforeEach(async ({ page }, testInfo) => {
10
+ await page.goto('/');
11
+ await (0, sleep_1.sleep)((testInfo.workerIndex + 1) * 1000);
12
+ });
13
+ _8_10_1.test.afterEach(async ({ page }, testInfo) => {
14
+ await (0, _setup_1.captureScreenshot)(page, testInfo);
15
+ await (0, _setup_1.captureFailureVideo)(page, testInfo);
16
+ });
17
+ (0, _8_10_1.test)('Basic Login', async ({ loginPage, homePage }) => {
18
+ await loginPage.fillUsername(process.env.C8_USERNAME);
19
+ await (0, test_1.expect)(loginPage.loginMessage).toBeVisible();
20
+ await loginPage.clickContinueButton();
21
+ await loginPage.fillPassword(process.env.C8_PASSWORD);
22
+ await (0, test_1.expect)(loginPage.passwordHeading).toBeVisible();
23
+ await loginPage.clickLoginButton();
24
+ await (0, test_1.expect)(homePage.consoleBanner).toBeVisible({ timeout: 120000 });
25
+ });
26
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const test_1 = require("@playwright/test");
4
+ const _8_10_1 = require("../../fixtures/8.10");
5
+ const _setup_1 = require("../../test-setup.js");
6
+ const UtilitiesPage_1 = require("../../pages/8.10/UtilitiesPage");
7
+ const users_1 = require("../../utils/users");
8
+ const testUser = (0, users_1.getTestUser)('twentyFirstUser');
9
+ _8_10_1.test.describe.configure({ mode: 'parallel' });
10
+ _8_10_1.test.describe('Navigation Tests', () => {
11
+ const clusterName = 'Test Cluster';
12
+ _8_10_1.test.beforeEach(async ({ page, loginPage }, testInfo) => {
13
+ await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, testUser, (testInfo.workerIndex + 1) * 1000);
14
+ });
15
+ _8_10_1.test.afterEach(async ({ page }, testInfo) => {
16
+ await (0, _setup_1.captureScreenshot)(page, testInfo);
17
+ await (0, _setup_1.captureFailureVideo)(page, testInfo);
18
+ });
19
+ //Skipped due to bug: Tasklist
20
+ _8_10_1.test.skip('Basic Navigation', async ({ homePage, appsPage, modelerHomePage, operateHomePage, optimizeHomePage, taskPanelPage, ocIdentityHomePage, }) => {
21
+ await _8_10_1.test.step('Assert Web Modeler Navigation', async () => {
22
+ await appsPage.clickCamundaApps();
23
+ await appsPage.clickModeler();
24
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
25
+ timeout: 120000,
26
+ });
27
+ await modelerHomePage.clickMessageBanner();
28
+ });
29
+ await _8_10_1.test.step('Assert Console Navigation', async () => {
30
+ await appsPage.clickCamundaApps();
31
+ await appsPage.clickConsoleLink();
32
+ await (0, test_1.expect)(homePage.consoleBanner).toBeVisible({
33
+ timeout: 120000,
34
+ });
35
+ });
36
+ await _8_10_1.test.step('Assert Operate Navigation', async () => {
37
+ await appsPage.clickCamundaApps();
38
+ await appsPage.clickOperate(clusterName);
39
+ await (0, test_1.expect)(operateHomePage.operateBanner).toBeVisible({
40
+ timeout: 120000,
41
+ });
42
+ });
43
+ await _8_10_1.test.step('Assert Optimize Navigation', async () => {
44
+ await appsPage.clickCamundaApps();
45
+ await appsPage.clickOptimize(clusterName);
46
+ await (0, test_1.expect)(optimizeHomePage.optimizeBanner).toBeVisible({
47
+ timeout: 120000,
48
+ });
49
+ });
50
+ await _8_10_1.test.step('Assert Tasklist Navigation', async () => {
51
+ await appsPage.clickCamundaApps();
52
+ await appsPage.clickTasklist(clusterName);
53
+ await (0, test_1.expect)(taskPanelPage.taskListPageBanner).toBeVisible({
54
+ timeout: 120000,
55
+ });
56
+ });
57
+ await _8_10_1.test.step('Assert Tasklist Navigation', async () => {
58
+ await appsPage.clickCamundaApps();
59
+ await appsPage.clickAdmin(clusterName);
60
+ await (0, test_1.expect)(ocIdentityHomePage.adminBanner).toBeVisible({
61
+ timeout: 120000,
62
+ });
63
+ });
64
+ });
65
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const test_1 = require("@playwright/test");
4
+ const _8_10_1 = require("../../fixtures/8.10");
5
+ const UtilitiesPage_1 = require("../../pages/8.10/UtilitiesPage");
6
+ const _setup_1 = require("../../test-setup.js");
7
+ const users_1 = require("../../utils/users");
8
+ const testUser = (0, users_1.getTestUser)('twentySecondUser');
9
+ // This test covers the manual scenario: create a new API client via UI, copy the Operate URL, and verify the Operate endpoint denies unauthenticated access.
10
+ _8_10_1.test.describe.configure({ mode: 'parallel' });
11
+ _8_10_1.test.describe('Operate access requires authentication @tasklistV2', () => {
12
+ let clientName;
13
+ const clusterName = 'Test Cluster';
14
+ _8_10_1.test.afterEach(async ({ page, clusterDetailsPage }, testInfo) => {
15
+ await (0, _setup_1.captureScreenshot)(page, testInfo);
16
+ await (0, _setup_1.captureFailureVideo)(page, testInfo);
17
+ await clusterDetailsPage.clickAPITab();
18
+ await clusterDetailsPage.deleteAPIClientsIfExist(clientName);
19
+ });
20
+ _8_10_1.test.beforeEach(async ({ page, loginPage }, testInfo) => {
21
+ await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, testUser, (testInfo.workerIndex + 1) * 1000);
22
+ });
23
+ (0, _8_10_1.test)('check that request POST /v2/process-definitions/search returns 401 without credentials', async ({ homePage, clusterPage, clusterDetailsPage, clientCredentialsDetailsPage, request, }) => {
24
+ clientName = `operate-deny-${await (0, _setup_1.generateRandomStringAsync)(5)}`;
25
+ await _8_10_1.test.step('Add API Client to Cluster', async () => {
26
+ await homePage.clickClusters();
27
+ await clusterPage.clickClusterLink(clusterName);
28
+ await clusterDetailsPage.clickAPITab();
29
+ await clusterDetailsPage.createAPIClient(clientName);
30
+ await clusterDetailsPage.clickCloseModalButton();
31
+ await (0, test_1.expect)(clusterDetailsPage.clientsList.filter({ hasText: clientName })).toBeVisible({ timeout: 6000 });
32
+ });
33
+ let operateUrl = '';
34
+ await _8_10_1.test.step('Capture Operate URL from client credentials page and close it', async () => {
35
+ await clusterDetailsPage.searchAndClickClientCredentialsLink(clientName);
36
+ operateUrl = await clientCredentialsDetailsPage.getOperateUrl();
37
+ (0, test_1.expect)(operateUrl).toMatch(/^https?:\/\//);
38
+ await clientCredentialsDetailsPage.goBack();
39
+ await clusterDetailsPage.clickAPITab();
40
+ });
41
+ await _8_10_1.test.step('POST search endpoint without auth should be rejected', async () => {
42
+ const sanitizedOperateUrl = operateUrl.replace(/\/$/, '');
43
+ const response = await request.post(`${sanitizedOperateUrl}/v2/process-definitions/search`, {
44
+ data: { filter: {}, size: 10 },
45
+ });
46
+ (0, test_1.expect)(response.status()).toBe(401);
47
+ const body = await response.text();
48
+ (0, test_1.expect)(body.length).toBe(0);
49
+ });
50
+ });
51
+ });
@@ -0,0 +1 @@
1
+ export {};