This is an automated email from the ASF dual-hosted git repository.

riemer pushed a commit to branch modify-data-table-actions
in repository https://gitbox.apache.org/repos/asf/streampipes.git

commit ffc8b9eb00c47cf6462d3cfee52936406905d442
Author: Dominik Riemer <[email protected]>
AuthorDate: Mon Oct 6 14:34:53 2025 +0200

    Fix cypress tests
---
 ui/cypress.config.ts                                 | 20 +++++++++++++++++++-
 ui/cypress/support/utils/DataDownloadDialogUtils.ts  |  2 ++
 ui/cypress/support/utils/connect/ConnectBtns.ts      |  6 ++++++
 ui/cypress/support/utils/connect/ConnectUtils.ts     | 19 +++++++++++++++----
 ui/cypress/support/utils/datalake/DataLakeBtns.ts    |  7 ++++++-
 ui/cypress/support/utils/datalake/DataLakeUtils.ts   |  1 +
 ui/cypress/tests/connect/editAdapter.smoke.spec.ts   |  4 +++-
 .../editAdapterSettingsAndPipeline.smoke.spec.ts     |  3 +++
 .../editAdapterTransformationRulesAreKept.spec.ts    |  1 +
 .../tests/connect/editAdapterValuesAndFields.spec.ts |  2 ++
 ui/cypress/tests/connect/fileStream.spec.ts          |  4 +++-
 .../tests/connect/machineDataSimulator.smoke.spec.ts |  2 +-
 ui/cypress/tests/datalake/timeOrderDataView.spec.ts  |  2 +-
 13 files changed, 63 insertions(+), 10 deletions(-)

diff --git a/ui/cypress.config.ts b/ui/cypress.config.ts
index 822e9a8c0e..1c62181e9c 100644
--- a/ui/cypress.config.ts
+++ b/ui/cypress.config.ts
@@ -45,7 +45,25 @@ export default defineConfig({
         // We've imported your old cypress plugins here.
         // You may want to clean this up later by importing these.
         setupNodeEvents(on, config) {
-            return require('./cypress/plugins/index.ts')(on, config);
+            const plugins = require('./cypress/plugins/index.ts')(on, config);
+
+            // Add language setting for Chromium & Firefox
+            on('before:browser:launch', (browser, launchOptions) => {
+                if (browser.family === 'chromium') {
+                    // Chrome / Edge
+                    launchOptions.args.push('--lang=en-US,en');
+                } else if (browser.family === 'firefox') {
+                    // Firefox
+                    // preferences is optional in the type, so guard + cast
+                    launchOptions.preferences ??= {};
+                    (launchOptions.preferences as Record<string, unknown>)[
+                        'intl.accept_languages'
+                    ] = 'en-US';
+                }
+                return launchOptions;
+            });
+
+            return plugins;
         },
         specPattern: 'cypress/tests/**/*.{js,jsx,ts,tsx}',
         baseUrl: 'http://localhost:80',
diff --git a/ui/cypress/support/utils/DataDownloadDialogUtils.ts 
b/ui/cypress/support/utils/DataDownloadDialogUtils.ts
index 3a3b2da6ed..b7cf5a148d 100644
--- a/ui/cypress/support/utils/DataDownloadDialogUtils.ts
+++ b/ui/cypress/support/utils/DataDownloadDialogUtils.ts
@@ -20,6 +20,7 @@ import { ExportConfig } from 
'../../../projects/streampipes/shared-ui/src/lib/di
 import { DataLakeUtils } from './datalake/DataLakeUtils';
 import { FileNameService } from 
'../../../projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/services/file-name.service';
 import { CsvFormatExportConfig } from 
'../../../projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/model/format-export-config.model';
+import { GeneralUtils } from './GeneralUtils';
 
 export class DataDownloadDialogUtils {
     public static testDownload(
@@ -30,6 +31,7 @@ export class DataDownloadDialogUtils {
         // const exportDate: Date;
         DataLakeUtils.goToDatalake();
 
+        GeneralUtils.openMenuForRow(dataViewName);
         // select data view in edit mode
         DataLakeUtils.editDataView(dataViewName);
 
diff --git a/ui/cypress/support/utils/connect/ConnectBtns.ts 
b/ui/cypress/support/utils/connect/ConnectBtns.ts
index a6478b6af4..f0aa5f325b 100644
--- a/ui/cypress/support/utils/connect/ConnectBtns.ts
+++ b/ui/cypress/support/utils/connect/ConnectBtns.ts
@@ -15,6 +15,8 @@
  *  limitations under the License.
  *
  */
+import { GeneralUtils } from '../GeneralUtils';
+
 export class ConnectBtns {
     public static detailsAdapter() {
         return cy.dataCy('details-adapter', { timeout: 10000 });
@@ -42,6 +44,10 @@ export class ConnectBtns {
         });
     }
 
+    public static openActionsMenu(adapterName: string) {
+        GeneralUtils.openMenuForRow(adapterName);
+    }
+
     public static refreshSchema() {
         return cy.dataCy('refresh-schema');
     }
diff --git a/ui/cypress/support/utils/connect/ConnectUtils.ts 
b/ui/cypress/support/utils/connect/ConnectUtils.ts
index 19e0f32874..91c5be1f44 100644
--- a/ui/cypress/support/utils/connect/ConnectUtils.ts
+++ b/ui/cypress/support/utils/connect/ConnectUtils.ts
@@ -24,6 +24,7 @@ import { ConnectBtns } from './ConnectBtns';
 import { AdapterBuilder } from '../../builder/AdapterBuilder';
 import { UserUtils } from '../UserUtils';
 import { PipelineUtils } from '../pipeline/PipelineUtils';
+import { GeneralUtils } from '../GeneralUtils';
 
 export class ConnectUtils {
     public static testAdapter(
@@ -229,10 +230,11 @@ export class ConnectUtils {
         cy.get('button').contains('Close').parent().click();
     }
 
-    public static deleteAdapter() {
+    public static deleteAdapter(adapterName: string) {
         // Delete adapter
         this.goToConnect();
 
+        GeneralUtils.openMenuForRow(adapterName);
         cy.dataCy('delete-adapter').should('have.length', 1);
         this.clickDelete();
         cy.dataCy('adapter-deletion-in-progress', { timeout: 10000 }).should(
@@ -255,6 +257,7 @@ export class ConnectUtils {
     public static deleteAdapterAndAssociatedPipelines(switchUserCheck = false) 
{
         // Delete adapter and associated pipelines
         this.goToConnect();
+        ConnectBtns.openActionsMenu('simulator');
         cy.dataCy('delete-adapter').should('have.length', 1);
         this.clickDelete();
         cy.dataCy('delete-adapter-and-associated-pipelines-confirmation', {
@@ -279,6 +282,7 @@ export class ConnectUtils {
     public static deleteAdapterAndAssociatedPipelinesPermissionDenied() {
         // Associated pipelines not owned by the user (unless admin) should 
not be deleted during adapter deletion
         this.goToConnect();
+        ConnectBtns.openActionsMenu('simulator');
         cy.dataCy('delete-adapter').should('have.length', 1);
         this.clickDelete();
         cy.dataCy('delete-adapter-and-associated-pipelines-confirmation', {
@@ -363,12 +367,15 @@ export class ConnectUtils {
         return adapterConfiguration;
     }
 
-    public static startAndValidateAdapter(amountOfProperties: number) {
+    public static startAndValidateAdapter(
+        adapterName: string,
+        amountOfProperties: number,
+    ) {
         ConnectBtns.startAdapter().should('not.be.disabled');
 
         ConnectBtns.startAdapter().click();
 
-        ConnectUtils.validateEventsInPreview(amountOfProperties);
+        ConnectUtils.validateEventsInPreview(adapterName, amountOfProperties);
     }
 
     public static getLivePreviewValue(runtimeName: string) {
@@ -377,8 +384,12 @@ export class ConnectUtils {
         });
     }
 
-    public static validateEventsInPreview(amountOfProperties: number) {
+    public static validateEventsInPreview(
+        adapterName: string,
+        amountOfProperties: number,
+    ) {
         // View data
+        ConnectBtns.openActionsMenu(adapterName);
         ConnectBtns.detailsAdapter().click();
 
         // Validate resulting event
diff --git a/ui/cypress/support/utils/datalake/DataLakeBtns.ts 
b/ui/cypress/support/utils/datalake/DataLakeBtns.ts
index 9f456e2f70..35b3ca1b66 100644
--- a/ui/cypress/support/utils/datalake/DataLakeBtns.ts
+++ b/ui/cypress/support/utils/datalake/DataLakeBtns.ts
@@ -16,6 +16,8 @@
  *
  */
 
+import { GeneralUtils } from '../GeneralUtils';
+
 export class DataLakeBtns {
     public static refreshDataLakeMeasures() {
         return cy.dataCy('refresh-data-lake-measures');
@@ -26,6 +28,9 @@ export class DataLakeBtns {
     }
 
     public static editDataViewButton(widgetName: string) {
-        return cy.dataCy('edit-data-view-' + widgetName).click();
+        GeneralUtils.openMenuForRow(widgetName);
+        return cy
+            .dataCy('edit-data-view-' + widgetName.replaceAll(' ', ''))
+            .click();
     }
 }
diff --git a/ui/cypress/support/utils/datalake/DataLakeUtils.ts 
b/ui/cypress/support/utils/datalake/DataLakeUtils.ts
index 4b95327321..4bf4ba5cc8 100644
--- a/ui/cypress/support/utils/datalake/DataLakeUtils.ts
+++ b/ui/cypress/support/utils/datalake/DataLakeUtils.ts
@@ -182,6 +182,7 @@ export class DataLakeUtils {
     public static editDataView(dataViewName: string) {
         // Click edit button
         // following only works if single view is available
+        GeneralUtils.openMenuForRow(dataViewName);
         cy.dataCy('edit-data-view-' + dataViewName).click();
     }
 
diff --git a/ui/cypress/tests/connect/editAdapter.smoke.spec.ts 
b/ui/cypress/tests/connect/editAdapter.smoke.spec.ts
index 7187510bc9..de2efbe1e9 100644
--- a/ui/cypress/tests/connect/editAdapter.smoke.spec.ts
+++ b/ui/cypress/tests/connect/editAdapter.smoke.spec.ts
@@ -40,6 +40,7 @@ describe('Test Edit Adapter', () => {
 
         // click edit adapter
         ConnectBtns.adapterOperationInProgressSpinner().should('not.exist');
+        ConnectBtns.openActionsMenu('simulator');
         ConnectBtns.editAdapter().should('not.be.disabled');
         ConnectBtns.editAdapter().click();
 
@@ -68,7 +69,7 @@ describe('Test Edit Adapter', () => {
 
         ConnectUtils.closeAdapterPreview();
 
-        ConnectUtils.startAndValidateAdapter(3);
+        ConnectUtils.startAndValidateAdapter('Edited Adapter', 3);
         ConnectUtils.goToConnect();
 
         // Validate that name of adapter and data stream
@@ -82,6 +83,7 @@ describe('Test Edit Adapter', () => {
 
         // stop adapter and edit adapter
         ConnectBtns.stopAdapter().click();
+        ConnectBtns.openActionsMenu('simulator');
         ConnectBtns.editAdapter().click();
 
         // change data type of density to integer
diff --git 
a/ui/cypress/tests/connect/editAdapterSettingsAndPipeline.smoke.spec.ts 
b/ui/cypress/tests/connect/editAdapterSettingsAndPipeline.smoke.spec.ts
index 62b3f062f2..3b1e63e37c 100644
--- a/ui/cypress/tests/connect/editAdapterSettingsAndPipeline.smoke.spec.ts
+++ b/ui/cypress/tests/connect/editAdapterSettingsAndPipeline.smoke.spec.ts
@@ -24,6 +24,7 @@ import { PipelineBuilder } from 
'../../support/builder/PipelineBuilder';
 import { AdapterBuilder } from '../../support/builder/AdapterBuilder';
 import { DashboardUtils } from '../../support/utils/DashboardUtils';
 import { DataLakeUtils } from '../../support/utils/datalake/DataLakeUtils';
+import { GeneralUtils } from '../../support/utils/GeneralUtils';
 
 describe('Test Edit Adapter and Pipeline', () => {
     beforeEach('Setup Test', () => {
@@ -52,6 +53,7 @@ describe('Test Edit Adapter and Pipeline', () => {
     it('Edit adapter and test Pipeline behaviour', () => {
         // Edit Apater and select pressure
         ConnectUtils.goToConnect();
+        ConnectBtns.openActionsMenu('simulator');
         ConnectBtns.editAdapter().should('not.be.disabled');
         ConnectBtns.editAdapter().click();
         const newUserConfiguration = AdapterBuilder.create(
@@ -86,6 +88,7 @@ describe('Test Edit Adapter and Pipeline', () => {
             timeout: 60000,
         }).should('be.visible');
 
+        GeneralUtils.openMenuForRow('Pipeline Test');
         cy.dataCy('modify-pipeline-btn').click();
         cy.dataCy('settings-pipeline-element-button').eq(0).click();
         cy.dataCy('number-mapping').contains('pressure').click({ force: true 
});
diff --git 
a/ui/cypress/tests/connect/editAdapterTransformationRulesAreKept.spec.ts 
b/ui/cypress/tests/connect/editAdapterTransformationRulesAreKept.spec.ts
index 1885af9ea3..764f374b56 100644
--- a/ui/cypress/tests/connect/editAdapterTransformationRulesAreKept.spec.ts
+++ b/ui/cypress/tests/connect/editAdapterTransformationRulesAreKept.spec.ts
@@ -46,6 +46,7 @@ describe('Test Adapter Transformation Rules are properly 
stored', () => {
         ConnectUtils.closeAdapterPreview();
 
         // Edit adapter and check if given values and added property still 
provided
+        ConnectBtns.openActionsMenu('Test Adapter');
         ConnectBtns.editAdapter().should('not.be.disabled');
         ConnectBtns.editAdapter().click();
         cy.contains('Next').click();
diff --git a/ui/cypress/tests/connect/editAdapterValuesAndFields.spec.ts 
b/ui/cypress/tests/connect/editAdapterValuesAndFields.spec.ts
index 15cba76846..ff9cf46ba0 100644
--- a/ui/cypress/tests/connect/editAdapterValuesAndFields.spec.ts
+++ b/ui/cypress/tests/connect/editAdapterValuesAndFields.spec.ts
@@ -70,6 +70,7 @@ describe('Test Edit Adapter', () => {
         ConnectUtils.closeAdapterPreview();
 
         // Edit adapter and check if given values and added property still 
provided
+        ConnectBtns.openActionsMenu('Test Adapter');
         ConnectBtns.editAdapter().should('not.be.disabled');
         ConnectBtns.editAdapter().click();
         cy.contains('Next').click();
@@ -106,6 +107,7 @@ describe('Test Edit Adapter', () => {
         ConnectUtils.closeAdapterPreview();
 
         // Configure adapter with pressure instead of flowrate
+        ConnectBtns.openActionsMenu('Test Adapter');
         ConnectBtns.editAdapter().click();
         const newUserConfiguration = AdapterBuilder.create(
             'Machine_Data_Simulator',
diff --git a/ui/cypress/tests/connect/fileStream.spec.ts 
b/ui/cypress/tests/connect/fileStream.spec.ts
index 16050b097f..f69c1c7eaa 100644
--- a/ui/cypress/tests/connect/fileStream.spec.ts
+++ b/ui/cypress/tests/connect/fileStream.spec.ts
@@ -47,7 +47,9 @@ describe(
                 .build();
 
             ConnectUtils.testAdapter(adapterInput);
-            ConnectUtils.deleteAdapter();
+            ConnectUtils.deleteAdapter(
+                adapterInput.adapterName.replaceAll(' ', ''),
+            );
         });
 
         it('File stream adapter should not allow add timestamp option in 
schema editor', () => {
diff --git a/ui/cypress/tests/connect/machineDataSimulator.smoke.spec.ts 
b/ui/cypress/tests/connect/machineDataSimulator.smoke.spec.ts
index 3875d5bb14..2f26342c5f 100644
--- a/ui/cypress/tests/connect/machineDataSimulator.smoke.spec.ts
+++ b/ui/cypress/tests/connect/machineDataSimulator.smoke.spec.ts
@@ -31,6 +31,6 @@ describe('Test Machine Data Simulator Adapter', () => {
             .build();
 
         ConnectUtils.testAdapter(adapterInput);
-        ConnectUtils.deleteAdapter();
+        ConnectUtils.deleteAdapter(adapterInput.adapterName);
     });
 });
diff --git a/ui/cypress/tests/datalake/timeOrderDataView.spec.ts 
b/ui/cypress/tests/datalake/timeOrderDataView.spec.ts
index 28ec6d97ef..2144304754 100644
--- a/ui/cypress/tests/datalake/timeOrderDataView.spec.ts
+++ b/ui/cypress/tests/datalake/timeOrderDataView.spec.ts
@@ -53,7 +53,7 @@ describe('Test Time Order in Data Explorer', () => {
 
         // Save and leave view, edit view again and check ascending order
         DataLakeBtns.saveDataViewButton();
-        DataLakeBtns.editDataViewButton('Newchart');
+        DataLakeBtns.editDataViewButton('New chart');
         DataLakeUtils.clickOrderBy('ascending');
         DataLakeUtils.openVisualizationConfig();
         DataLakeUtils.selectVisualizationType(DataExplorerWidget.TABLE);

Reply via email to