From 084e28ab2124f607d77a2e7ebd3496b87f416d29 Mon Sep 17 00:00:00 2001 From: Aishwarya-U-R <91450662+Aishwarya-U-R@users.noreply.github.com> Date: Sun, 18 Jun 2023 10:25:16 +0530 Subject: [PATCH] test: Cypress | Flaky fixes (#24581) ## Description - This PR fixes the below flaky: - ReconnectDatasource_spec.js - ConversionAlgorithm_AutoLayout_Validation_BasicSpec.js - Improves CreateApplication with intercept assert - Changes all agHelper.AssertN.wStatus to assertHelper() method #### Type of change - Script fix (non-breaking change which fixes an issue) ## Testing > #### How Has This Been Tested? - [X] Cypress CI runs ## Checklist: #### QA activity: - [X] Added `Test Plan Approved` label after Cypress tests were reviewed --- .github/workflows/ci-test-limited.yml | 10 +++- .github/workflows/ci-test.yml | 9 ++- .../Apps/ImportExportForkApplication_spec.js | 3 +- .../ClientSide/Binding/LoadashBasic_Spec.ts | 29 ++++++---- .../ClientSide/Binding/MomentBasic_Spec.ts | 29 ++++++---- .../Binding/aTobAndbToaBasic_Spec.ts | 33 +++++------ .../ClientSide/BugTests/Bug9334_Spec.ts | 56 ++++++++++--------- .../ClientSide/BugTests/GitBugs_Spec.ts | 2 +- .../DynamicHeight/TextWidget_Spec.ts | 2 +- .../TableWidget/mongoDB_spec.ts | 2 +- .../TableWidget/postgres_spec.ts | 14 ++--- .../OtherUIFeatures/Omnibar_spec.js | 3 +- .../Templates/Fork_Template_To_App_spec.js | 4 +- .../Widgets/Chart/ChartDataPoint_Spec.ts | 28 +++++----- .../Widgets/TableV1/TableBugs_Spec.ts | 2 +- .../Widgets/TableV1/TableFilter1_Spec.ts | 2 +- .../Widgets/TableV1/TableFilter2_Spec.ts | 2 +- .../Widgets/TableV2/TableV2Filter1_Spec.ts | 2 +- .../Widgets/TableV2/TableV2Filter2_Spec.ts | 2 +- .../ApiTests/CurlImportFlow_spec.js | 4 -- .../ServerSide/GenerateCRUD/Mongo_Spec.ts | 11 ++-- .../ServerSide/GenerateCRUD/MySQL1_Spec.ts | 23 ++++---- .../ServerSide/GenerateCRUD/MySQL2_Spec.ts | 25 +++++---- .../ServerSide/GenerateCRUD/Postgres1_Spec.ts | 13 +++-- .../ServerSide/GenerateCRUD/Postgres2_Spec.ts | 35 ++++++------ .../ServerSide/OnLoadTests/APIOnLoad_Spec.ts | 3 +- .../OnLoadTests/PostgresConnections_spec.ts | 3 +- .../ServerSide/Params/PassingParams_Spec.ts | 5 +- .../Postgres_DataTypes/Array_Spec.ts | 5 +- .../Postgres_DataTypes/Binary_Spec.ts | 5 +- .../Postgres_DataTypes/BooleanEnum_Spec.ts | 5 +- .../Postgres_DataTypes/Character_Spec.ts | 5 +- .../Postgres_DataTypes/DateTime_Spec.ts | 5 +- .../Postgres_DataTypes/Json_Spec.ts | 9 +-- .../Postgres_DataTypes/Numeric_Spec.ts | 5 +- .../Postgres_DataTypes/UUID_Spec.ts | 5 +- .../ServerSide/QueryPane/Mongo_Spec.ts | 12 ++-- .../ServerSide/QueryPane/Postgres_Spec.js | 3 +- .../Sanity/Datasources/Airtable_Basic_Spec.ts | 3 +- .../Smoke/Apps/ReconnectDatasource_spec.js | 2 + .../cypress/support/Pages/AggregateHelper.ts | 28 +--------- app/client/cypress/support/Pages/ApiPage.ts | 5 +- .../Pages/AppSettings/EmbedSettings.ts | 5 +- .../Pages/AppSettings/GeneralSettings.ts | 7 ++- .../support/Pages/AppSettings/PageSettings.ts | 11 ++-- .../cypress/support/Pages/AutoLayout.ts | 11 ++-- .../cypress/support/Pages/DataSources.ts | 26 ++++----- .../cypress/support/Pages/DeployModeHelper.ts | 2 +- .../cypress/support/Pages/EntityExplorer.ts | 7 ++- app/client/cypress/support/Pages/GitSync.ts | 7 ++- app/client/cypress/support/Pages/HomePage.ts | 18 +++--- app/client/cypress/support/Pages/JSEditor.ts | 3 +- .../cypress/support/Pages/PropertyPane.ts | 6 +- app/client/cypress/support/Pages/Table.ts | 4 +- app/client/cypress/support/commands.js | 2 +- 55 files changed, 301 insertions(+), 261 deletions(-) diff --git a/.github/workflows/ci-test-limited.yml b/.github/workflows/ci-test-limited.yml index 861524c041..ff1906b0c3 100644 --- a/.github/workflows/ci-test-limited.yml +++ b/.github/workflows/ci-test-limited.yml @@ -250,13 +250,21 @@ jobs: - run: | echo "BROWSER_PATH=$(which chrome)" >> $GITHUB_ENV + - name: Set Pull Request Title + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + PR_TITLE=$(git log -1 --pretty=format:"%s" $GITHUB_REF) + echo "${{ toJson(github.event) }}" + echo "PR Title: $PR_TITLE" + - name: Save Git values # pass env variables from this step to other steps # using GitHub Actions environment file # https://docs.github.com/en/actions/learn-github-actions/workflow-commands-for-github-actions#environment-files run: | echo COMMIT_INFO_BRANCH=$(git rev-parse --abbrev-ref HEAD) >> $GITHUB_ENV - echo COMMIT_INFO_MESSAGE=Run from $(git rev-parse --abbrev-ref HEAD) on commit $(git show -s --pretty=%H | cut -c 1-7) >> $GITHUB_ENV + echo COMMIT_INFO_MESSAGE=Workflow run on $(git rev-parse --abbrev-ref HEAD) >> $GITHUB_ENV echo COMMIT_INFO_EMAIL=$(git show -s --pretty=%ae) >> $GITHUB_ENV echo COMMIT_INFO_AUTHOR=$(git show -s --pretty=%an) >> $GITHUB_ENV echo COMMIT_INFO_SHA=$(git show -s --pretty=%H) >> $GITHUB_ENV diff --git a/.github/workflows/ci-test.yml b/.github/workflows/ci-test.yml index c145df7cbe..3d17a6c9db 100644 --- a/.github/workflows/ci-test.yml +++ b/.github/workflows/ci-test.yml @@ -249,7 +249,12 @@ jobs: echo "BROWSER_PATH=$(which chrome)" >> $GITHUB_ENV - name: Set Pull Request Title - run: echo "PR_TITLE=${{ github.event.pull_request.title }}" >> $GITHUB_ENV + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + PR_TITLE=$(git log -1 --pretty=format:"%s" $GITHUB_REF) + echo "${{ toJson(github.event) }}" + echo "PR Title: $PR_TITLE" - name: Save Git values # pass env variables from this step to other steps @@ -257,7 +262,7 @@ jobs: # https://docs.github.com/en/actions/learn-github-actions/workflow-commands-for-github-actions#environment-files run: | PR_NUMBER=${{ inputs.pr }} - echo COMMIT_INFO_BRANCH=$(git ls-remote origin "pull/$PR_NUMBER/head" | cut -d$'\t' -f2 | sed 's#refs/heads/##') >> $GITHUB_ENV + echo COMMIT_INFO_BRANCH=$(git rev-parse --abbrev-ref HEAD) >> $GITHUB_ENV echo COMMIT_INFO_MESSAGE=OkToTest run on PR# ${{ inputs.pr }} >> $GITHUB_ENV echo COMMIT_INFO_EMAIL=$(git show -s --pretty=%ae) >> $GITHUB_ENV echo COMMIT_INFO_AUTHOR=$(git show -s --pretty=%an) >> $GITHUB_ENV diff --git a/app/client/cypress/e2e/Regression/Apps/ImportExportForkApplication_spec.js b/app/client/cypress/e2e/Regression/Apps/ImportExportForkApplication_spec.js index a2a367ea90..9694d95680 100644 --- a/app/client/cypress/e2e/Regression/Apps/ImportExportForkApplication_spec.js +++ b/app/client/cypress/e2e/Regression/Apps/ImportExportForkApplication_spec.js @@ -4,6 +4,7 @@ import { homePage, agHelper, dataSources, + assertHelper, } from "../../../support/Objects/ObjectsCore"; describe("Import, Export and Fork application and validate data binding", function () { @@ -119,7 +120,7 @@ describe("Import, Export and Fork application and validate data binding", functi { force: true }, ); if (!Cypress.env("AIRGAPPED")) { - agHelper.AssertNetworkStatus("@getReleaseItems"); + assertHelper.AssertNetworkStatus("@getReleaseItems"); } else { agHelper.Sleep(2000); } diff --git a/app/client/cypress/e2e/Regression/ClientSide/Binding/LoadashBasic_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/Binding/LoadashBasic_Spec.ts index 0838f7323b..845e31a34b 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Binding/LoadashBasic_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/Binding/LoadashBasic_Spec.ts @@ -1,35 +1,42 @@ -import * as _ from "../../../../support/Objects/ObjectsCore"; +import { + agHelper, + locators, + entityExplorer, + assertHelper, + propPane, + deployMode, +} from "../../../../support/Objects/ObjectsCore"; describe("Loadash basic test with input Widget", () => { before(() => { cy.fixture("inputBindingdsl").then((val: any) => { - _.agHelper.AddDsl(val); + agHelper.AddDsl(val); }); }); it("1. Input widget test with default value for atob method", () => { cy.fixture("testdata").then(function (dataSet: any) { - _.entityExplorer.SelectEntityByName("Input1", "Widgets"); - _.propPane.UpdatePropertyFieldValue( + entityExplorer.SelectEntityByName("Input1", "Widgets"); + propPane.UpdatePropertyFieldValue( "Default value", dataSet.defaultInputBinding + "}}", ); - _.agHelper.AssertNetworkStatus("@updateLayout"); + assertHelper.AssertNetworkStatus("@updateLayout"); //Input widget test with default value for btoa method - _.entityExplorer.SelectEntityByName("Input2"); - _.propPane.UpdatePropertyFieldValue( + entityExplorer.SelectEntityByName("Input2"); + propPane.UpdatePropertyFieldValue( "Default value", dataSet.loadashInput + "}}", ); }); - _.agHelper.AssertNetworkStatus("@updateLayout"); + assertHelper.AssertNetworkStatus("@updateLayout"); //Publish and validate the data displayed in input widgets value for aToB and bToa - _.deployMode.DeployApp(_.locators._widgetInputSelector("inputwidgetv2")); - cy.get(_.locators._widgetInputSelector("inputwidgetv2")) + deployMode.DeployApp(locators._widgetInputSelector("inputwidgetv2")); + cy.get(locators._widgetInputSelector("inputwidgetv2")) .first() .invoke("attr", "value") .should("contain", "7"); - cy.get(_.locators._widgetInputSelector("inputwidgetv2")) + cy.get(locators._widgetInputSelector("inputwidgetv2")) .last() .invoke("attr", "value") .should("contain", "7"); diff --git a/app/client/cypress/e2e/Regression/ClientSide/Binding/MomentBasic_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/Binding/MomentBasic_Spec.ts index 3a8076bd8b..d6698cb3a5 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Binding/MomentBasic_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/Binding/MomentBasic_Spec.ts @@ -1,36 +1,43 @@ -import * as _ from "../../../../support/Objects/ObjectsCore"; +import { + agHelper, + locators, + entityExplorer, + propPane, + deployMode, + assertHelper, +} from "../../../../support/Objects/ObjectsCore"; describe("Validate basic binding of Input widget to Input widget", () => { before(() => { cy.fixture("inputBindingdsl").then((val: any) => { - _.agHelper.AddDsl(val); + agHelper.AddDsl(val); }); }); it("1. Input widget test with default value from another Input widget", () => { cy.fixture("testdata").then(function (dataSet: any) { //dataSet = data; - _.entityExplorer.SelectEntityByName("Input1", "Widgets"); - _.propPane.UpdatePropertyFieldValue( + entityExplorer.SelectEntityByName("Input1", "Widgets"); + propPane.UpdatePropertyFieldValue( "Default value", dataSet.defaultInputBinding + "}}", ); - _.agHelper.AssertNetworkStatus("@updateLayout"); + assertHelper.AssertNetworkStatus("@updateLayout"); //Binding second input widget with first input widget and validating - _.entityExplorer.SelectEntityByName("Input2"); - _.propPane.UpdatePropertyFieldValue( + entityExplorer.SelectEntityByName("Input2"); + propPane.UpdatePropertyFieldValue( "Default value", dataSet.momentInput + "}}", ); }); - _.agHelper.AssertNetworkStatus("@updateLayout"); + assertHelper.AssertNetworkStatus("@updateLayout"); //Publish widget and validate the data displayed in input widgets let currentTime = new Date(); - _.deployMode.DeployApp(_.locators._widgetInputSelector("inputwidgetv2")); - cy.get(_.locators._widgetInputSelector("inputwidgetv2")) + deployMode.DeployApp(locators._widgetInputSelector("inputwidgetv2")); + cy.get(locators._widgetInputSelector("inputwidgetv2")) .first() .should("contain.value", currentTime.getFullYear()); - cy.get(_.locators._widgetInputSelector("inputwidgetv2")) + cy.get(locators._widgetInputSelector("inputwidgetv2")) .last() .should("contain.value", currentTime.getFullYear()); }); diff --git a/app/client/cypress/e2e/Regression/ClientSide/Binding/aTobAndbToaBasic_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/Binding/aTobAndbToaBasic_Spec.ts index 4b916b1ce1..cd9d15cc61 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Binding/aTobAndbToaBasic_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/Binding/aTobAndbToaBasic_Spec.ts @@ -1,10 +1,11 @@ -import { ObjectsRegistry } from "../../../../support/Objects/Registry"; - -let agHelper = ObjectsRegistry.AggregateHelper, - ee = ObjectsRegistry.EntityExplorer, - propPane = ObjectsRegistry.PropertyPane, - locator = ObjectsRegistry.CommonLocators, - deployMode = ObjectsRegistry.DeployMode; +import { + assertHelper, + agHelper, + propPane, + locators, + deployMode, + entityExplorer, +} from "../../../../support/Objects/ObjectsCore"; describe("Validate basic binding of Input widget to Input widget", () => { before(() => { @@ -15,37 +16,37 @@ describe("Validate basic binding of Input widget to Input widget", () => { it("1. Input widget test with default value for atob method", () => { cy.fixture("testdata").then(function (dataSet: any) { - ee.SelectEntityByName("Input1", "Widgets"); + entityExplorer.SelectEntityByName("Input1", "Widgets"); propPane.UpdatePropertyFieldValue( "Default value", dataSet.atobInput + "}}", ); - agHelper.AssertNetworkStatus("@updateLayout"); - cy.get(locator._inputWidget) + assertHelper.AssertNetworkStatus("@updateLayout"); + cy.get(locators._inputWidget) .first() .invoke("attr", "value") .should("equal", "A"); //Before mapping JSObject value of input //Input widget test with default value for btoa method" - ee.SelectEntityByName("Input2"); + entityExplorer.SelectEntityByName("Input2"); propPane.UpdatePropertyFieldValue( "Default value", dataSet.btoaInput + "}}", ); }); - agHelper.AssertNetworkStatus("@updateLayout"); - cy.get(locator._inputWidget) + assertHelper.AssertNetworkStatus("@updateLayout"); + cy.get(locators._inputWidget) .last() .invoke("attr", "value") .should("equal", "QQ=="); //Before mapping JSObject value of input }); it("2. Publish and validate the data displayed in input widgets value for aToB and bToa", function () { - deployMode.DeployApp(locator._widgetInputSelector("inputwidgetv2")); - cy.get(locator._widgetInputSelector("inputwidgetv2")) + deployMode.DeployApp(locators._widgetInputSelector("inputwidgetv2")); + cy.get(locators._widgetInputSelector("inputwidgetv2")) .first() .invoke("attr", "value") .should("contain", "A"); - cy.get(locator._widgetInputSelector("inputwidgetv2")) + cy.get(locators._widgetInputSelector("inputwidgetv2")) .last() .invoke("attr", "value") .should("contain", "QQ=="); diff --git a/app/client/cypress/e2e/Regression/ClientSide/BugTests/Bug9334_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/BugTests/Bug9334_Spec.ts index 70a034876a..22a6168845 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/BugTests/Bug9334_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/BugTests/Bug9334_Spec.ts @@ -1,12 +1,14 @@ -import { ObjectsRegistry } from "../../../../support/Objects/Registry"; +import { + assertHelper, + agHelper, + dataSources, + locators, + table, + appSettings, + entityExplorer, +} from "../../../../support/Objects/ObjectsCore"; let dsName: any; -const agHelper = ObjectsRegistry.AggregateHelper, - ee = ObjectsRegistry.EntityExplorer, - dataSources = ObjectsRegistry.DataSources, - locator = ObjectsRegistry.CommonLocators, - table = ObjectsRegistry.Table, - appSettings = ObjectsRegistry.AppSettings; describe("Bug 9334: The Select widget value is sent as null when user switches between the pages", function () { before("Change Theme & Create Postgress DS", () => { @@ -19,56 +21,56 @@ describe("Bug 9334: The Select widget value is sent as null when user switches b it("1. Create dummy pages for navigating", () => { //CRUD page 2 - ee.AddNewPage(); - ee.AddNewPage("Generate page with data"); + entityExplorer.AddNewPage(); + entityExplorer.AddNewPage("Generate page with data"); agHelper.GetNClick(dataSources._selectDatasourceDropdown); agHelper.GetNClickByContains(dataSources._dropdownOption, dsName); - agHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated + assertHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated agHelper.GetNClick(dataSources._selectTableDropdown, 0, true); agHelper.GetNClickByContains(dataSources._dropdownOption, "astronauts"); agHelper.GetNClick(dataSources._generatePageBtn); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); agHelper.AssertContains("Successfully generated a page"); - //agHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes - agHelper.AssertNetworkStatus("@postExecute", 200); + //assertHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); table.WaitUntilTableLoad(); //CRUD page 3 - ee.AddNewPage(); - ee.AddNewPage("Generate page with data"); + entityExplorer.AddNewPage(); + entityExplorer.AddNewPage("Generate page with data"); agHelper.GetNClick(dataSources._selectDatasourceDropdown); agHelper.GetNClickByContains(dataSources._dropdownOption, dsName); - agHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated + assertHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated agHelper.GetNClick(dataSources._selectTableDropdown, 0, true); agHelper.GetNClickByContains(dataSources._dropdownOption, "country"); agHelper.GetNClick(dataSources._generatePageBtn); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); agHelper.AssertContains("Successfully generated a page"); - //agHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes - agHelper.AssertNetworkStatus("@postExecute", 200); + //assertHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); table.WaitUntilTableLoad(); }); it("2. Navigate & Assert toast", () => { //Navigating between CRUD (Page3) & EmptyPage (Page2): - ee.SelectEntityByName("Page1"); + entityExplorer.SelectEntityByName("Page1"); agHelper.Sleep(2000); - ee.SelectEntityByName("Page2"); + entityExplorer.SelectEntityByName("Page2"); agHelper.AssertElementAbsence( - locator._specificToast('The action "SelectQuery" has failed.'), + locators._specificToast('The action "SelectQuery" has failed.'), ); //Navigating between CRUD (Page3) & CRUD (Page4): - ee.SelectEntityByName("Page3"); + entityExplorer.SelectEntityByName("Page3"); agHelper.Sleep(2000); - ee.SelectEntityByName("Page2"); + entityExplorer.SelectEntityByName("Page2"); agHelper.AssertElementAbsence( - locator._specificToast('The action "SelectQuery" has failed.'), + locators._specificToast('The action "SelectQuery" has failed.'), ); }); }); diff --git a/app/client/cypress/e2e/Regression/ClientSide/BugTests/GitBugs_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/BugTests/GitBugs_Spec.ts index 45ed9e3bcb..83dcf0ed4e 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/BugTests/GitBugs_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/BugTests/GitBugs_Spec.ts @@ -22,7 +22,7 @@ describe("Git Bugs", function () { cy.get("@postExecute").should("not.exist"); _.gitSync.CloseGitSyncModal(); cy.get("body").type(`{${modifierKey}}{enter}`); - _.agHelper.AssertNetworkStatus("@postExecute"); + _.assertHelper.AssertNetworkStatus("@postExecute"); }); it("2. Bug 18665 : Creates a new Git branch, Create datasource, discard it and check current branch", function () { diff --git a/app/client/cypress/e2e/Regression/ClientSide/DynamicHeight/TextWidget_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/DynamicHeight/TextWidget_Spec.ts index 592f9f2581..364c234134 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/DynamicHeight/TextWidget_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/DynamicHeight/TextWidget_Spec.ts @@ -16,7 +16,7 @@ describe("Dynamic Height Width validation for text widget", function () { _.propPane.UpdatePropertyFieldValue("Text", textMsg); _.propPane.MoveToTab("Style"); _.propPane.SelectPropertiesDropDown("Font size", "L"); - _.agHelper.AssertNetworkStatus("@updateLayout"); //for textMsg update + _.assertHelper.AssertNetworkStatus("@updateLayout"); //for textMsg update _.agHelper.GetHeight( _.locators._widgetInDeployed(_.draggableWidgets.TEXT), ); diff --git a/app/client/cypress/e2e/Regression/ClientSide/OneClickBinding/TableWidget/mongoDB_spec.ts b/app/client/cypress/e2e/Regression/ClientSide/OneClickBinding/TableWidget/mongoDB_spec.ts index 7c91d04341..a3be4335a6 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/OneClickBinding/TableWidget/mongoDB_spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/OneClickBinding/TableWidget/mongoDB_spec.ts @@ -28,7 +28,7 @@ describe.skip("one click binding mongodb datasource", function () { _.agHelper.GetNClick(oneClickBindingLocator.connectData); - _.agHelper.AssertNetworkStatus("@postExecute"); + _.assertHelper.AssertNetworkStatus("@postExecute"); _.agHelper.Sleep(2000); //#endregion diff --git a/app/client/cypress/e2e/Regression/ClientSide/OneClickBinding/TableWidget/postgres_spec.ts b/app/client/cypress/e2e/Regression/ClientSide/OneClickBinding/TableWidget/postgres_spec.ts index 9f317b7bf4..15a364a337 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/OneClickBinding/TableWidget/postgres_spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/OneClickBinding/TableWidget/postgres_spec.ts @@ -27,7 +27,7 @@ describe.skip("Table widget one click binding feature", () => { _.agHelper.GetNClick(oneClickBindingLocator.connectData); - _.agHelper.AssertNetworkStatus("@postExecute"); + _.assertHelper.AssertNetworkStatus("@postExecute"); cy.wait(2000); @@ -57,11 +57,11 @@ describe.skip("Table widget one click binding feature", () => { _.agHelper.GetNClick(_.table._saveNewRow, 0, true); - _.agHelper.AssertNetworkStatus("@postExecute"); + _.assertHelper.AssertNetworkStatus("@postExecute"); _.agHelper.TypeText(_.table._searchInput, "cypress@appsmith"); - _.agHelper.AssertNetworkStatus("@postExecute"); + _.assertHelper.AssertNetworkStatus("@postExecute"); _.agHelper.AssertElementExist(_.table._bodyCell("cypress@appsmith")); @@ -79,9 +79,9 @@ describe.skip("Table widget one click binding feature", () => { (cy as any).saveTableRow(12, 0); - _.agHelper.AssertNetworkStatus("@postExecute"); + _.assertHelper.AssertNetworkStatus("@postExecute"); - _.agHelper.AssertNetworkStatus("@postExecute"); + _.assertHelper.AssertNetworkStatus("@postExecute"); (cy as any).wait(500); @@ -89,7 +89,7 @@ describe.skip("Table widget one click binding feature", () => { _.agHelper.TypeText(_.table._searchInput, "automation@appsmith"); - _.agHelper.AssertNetworkStatus("@postExecute"); + _.assertHelper.AssertNetworkStatus("@postExecute"); (cy as any).wait(2000); @@ -99,7 +99,7 @@ describe.skip("Table widget one click binding feature", () => { _.agHelper.TypeText(_.table._searchInput, "cypress@appsmith"); - _.agHelper.AssertNetworkStatus("@postExecute"); + _.assertHelper.AssertNetworkStatus("@postExecute"); (cy as any).wait(2000); diff --git a/app/client/cypress/e2e/Regression/ClientSide/OtherUIFeatures/Omnibar_spec.js b/app/client/cypress/e2e/Regression/ClientSide/OtherUIFeatures/Omnibar_spec.js index 02033edd26..db604e7566 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/OtherUIFeatures/Omnibar_spec.js +++ b/app/client/cypress/e2e/Regression/ClientSide/OtherUIFeatures/Omnibar_spec.js @@ -3,6 +3,7 @@ const commonlocators = require("../../../../locators/commonlocators.json"); import { agHelper, entityExplorer, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("Omnibar functionality test cases", () => { @@ -95,7 +96,7 @@ describe("Omnibar functionality test cases", () => { agHelper.GetNClickByContains(omnibar.categoryTitle, "Create new"); agHelper.AssertElementVisible(omnibar.blankAPI); agHelper.GetNClickByContains(omnibar.createNew, "New blank API"); - agHelper.AssertNetworkStatus("@createNewApi", 201); + assertHelper.AssertNetworkStatus("@createNewApi", 201); entityExplorer.SelectEntityByName("Api1"); agHelper.AssertURL("/api"); agHelper.RenameWithInPane(apiName); diff --git a/app/client/cypress/e2e/Regression/ClientSide/Templates/Fork_Template_To_App_spec.js b/app/client/cypress/e2e/Regression/ClientSide/Templates/Fork_Template_To_App_spec.js index fba44c033c..20f370f8a9 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Templates/Fork_Template_To_App_spec.js +++ b/app/client/cypress/e2e/Regression/ClientSide/Templates/Fork_Template_To_App_spec.js @@ -53,7 +53,7 @@ describe("excludeForAirgap", "Fork a template to the current app", () => { "contain", "template added successfully", ); - _.agHelper.AssertNetworkStatus("updateLayout"); + _.assertHelper.AssertNetworkStatus("updateLayout"); // [Bug]: Getting 'Resource not found' error on deploying template #17477 _.deployMode.DeployApp(); cy.get(".t--page-switch-tab") @@ -101,6 +101,6 @@ describe("excludeForAirgap", "Fork a template to the current app", () => { "contain", "template added successfully", ); - _.agHelper.AssertNetworkStatus("updateLayout"); + _.assertHelper.AssertNetworkStatus("updateLayout"); }); }); diff --git a/app/client/cypress/e2e/Regression/ClientSide/Widgets/Chart/ChartDataPoint_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/Widgets/Chart/ChartDataPoint_Spec.ts index 0bab573264..843b068a2b 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Widgets/Chart/ChartDataPoint_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/Widgets/Chart/ChartDataPoint_Spec.ts @@ -1,11 +1,13 @@ -import { ObjectsRegistry } from "../../../../../support/Objects/Registry"; +import { + agHelper, + assertHelper, + propPane, + deployMode, + locators, + entityExplorer, +} from "../../../../../support/Objects/ObjectsCore"; let dataSet: any, dsl: any; -let agHelper = ObjectsRegistry.AggregateHelper, - ee = ObjectsRegistry.EntityExplorer, - propPane = ObjectsRegistry.PropertyPane, - locator = ObjectsRegistry.CommonLocators, - deployMode = ObjectsRegistry.DeployMode; describe("Input widget test with default value from chart datapoint", () => { //beforeEach - becasuse to enable re-attempt passing! @@ -20,16 +22,16 @@ describe("Input widget test with default value from chart datapoint", () => { }); it("1. Chart widget - Input widget test with default value from another Input widget", () => { - ee.SelectEntityByName("Input1", "Widgets"); + entityExplorer.SelectEntityByName("Input1", "Widgets"); propPane.UpdatePropertyFieldValue( "Default value", dataSet.bindChartData + "}}", ); - agHelper.AssertNetworkStatus("@updateLayout"); - ee.SelectEntityByName("Chart1"); + assertHelper.AssertNetworkStatus("@updateLayout"); + entityExplorer.SelectEntityByName("Chart1"); propPane.SelectPlatformFunction("onDataPointClick", "Show alert"); agHelper.EnterActionValue("Message", dataSet.bindingDataPoint); - ee.SelectEntityByName("Input2"); + entityExplorer.SelectEntityByName("Input2"); propPane.UpdatePropertyFieldValue( "Default value", dataSet.bindingSeriesTitle + "}}", @@ -37,15 +39,15 @@ describe("Input widget test with default value from chart datapoint", () => { deployMode.DeployApp(); agHelper.Sleep(1500); //waiting for chart to load! agHelper.GetNClick("//*[local-name()='rect']", 13); - cy.get(locator._widgetInputSelector("inputwidgetv2")) + cy.get(locators._widgetInputSelector("inputwidgetv2")) .first() .invoke("val") .then(($value) => { let inputVal = ($value as string).replace(/\s/g, ""); //removing space here //cy.get(locator._toastMsg).invoke('text').then(toastTxt => expect(toastTxt.trim()).to.eq(inputVal)) - cy.get(locator._toastMsg).should("have.text", inputVal); + cy.get(locators._toastMsg).should("have.text", inputVal); }); - cy.get(locator._widgetInputSelector("inputwidgetv2")) + cy.get(locators._widgetInputSelector("inputwidgetv2")) .last() .should("have.value", dsl.dsl.children[0].chartData[0].seriesName); }); diff --git a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableBugs_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableBugs_Spec.ts index 900ba047a0..fe711fdcb9 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableBugs_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableBugs_Spec.ts @@ -13,7 +13,7 @@ describe("Verify various Table property bugs", function () { "Table data", JSON.stringify(this.dataSet.TableURLColumnType), ); - _.agHelper.AssertNetworkStatus("@updateLayout", 200); + _.assertHelper.AssertNetworkStatus("@updateLayout", 200); _.agHelper.PressEscape(); //Bug 13299 - Verify Display Text does not contain garbage value for URL column type when empty _.entityExplorer.SelectEntityByName("Table1", "Widgets"); diff --git a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableFilter1_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableFilter1_Spec.ts index 2aa6c7cd00..447ca71191 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableFilter1_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableFilter1_Spec.ts @@ -13,7 +13,7 @@ describe("Verify various Table_Filter combinations", function () { "Table data", JSON.stringify(this.dataSet.TableInput), ); - _.agHelper.AssertNetworkStatus("@updateLayout", 200); + _.assertHelper.AssertNetworkStatus("@updateLayout", 200); _.agHelper.PressEscape(); _.deployMode.DeployApp(); }); diff --git a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableFilter2_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableFilter2_Spec.ts index e69789be9d..5f5e875fa3 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableFilter2_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV1/TableFilter2_Spec.ts @@ -13,7 +13,7 @@ describe("Verify various Table_Filter combinations", function () { "Table data", JSON.stringify(this.dataSet.TableInput), ); - _.agHelper.AssertNetworkStatus("@updateLayout", 200); + _.assertHelper.AssertNetworkStatus("@updateLayout", 200); _.agHelper.PressEscape(); _.deployMode.DeployApp(); }); diff --git a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV2/TableV2Filter1_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV2/TableV2Filter1_Spec.ts index 0b7ee5dfd3..cdf3099263 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV2/TableV2Filter1_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV2/TableV2Filter1_Spec.ts @@ -10,7 +10,7 @@ describe("Verify various Table_Filter combinations", function () { "Table data", JSON.stringify(this.dataSet.TableInput), ); - _.agHelper.AssertNetworkStatus("@updateLayout", 200); + _.assertHelper.AssertNetworkStatus("@updateLayout", 200); cy.get("body").type("{esc}"); /* Changing id and orderAmount to "Plain text" column type diff --git a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV2/TableV2Filter2_Spec.ts b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV2/TableV2Filter2_Spec.ts index 274c55e204..0343b54b31 100644 --- a/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV2/TableV2Filter2_Spec.ts +++ b/app/client/cypress/e2e/Regression/ClientSide/Widgets/TableV2/TableV2Filter2_Spec.ts @@ -10,7 +10,7 @@ describe("Verify various Table_Filter combinations", function () { "Table data", JSON.stringify(this.dataSet.TableInput), ); - _.agHelper.AssertNetworkStatus("@updateLayout", 200); + _.assertHelper.AssertNetworkStatus("@updateLayout", 200); _.agHelper.PressEscape(); /* Changing id and orderAmount to "Plain text" column type diff --git a/app/client/cypress/e2e/Regression/ServerSide/ApiTests/CurlImportFlow_spec.js b/app/client/cypress/e2e/Regression/ServerSide/ApiTests/CurlImportFlow_spec.js index ca56876f78..2cfc1461f4 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/ApiTests/CurlImportFlow_spec.js +++ b/app/client/cypress/e2e/Regression/ServerSide/ApiTests/CurlImportFlow_spec.js @@ -29,16 +29,12 @@ describe("Test curl import flow", function () { expect(someText).to.equal(response.response.body.data.name); }); }); - //cy.WaitAutoSave(); cy.RunAPI(); cy.ResponseStatusCheck("200 OK"); agHelper.ActionContextMenuWithInPane({ action: "Delete", entityType: entityItems.Api, }); - cy.get("@deleteAction").then((response) => { - expect(response.response.body.responseMeta.success).to.eq(true); - }); }); }); diff --git a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Mongo_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Mongo_Spec.ts index a187e68f4d..358d5285ab 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Mongo_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Mongo_Spec.ts @@ -9,6 +9,7 @@ import { dataSources, table, locators, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("Validate Mongo CRUD with JSON Form", () => { @@ -32,7 +33,7 @@ describe("Validate Mongo CRUD with JSON Form", () => { agHelper.GetNClick(dataSources._selectDatasourceDropdown); agHelper.GetNClickByContains(dataSources._dropdownOption, dsName); }); - agHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated + assertHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated agHelper.GetNClick(dataSources._selectTableDropdown, 0, true); agHelper.GetNClickByContains(dataSources._dropdownOption, "pokemon"); GenerateCRUDNValidateDeployPage( @@ -91,12 +92,12 @@ describe("Validate Mongo CRUD with JSON Form", () => { idIndex: number, ) { agHelper.GetNClick(dataSources._generatePageBtn); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); agHelper.AssertContains("Successfully generated a page"); // Commenting this since FindQuery failure appears sometimes - agHelper.AssertNetworkStatus("@getActions", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@getActions", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); deployMode.DeployApp(); //Validating loaded table diff --git a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL1_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL1_Spec.ts index 54dd3b6b2f..990cfcb69f 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL1_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL1_Spec.ts @@ -8,6 +8,7 @@ import { homePage, dataSources, table, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; // import { INTERCEPT } from "../../../../fixtures/variables"; let dsName: any; @@ -30,7 +31,7 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { agHelper.GetNClickByContains(dataSources._dropdownOption, dsName); }); - agHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated + assertHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated agHelper.GetNClick(dataSources._selectTableDropdown, 0, true); agHelper.GetNClickByContains( dataSources._dropdownOption, @@ -79,7 +80,7 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { dataSources.CreateDataSource("MySql", false); - agHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated + assertHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated agHelper.GetNClick(dataSources._selectTableDropdown, 0, true); agHelper.GetNClickByContains(dataSources._dropdownOption, "customers"); @@ -175,11 +176,11 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { agHelper.GetNClickByContains(dataSources._dropdownOption, "productlines"); agHelper.GetNClick(dataSources._generatePageBtn); agHelper.AssertContains("Successfully generated a page"); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); - agHelper.AssertNetworkStatus("@getActions", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@getActions", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); deployMode.DeployApp(); //Validating loaded table @@ -244,7 +245,7 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { ); agHelper.ClickButton("Update"); //Update does not work, Bug 14063 agHelper.AssertElementAbsence(locators._toastMsg); //Validating fix for Bug 14063 - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); table.AssertSelectedRow(3); //validating update happened fine! @@ -320,12 +321,12 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { jsonFromHeader: string, ) { agHelper.GetNClick(dataSources._generatePageBtn); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); agHelper.AssertContains("Successfully generated a page"); - //agHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes - agHelper.AssertNetworkStatus("@postExecute", 200); + //assertHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); deployMode.DeployApp(); table.WaitUntilTableLoad(); diff --git a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL2_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL2_Spec.ts index 2c33394d1d..ef27377e1e 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL2_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/MySQL2_Spec.ts @@ -10,6 +10,7 @@ import { table, entityItems, locators, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("Validate MySQL Generate CRUD with JSON Form", () => { @@ -185,8 +186,8 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { ), ); agHelper.ClickButton("Confirm"); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(2500); // for delete to take effect! table.AssertSelectedRow(0); //Control going back to 1st row in table dataSources.AssertJSONFormHeader(0, 0, "store_id"); @@ -282,8 +283,8 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { //asserting only Update JSON form is present, & Insert Modal is closed agHelper.Sleep(2000); //for Insert to reflect! - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(3000); //for Insert to reflect! agHelper .GetElementLength(locators._jsonFormWidget) @@ -339,8 +340,8 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { ), ); agHelper.ClickButton("Confirm"); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(3000); //for Delete to reflect! table.AssertSelectedRow(0); //Control going back to 1st row in table table.ReadTableRowColumnData(0, 0, "v1", 200).then(($cellData) => { @@ -398,12 +399,12 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { jsonFromHeader: string, ) { agHelper.GetNClick(dataSources._generatePageBtn); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); agHelper.AssertContains("Successfully generated a page"); - //agHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes - agHelper.AssertNetworkStatus("@postExecute", 200); + //assertHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); deployMode.DeployApp(); table.WaitUntilTableLoad(); @@ -457,8 +458,8 @@ describe("Validate MySQL Generate CRUD with JSON Form", () => { agHelper.ClickButton("Update"); //Update does not work, Bug 14063 agHelper.AssertElementAbsence(locators._toastMsg); //Validating fix for Bug 14063 - for common table columns agHelper.Sleep(2000); //for update to reflect! - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); table.AssertSelectedRow(rowIndex); //validating update happened fine! diff --git a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres1_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres1_Spec.ts index fcf0c79ebc..8c8bf577a5 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres1_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres1_Spec.ts @@ -8,6 +8,7 @@ import { dataSources, table, entityItems, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; let dsName: any; @@ -23,7 +24,7 @@ describe("Postgres Generate CRUD with JSON Form", () => { agHelper.GetNClickByContains(dataSources._dropdownOption, dsName); }); - agHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated + assertHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated agHelper.GetNClick(dataSources._selectTableDropdown, 0, true); agHelper.GetNClickByContains(dataSources._dropdownOption, "film"); @@ -71,7 +72,7 @@ describe("Postgres Generate CRUD with JSON Form", () => { "Connect new datasource", ); dataSources.CreateDataSource("Postgres", false); - agHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated + assertHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated agHelper.GetNClick(dataSources._selectTableDropdown, 0, true); agHelper.GetNClickByContains(dataSources._dropdownOption, "suppliers"); @@ -125,12 +126,12 @@ describe("Postgres Generate CRUD with JSON Form", () => { jsonFromHeader: string, ) { agHelper.GetNClick(dataSources._generatePageBtn); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); agHelper.AssertContains("Successfully generated a page"); - //agHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes - agHelper.AssertNetworkStatus("@postExecute", 200); + //assertHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); deployMode.DeployApp(); //Validating loaded table diff --git a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres2_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres2_Spec.ts index 6e650137c8..ccfde1dc23 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres2_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/GenerateCRUD/Postgres2_Spec.ts @@ -7,6 +7,7 @@ import { table, locators, entityItems, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; let dsName: any, newCallsign: any; @@ -93,11 +94,11 @@ describe("Validate Postgres Generate CRUD with JSON Form", () => { agHelper.GetNClickByContains(dataSources._dropdownOption, "vessels"); agHelper.GetNClick(dataSources._generatePageBtn); agHelper.ValidateToastMessage("Successfully generated a page"); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); - agHelper.AssertNetworkStatus("@getActions", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@getActions", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); deployMode.DeployApp(); //Validating loaded table @@ -149,7 +150,7 @@ describe("Validate Postgres Generate CRUD with JSON Form", () => { table.WaitUntilTableLoad(); // //Delete the test data // entityExplorer.ActionContextMenuByEntityName("Productlines", "Delete", "Are you sure?"); - // agHelper.AssertNetworkStatus("@deletePage" , 200); + // assertHelper.AssertNetworkStatus("@deletePage" , 200); }); it("5. Update the UpdateQuery to update all columns from UI", () => { @@ -355,8 +356,8 @@ describe("Validate Postgres Generate CRUD with JSON Form", () => { ), ); agHelper.ClickButton("Confirm"); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(2500); // for delete to take effect! table.AssertSelectedRow(0); //Control going back to 1st row in table dataSources.AssertJSONFormHeader(0, 0, "ship_id"); @@ -555,8 +556,8 @@ describe("Validate Postgres Generate CRUD with JSON Form", () => { agHelper.ClickButton("Submit"); //asserting only Update JSON form is present, & Insert Modal is closed - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(3000); //for Insert to reflect! // agHelper // .GetElementLength(locators._jsonFormWidget) @@ -595,8 +596,8 @@ describe("Validate Postgres Generate CRUD with JSON Form", () => { ), ); agHelper.ClickButton("Confirm"); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); table.AssertSelectedRow(0); //Control going back to 1st row in table table.ReadTableRowColumnData(0, 0, "v1", 2000).then(($cellData) => { @@ -663,12 +664,12 @@ describe("Validate Postgres Generate CRUD with JSON Form", () => { jsonFromHeader: string, ) { agHelper.GetNClick(dataSources._generatePageBtn); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); agHelper.AssertContains("Successfully generated a page"); - //agHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes - agHelper.AssertNetworkStatus("@postExecute", 200); + //assertHelper.AssertNetworkStatus("@getActions", 200);//Since failing sometimes + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); deployMode.DeployApp(); //Validating loaded table @@ -729,8 +730,8 @@ describe("Validate Postgres Generate CRUD with JSON Form", () => { agHelper.ClickButton("Update"); //Update does not work, Bug 14063 agHelper.AssertElementAbsence(locators._toastMsg); //Validating fix for Bug 14063 - for common table columns agHelper.AssertElementAbsence(locators._btnSpinner, 10000); //10 secs for update to reflect! - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); table.AssertSelectedRow(rowIndex); //Validate Primary key column selection //validating update happened fine! diff --git a/app/client/cypress/e2e/Regression/ServerSide/OnLoadTests/APIOnLoad_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/OnLoadTests/APIOnLoad_Spec.ts index 6d7af72fcd..64e3b3685d 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/OnLoadTests/APIOnLoad_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/OnLoadTests/APIOnLoad_Spec.ts @@ -4,6 +4,7 @@ import { propPane, apiPage, entityItems, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("JSObjects OnLoad Actions tests", function () { @@ -32,7 +33,7 @@ describe("JSObjects OnLoad Actions tests", function () { "[PageLoadApi] will be executed automatically on page load", ); agHelper.RefreshPage(); - agHelper.AssertNetworkStatus("@postExecute"); + assertHelper.AssertNetworkStatus("@postExecute"); }); it("2. Shows when API failed to load on page load.", function () { diff --git a/app/client/cypress/e2e/Regression/ServerSide/OnLoadTests/PostgresConnections_spec.ts b/app/client/cypress/e2e/Regression/ServerSide/OnLoadTests/PostgresConnections_spec.ts index 776a36e278..a166c4ceda 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/OnLoadTests/PostgresConnections_spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/OnLoadTests/PostgresConnections_spec.ts @@ -5,6 +5,7 @@ import { deployMode, dataSources, entityItems, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; let guid: any, dsName_1: any, dsName_2: any; @@ -85,7 +86,7 @@ describe("Test Postgres number of connections on page load + Bug 11572, Bug 1120 "Default selected value", "{{Query_" + i + ".data[" + (i - 1) + "].table_name}}", ); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); } }); diff --git a/app/client/cypress/e2e/Regression/ServerSide/Params/PassingParams_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/Params/PassingParams_Spec.ts index ec2a6f6441..682cf8c158 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/Params/PassingParams_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/Params/PassingParams_Spec.ts @@ -10,6 +10,7 @@ import { table, draggableWidgets, entityItems, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; let jsName: any, dsName: any; @@ -242,7 +243,7 @@ describe("Bug #10784 - Passing params from JS to SQL query should not break", () action: "Delete", entityType: entityItems.Query, }); - agHelper.AssertNetworkStatus("@deleteAction", 200); + assertHelper.AssertNetworkStatus("@deleteAction", 200); entityExplorer.ActionContextMenuByEntityName({ entityNameinLeftSidebar: jsName as string, action: "Delete", @@ -251,6 +252,6 @@ describe("Bug #10784 - Passing params from JS to SQL query should not break", () // //Bug 12532 // entityExplorer.ExpandCollapseEntity('Datasources') // entityExplorer.ActionContextMenuByEntityName(dsName, 'Delete', 'Are you sure?') - // agHelper.AssertNetworkStatus("@deleteAction", 200) + // assertHelper.AssertNetworkStatus("@deleteAction", 200) }); }); diff --git a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Array_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Array_Spec.ts index e3aebe56ed..a3799250fe 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Array_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Array_Spec.ts @@ -7,6 +7,7 @@ import { dataSources, table, entityItems, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("Array Datatype tests", function () { @@ -597,8 +598,8 @@ describe("Array Datatype tests", function () { table.WaitUntilTableLoad(); table.SelectTableRow(1); agHelper.ClickButton("DeleteQuery", 1); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(2500); //Allwowing time for delete to be success table.ReadTableRowColumnData(1, 0, "v1", 2000).then(($cellData) => { expect($cellData).not.to.eq("3"); //asserting 2nd record is deleted diff --git a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Binary_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Binary_Spec.ts index 8921b68118..e4b6c921bb 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Binary_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Binary_Spec.ts @@ -7,6 +7,7 @@ import { entityItems, dataSources, table, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe.skip("Binary Datatype tests", function () { @@ -198,8 +199,8 @@ describe.skip("Binary Datatype tests", function () { table.WaitUntilTableLoad(); table.SelectTableRow(1); agHelper.ClickButton("DeleteQuery", 1); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.AssertElementAbsence(locators._btnSpinner, 20000); //Allowing time for delete to be success agHelper.Sleep(6000); //Allwowing time for delete to be success table.ReadTableRowColumnData(1, 0).then(($cellData) => { diff --git a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/BooleanEnum_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/BooleanEnum_Spec.ts index f766732553..4de84beb61 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/BooleanEnum_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/BooleanEnum_Spec.ts @@ -7,6 +7,7 @@ import { dataSources, table, entityItems, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("Boolean & Enum Datatype tests", function () { @@ -192,8 +193,8 @@ describe("Boolean & Enum Datatype tests", function () { table.WaitUntilTableLoad(); table.SelectTableRow(1); agHelper.ClickButton("DeleteQuery", 1); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(2500); //Allwowing time for delete to be success table.ReadTableRowColumnData(1, 0, "v1", 2000).then(($cellData) => { expect($cellData).not.to.eq("2"); //asserting 2nd record is deleted diff --git a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Character_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Character_Spec.ts index c4a672e881..6d295505d0 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Character_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Character_Spec.ts @@ -6,6 +6,7 @@ import { appSettings, dataSources, table, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("Character Datatype tests", function () { @@ -217,8 +218,8 @@ describe("Character Datatype tests", function () { it("8. Deleting records - chartypes", () => { table.SelectTableRow(1); agHelper.ClickButton("DeleteQuery", 1); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(2500); //Allwowing time for delete to be success table.ReadTableRowColumnData(1, 0, "v1", 2000).then(($cellData) => { expect($cellData).not.to.eq("2"); //asserting 2nd record is deleted diff --git a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/DateTime_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/DateTime_Spec.ts index 0d72596261..92295dbd40 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/DateTime_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/DateTime_Spec.ts @@ -6,6 +6,7 @@ import { dataSources, table, locators, + assertHelper, entityItems, } from "../../../../support/Objects/ObjectsCore"; @@ -264,8 +265,8 @@ describe("DateTime Datatype tests", function () { it("8. Deleting records - datetimetypes", () => { agHelper.ClickButton("DeleteQuery", 1); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(2500); //Allwowing time for delete to be success agHelper .GetText(table._showPageItemsCount) diff --git a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Json_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Json_Spec.ts index 21b0d545d4..8f82ff7a65 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Json_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Json_Spec.ts @@ -7,6 +7,7 @@ import { table, entityItems, locators, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("Json & JsonB Datatype tests", function () { @@ -275,8 +276,8 @@ describe("Json & JsonB Datatype tests", function () { table.WaitUntilTableLoad(); table.SelectTableRow(1); agHelper.ClickButton("DeleteQuery", 1); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(2500); //Allwowing time for delete to be success table.ReadTableRowColumnData(1, 0, "v1", 2000).then(($cellData) => { expect($cellData).not.to.eq("3"); //asserting 2nd record is deleted @@ -644,8 +645,8 @@ describe("Json & JsonB Datatype tests", function () { table.WaitUntilTableLoad(); table.SelectTableRow(1); agHelper.ClickButton("DeleteQuery", 1); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(2500); //Allwowing time for delete to be success table.ReadTableRowColumnData(1, 0, "v1", 2000).then(($cellData) => { expect($cellData).not.to.eq("3"); //asserting 2nd record is deleted diff --git a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Numeric_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Numeric_Spec.ts index dd930aea87..b4247319f6 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Numeric_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/Numeric_Spec.ts @@ -6,6 +6,7 @@ import { appSettings, dataSources, table, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("Numeric Datatype tests", function () { @@ -198,8 +199,8 @@ describe("Numeric Datatype tests", function () { it("8. Deleting records - numerictypes", () => { table.SelectTableRow(1); agHelper.ClickButton("DeleteQuery", 1); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); agHelper.Sleep(2500); //Allwowing time for delete to be success table.ReadTableRowColumnData(1, 0, "v1", 2000).then(($cellData) => { expect($cellData).not.to.eq("2"); //asserting 2nd record is deleted diff --git a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/UUID_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/UUID_Spec.ts index e28265f4c4..cbbff1a429 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/UUID_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/Postgres_DataTypes/UUID_Spec.ts @@ -8,6 +8,7 @@ import { table, locators, entityItems, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; describe("UUID Datatype tests", function () { @@ -359,8 +360,8 @@ describe("UUID Datatype tests", function () { table.WaitUntilTableLoad(); table.SelectTableRow(1); agHelper.ClickButton("DeleteQuery", 1); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); table.ReadTableRowColumnData(1, 0).then(($cellData) => { expect($cellData).not.to.eq("2"); //asserting 2nd record is deleted }); diff --git a/app/client/cypress/e2e/Regression/ServerSide/QueryPane/Mongo_Spec.ts b/app/client/cypress/e2e/Regression/ServerSide/QueryPane/Mongo_Spec.ts index 505f9789c7..bb6c4aeece 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/QueryPane/Mongo_Spec.ts +++ b/app/client/cypress/e2e/Regression/ServerSide/QueryPane/Mongo_Spec.ts @@ -37,7 +37,7 @@ describe("Validate Mongo Query Pane Validations", () => { ); dataSources.CreateDataSource("Mongo", false); - agHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated + assertHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated agHelper.GetNClick(dataSources._selectTableDropdown, 0, true); agHelper.GetNClickByContains(dataSources._dropdownOption, "friends"); @@ -845,7 +845,7 @@ describe("Validate Mongo Query Pane Validations", () => { //Delete the test data // entityExplorer.expandCollapseEntity("Pages") // entityExplorer.ActionContextMenuByEntityName("Page1", "Delete", "Are you sure?"); //Cant be deleted since this is the Home page! - // agHelper.AssertNetworkStatus("@deletePage", 200); + // assertHelper.AssertNetworkStatus("@deletePage", 200); deployMode.DeployApp(); deployMode.NavigateBacktoEditor(); dataSources.DeleteDatasouceFromWinthinDS(dsName, 409); //Friends pages are still using this ds @@ -858,11 +858,11 @@ describe("Validate Mongo Query Pane Validations", () => { idIndex: number, ) { agHelper.GetNClick(dataSources._generatePageBtn); - agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); agHelper.AssertContains("Successfully generated a page"); - agHelper.AssertNetworkStatus("@getActions", 200); - agHelper.AssertNetworkStatus("@postExecute", 200); - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@getActions", 200); + assertHelper.AssertNetworkStatus("@postExecute", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); agHelper.GetNClick(dataSources._visibleTextSpan("Got it")); deployMode.DeployApp(); diff --git a/app/client/cypress/e2e/Regression/ServerSide/QueryPane/Postgres_Spec.js b/app/client/cypress/e2e/Regression/ServerSide/QueryPane/Postgres_Spec.js index 2e455aaa43..344456ccb7 100644 --- a/app/client/cypress/e2e/Regression/ServerSide/QueryPane/Postgres_Spec.js +++ b/app/client/cypress/e2e/Regression/ServerSide/QueryPane/Postgres_Spec.js @@ -6,6 +6,7 @@ import { entityExplorer, agHelper, entityItems, + assertHelper, } from "../../../../support/Objects/ObjectsCore"; let datasourceName; @@ -153,7 +154,7 @@ describe("Validate CRUD queries for Postgres along with UI flow verifications", "response.body.responseMeta.status", 200, ); //This verifies the Select on the table, ie page is created fine - agHelper.AssertNetworkStatus("@updateLayout", 200); + assertHelper.AssertNetworkStatus("@updateLayout", 200); cy.ClickGotIt(); cy.wait(3000); diff --git a/app/client/cypress/e2e/Sanity/Datasources/Airtable_Basic_Spec.ts b/app/client/cypress/e2e/Sanity/Datasources/Airtable_Basic_Spec.ts index dc8ef5ed8c..571449ac1b 100644 --- a/app/client/cypress/e2e/Sanity/Datasources/Airtable_Basic_Spec.ts +++ b/app/client/cypress/e2e/Sanity/Datasources/Airtable_Basic_Spec.ts @@ -4,6 +4,7 @@ import { entityItems, dataSources, hostPort, + assertHelper, } from "../../../support/Objects/ObjectsCore"; let dsName: any, jsonSpecies: any, offset: any, insertedRecordId: any; @@ -370,6 +371,6 @@ describe("excludeForAirgap", "Validate Airtable Ds", () => { action: "Delete", entityType: entityItems.Datasource, }); - agHelper.AssertNetworkStatus("@deleteDatasource", 200); + assertHelper.AssertNetworkStatus("@deleteDatasource", 200); }); }); diff --git a/app/client/cypress/e2e/Smoke/Apps/ReconnectDatasource_spec.js b/app/client/cypress/e2e/Smoke/Apps/ReconnectDatasource_spec.js index 67f6c2e4fe..1ac7704d52 100644 --- a/app/client/cypress/e2e/Smoke/Apps/ReconnectDatasource_spec.js +++ b/app/client/cypress/e2e/Smoke/Apps/ReconnectDatasource_spec.js @@ -75,6 +75,7 @@ describe("Reconnect Datasource Modal validation while importing application", fu "Application imported successfully", ); } + cy.wait("@getWorkspace"); // check datasource configured success modal cy.get(".t--import-app-success-modal").should("be.visible"); cy.get(".t--import-app-success-modal").should( @@ -83,6 +84,7 @@ describe("Reconnect Datasource Modal validation while importing application", fu ); cy.get(".t--import-success-modal-got-it").click({ force: true }); cy.get(".t--import-app-success-modal").should("not.exist"); + cy.wait("@getWorkspace"); const uuid = () => Cypress._.random(0, 1e4); const name = uuid(); diff --git a/app/client/cypress/support/Pages/AggregateHelper.ts b/app/client/cypress/support/Pages/AggregateHelper.ts index e2dd397893..e7e9bdefbe 100644 --- a/app/client/cypress/support/Pages/AggregateHelper.ts +++ b/app/client/cypress/support/Pages/AggregateHelper.ts @@ -383,29 +383,6 @@ export class AggregateHelper extends ReusableHelper { .should("eq", expectedRes); } - public AssertNetworkStatus(aliasName: string, expectedStatus = 200) { - // cy.wait(aliasName).then(($apiCall: any) => { - // expect($apiCall.response.body.responseMeta.status).to.eq(expectedStatus); - // }); - - // cy.wait(aliasName).should( - // "have.nested.property", - // "response.body.responseMeta.status", - // expectedStatus, - // ); - this.Sleep(); //Wait a bit for call to finish! - aliasName = aliasName.startsWith("@") ? aliasName : "@" + aliasName; - cy.wait(aliasName); - cy.get(aliasName) - .its("response.body.responseMeta.status") - .should("eq", expectedStatus); - - //To improve below: - // cy.wait(aliasName, { timeout: timeout }).should((response: any) => { - // expect(response.status).to.be.oneOf([expectedStatus]); - // }); - } - public AssertNetworkDataNestedProperty( aliasName: string, expectedPath: string, @@ -865,7 +842,7 @@ export class AggregateHelper extends ReusableHelper { this.assertHelper.AssertDocumentReady(); }); this.Sleep(2000); - this.AssertNetworkStatus("@" + networkCall); //getWorkspace for Edit page! + this.assertHelper.AssertNetworkStatus("@" + networkCall); //getWorkspace for Edit page! } public ActionContextMenuWithInPane({ @@ -1402,7 +1379,8 @@ export class AggregateHelper extends ReusableHelper { cy.visit(url, { timeout: 60000 }); if (apiToValidate.includes("getReleaseItems") && Cypress.env("AIRGAPPED")) { this.Sleep(2000); - } else apiToValidate && this.AssertNetworkStatus(apiToValidate); + } else + apiToValidate && this.assertHelper.AssertNetworkStatus(apiToValidate); } //Not used: diff --git a/app/client/cypress/support/Pages/ApiPage.ts b/app/client/cypress/support/Pages/ApiPage.ts index cdfdcd9697..21995aa1c2 100644 --- a/app/client/cypress/support/Pages/ApiPage.ts +++ b/app/client/cypress/support/Pages/ApiPage.ts @@ -5,6 +5,7 @@ type RightPaneTabs = "datasources" | "connections"; export class ApiPage { public agHelper = ObjectsRegistry.AggregateHelper; public locator = ObjectsRegistry.CommonLocators; + private assertHelper = ObjectsRegistry.AssertHelper; private _createapi = ".t--createBlankApiCard"; _resourceUrl = ".t--dataSourceField"; @@ -87,7 +88,7 @@ export class ApiPage { this.agHelper.GetNClick(this._blankAPI, 0, true); this.agHelper.RemoveTooltip("Add a new query/JS Object"); } - this.agHelper.AssertNetworkStatus("@createNewApi", 201); + this.assertHelper.AssertNetworkStatus("@createNewApi", 201); // cy.get("@createNewApi").then((response: any) => { // expect(response.response.body.responseMeta.success).to.eq(true); @@ -424,7 +425,7 @@ export class ApiPage { CreateGraphqlApi(apiName = "") { cy.get(this.locator._createNew).click({ force: true }); cy.get(this._blankGraphqlAPI).click({ force: true }); - this.agHelper.AssertNetworkStatus("@createNewApi", 201); + this.assertHelper.AssertNetworkStatus("@createNewApi", 201); if (apiName) this.agHelper.RenameWithInPane(apiName); cy.get(this._resourceUrl).should("be.visible"); diff --git a/app/client/cypress/support/Pages/AppSettings/EmbedSettings.ts b/app/client/cypress/support/Pages/AppSettings/EmbedSettings.ts index f8238e9000..8f398f3045 100644 --- a/app/client/cypress/support/Pages/AppSettings/EmbedSettings.ts +++ b/app/client/cypress/support/Pages/AppSettings/EmbedSettings.ts @@ -3,6 +3,7 @@ import { ObjectsRegistry } from "../../Objects/Registry"; export class EmbedSettings { private agHelper = ObjectsRegistry.AggregateHelper; private appSettings = ObjectsRegistry.AppSettings; + private assertHelper = ObjectsRegistry.AssertHelper; public locators = { _getDimensionInput: (prefix: string) => `.t--${prefix}-dimension input`, @@ -44,7 +45,7 @@ export class EmbedSettings { input.invoke("attr", "checked").then((value) => { if (value !== check) { this.agHelper.GetNClick(this.locators._showNavigationBar); - this.agHelper.AssertNetworkStatus("@updateApplication"); + this.assertHelper.AssertNetworkStatus("@updateApplication"); } }); } @@ -59,7 +60,7 @@ export class EmbedSettings { this.agHelper.GetNClick(this.locators._confirmForking); } - this.agHelper.AssertNetworkStatus("@updateApplication"); + this.assertHelper.AssertNetworkStatus("@updateApplication"); } }); } diff --git a/app/client/cypress/support/Pages/AppSettings/GeneralSettings.ts b/app/client/cypress/support/Pages/AppSettings/GeneralSettings.ts index 0b91c4d3ab..fd848269ca 100644 --- a/app/client/cypress/support/Pages/AppSettings/GeneralSettings.ts +++ b/app/client/cypress/support/Pages/AppSettings/GeneralSettings.ts @@ -3,6 +3,7 @@ import { ObjectsRegistry } from "../../Objects/Registry"; export class GeneralSettings { private agHelper = ObjectsRegistry.AggregateHelper; private appSettings = ObjectsRegistry.AppSettings; + private assertHelper = ObjectsRegistry.AssertHelper; private locators = { _appNameField: "#t--general-settings-app-name", @@ -27,7 +28,7 @@ export class GeneralSettings { ); this.agHelper.PressEnter(); this.agHelper.Sleep(); - this.agHelper.AssertNetworkStatus("@updateApplication", 200); + this.assertHelper.AssertNetworkStatus("@updateApplication", 200); this.appSettings.CheckUrl(appNameToBeVerified, pageName); if (reset) { this.agHelper.RemoveCharsNType( @@ -36,7 +37,7 @@ export class GeneralSettings { currentAppName as string, ); this.agHelper.PressEnter(); - this.agHelper.AssertNetworkStatus("@updateApplication", 200); + this.assertHelper.AssertNetworkStatus("@updateApplication", 200); this.appSettings.CheckUrl(currentAppName as string, pageName); } }); @@ -53,6 +54,6 @@ export class GeneralSettings { UpdateAppIcon() { this.agHelper.GetNClick(this.locators._appNonSelectedIcon, 0); - this.agHelper.AssertNetworkStatus("@updateApplication", 200); + this.assertHelper.AssertNetworkStatus("@updateApplication", 200); } } diff --git a/app/client/cypress/support/Pages/AppSettings/PageSettings.ts b/app/client/cypress/support/Pages/AppSettings/PageSettings.ts index e45751a64d..704862c851 100644 --- a/app/client/cypress/support/Pages/AppSettings/PageSettings.ts +++ b/app/client/cypress/support/Pages/AppSettings/PageSettings.ts @@ -4,6 +4,7 @@ export class PageSettings { private agHelper = ObjectsRegistry.AggregateHelper; private homePage = ObjectsRegistry.HomePage; private appSettings = ObjectsRegistry.AppSettings; + private assertHelper = ObjectsRegistry.AssertHelper; private locators = { _pageNameField: "#t--page-settings-name", @@ -78,7 +79,7 @@ export class PageSettings { newPageName, ); this.agHelper.PressEnter(); - this.agHelper.AssertNetworkStatus("@updatePage", 200); + this.assertHelper.AssertNetworkStatus("@updatePage", 200); this.appSettings.CheckUrl(appName as string, pageNameToBeVerified); if (reset) { this.agHelper.RemoveCharsNType( @@ -87,7 +88,7 @@ export class PageSettings { currentPageName as string, ); this.agHelper.PressEnter(); - this.agHelper.AssertNetworkStatus("@updatePage", 200); + this.assertHelper.AssertNetworkStatus("@updatePage", 200); this.appSettings.CheckUrl( appName as string, currentPageName as string, @@ -114,7 +115,7 @@ export class PageSettings { ); } this.agHelper.PressEnter(); - this.agHelper.AssertNetworkStatus("@updatePage", 200); + this.assertHelper.AssertNetworkStatus("@updatePage", 200); this.appSettings.CheckUrl(appName as string, "", customSlug); }); }); @@ -131,12 +132,12 @@ export class PageSettings { TogglePageNavigation() { this.agHelper.GetNClick(this.locators._showPageNavSwitch); - this.agHelper.AssertNetworkStatus("@updatePage", 200); + this.assertHelper.AssertNetworkStatus("@updatePage", 200); } ToggleHomePage() { this.agHelper.GetNClick(this.locators._setAsHomePageSwitch); - this.agHelper.AssertNetworkStatus("@makePageDefault", 200); + this.assertHelper.AssertNetworkStatus("@makePageDefault", 200); } AssertHomePage(pageName: string) { diff --git a/app/client/cypress/support/Pages/AutoLayout.ts b/app/client/cypress/support/Pages/AutoLayout.ts index e6c5b3f34d..6938722bb6 100644 --- a/app/client/cypress/support/Pages/AutoLayout.ts +++ b/app/client/cypress/support/Pages/AutoLayout.ts @@ -16,6 +16,7 @@ export class AutoLayout { private propPane = ObjectsRegistry.PropertyPane; private agHelper = ObjectsRegistry.AggregateHelper; private locators = ObjectsRegistry.CommonLocators; + private assertHelper = ObjectsRegistry.AssertHelper; _buttonWidgetSelector = this.locators._widgetInDeployed(WIDGET.BUTTON); _buttonComponentSelector = @@ -50,13 +51,13 @@ export class AutoLayout { this.agHelper.GetNClick(this.convertDialogButton, 0, true); - this.agHelper.AssertNetworkStatus("@updateApplication"); + this.assertHelper.AssertNetworkStatus("@updateApplication"); if (isNotNewApp) { - this.agHelper.AssertNetworkStatus("@snapshotSuccess", 201); + this.assertHelper.AssertNetworkStatus("@snapshotSuccess", 201); } this.agHelper.GetNClick(this.refreshAppDialogButton, 0, true); - this.agHelper.AssertNetworkStatus("@getWorkspace"); //getWorkspace for Edit page! + this.assertHelper.AssertNetworkStatus("@getWorkspace"); //getWorkspace for Edit page! this.VerifyIsAutoLayout(); } @@ -82,8 +83,8 @@ export class AutoLayout { } }); - this.agHelper.AssertNetworkStatus("@updateApplication"); - this.agHelper.AssertNetworkStatus("@snapshotSuccess", 201); + this.assertHelper.AssertNetworkStatus("@updateApplication"); + this.assertHelper.AssertNetworkStatus("@snapshotSuccess", 201); this.agHelper.GetNClick(this.refreshAppDialogButton, 0, true); cy.wait(2000); diff --git a/app/client/cypress/support/Pages/DataSources.ts b/app/client/cypress/support/Pages/DataSources.ts index 35cd595023..17feb8d18b 100644 --- a/app/client/cypress/support/Pages/DataSources.ts +++ b/app/client/cypress/support/Pages/DataSources.ts @@ -239,7 +239,7 @@ export class DataSources { `div[role="listbox"] p[kind="span"]:contains("${tableName}")`, ).click(); this.agHelper.GetNClick(this._generatePageBtn); - this.agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + this.assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); this.agHelper.GetNClick(this.locator._visibleTextSpan("Got it")); } @@ -252,11 +252,11 @@ export class DataSources { ); this.agHelper.GetNClick(this._mockDB("Users")); this.agHelper.Sleep(500); - this.agHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated + this.assertHelper.AssertNetworkStatus("@getDatasourceStructure"); //Making sure table dropdown is populated this.agHelper.GetNClick(this._selectTableDropdown, 0, true); this.agHelper.GetNClickByContains(this._dropdownOption, "public.users"); this.agHelper.GetNClick(this._generatePageBtn); - this.agHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); + this.assertHelper.AssertNetworkStatus("@replaceLayoutWithCRUDPage", 201); this.agHelper.GetNClick(this.locator._visibleTextSpan("Got it")); } @@ -577,7 +577,7 @@ export class DataSources { public FillUnAuthenticatedGraphQLDSForm() { this.agHelper.GetNClick(this._createBlankGraphQL); this.apiPage.EnterURL(this.hp.GraphqlApiUrl_TED); - this.agHelper.AssertNetworkStatus("@createNewApi", 201); + this.assertHelper.AssertNetworkStatus("@createNewApi", 201); } public CreateNFillAuthenticatedGraphQLDSForm( @@ -622,7 +622,7 @@ export class DataSources { public SaveDatasource() { this.agHelper.GetNClick(this._saveDs); - this.agHelper.AssertNetworkStatus("@saveDatasource", 201); + this.assertHelper.AssertNetworkStatus("@saveDatasource", 201); this.agHelper.AssertContains("datasource created"); // cy.wait("@saveDatasource") @@ -633,12 +633,12 @@ export class DataSources { public AuthAPISaveAndAuthorize() { cy.get(this._saveAndAuthorizeDS).click(); - this.agHelper.AssertNetworkStatus("@saveDatasource", 201); + this.assertHelper.AssertNetworkStatus("@saveDatasource", 201); } public UpdateDatasource() { this.agHelper.GetNClick(this._saveDs); - // this.agHelper.AssertNetworkStatus("@updateDatasource", 200); + // this.assertHelper.AssertNetworkStatus("@updateDatasource", 200); this.agHelper.AssertContains("datasource updated"); } @@ -706,7 +706,7 @@ export class DataSources { if (expectedRes == 200) this.agHelper.AssertContains("datasource deleted successfully"); else this.agHelper.AssertContains("action(s) using it."); - this.agHelper.AssertNetworkStatus( + this.assertHelper.AssertNetworkStatus( "@deleteDatasource", expectedRes as number, ); @@ -747,7 +747,7 @@ export class DataSources { 20000, ); !createQuery && - this.agHelper.AssertNetworkStatus("@getDatasourceStructure", 200); //Making sure table dropdown is populated + this.assertHelper.AssertNetworkStatus("@getDatasourceStructure", 200); //Making sure table dropdown is populated } public AssertDSActive(dsName: string) { @@ -775,7 +775,7 @@ export class DataSources { this.agHelper.GetNClick(this._createQuery, 0, true); }); this.agHelper.Sleep(2000); //for the CreateQuery - //this.agHelper.AssertNetworkStatus("@createNewApi", 201);//throwing 404 in CI sometimes + //this.assertHelper.AssertNetworkStatus("@createNewApi", 201);//throwing 404 in CI sometimes this.agHelper.AssertElementVisible( this.locator._spanButton("Run"), 0, @@ -785,7 +785,7 @@ export class DataSources { CreateQueryAfterDSSaved(query = "", queryName = "") { this.agHelper.GetNClick(this._createQuery); - //this.agHelper.AssertNetworkStatus("@createNewApi", 201); + //this.assertHelper.AssertNetworkStatus("@createNewApi", 201); this.agHelper.AssertElementVisible( this.locator._spanButton("Run"), 0, @@ -1114,7 +1114,7 @@ export class DataSources { true, 0, ); - this.agHelper.AssertNetworkStatus("@saveDatasource", 201); + this.assertHelper.AssertNetworkStatus("@saveDatasource", 201); this.agHelper.AssertContains("datasource created"); } else this.agHelper.GetNClick( @@ -1238,7 +1238,7 @@ export class DataSources { this.agHelper.GetNClick(this._consentSubmit); //Validate save - this.agHelper.AssertNetworkStatus("@saveDatasource", 201); + this.assertHelper.AssertNetworkStatus("@saveDatasource", 201); } public FillAPIOAuthForm( diff --git a/app/client/cypress/support/Pages/DeployModeHelper.ts b/app/client/cypress/support/Pages/DeployModeHelper.ts index e5550d7e4b..d5ce5dbcd6 100644 --- a/app/client/cypress/support/Pages/DeployModeHelper.ts +++ b/app/client/cypress/support/Pages/DeployModeHelper.ts @@ -93,7 +93,7 @@ export class DeployMode { this.agHelper.Sleep(2000); localStorage.setItem("inDeployedMode", "false"); this.assertHelper.AssertDocumentReady(); - this.agHelper.AssertNetworkStatus("@getWorkspace"); + this.assertHelper.AssertNetworkStatus("@getWorkspace"); this.agHelper.AssertElementVisible(this.locator._dropHere); //Assert if canvas is visible after Navigating back! } diff --git a/app/client/cypress/support/Pages/EntityExplorer.ts b/app/client/cypress/support/Pages/EntityExplorer.ts index fb8d594d2a..f6207f9010 100644 --- a/app/client/cypress/support/Pages/EntityExplorer.ts +++ b/app/client/cypress/support/Pages/EntityExplorer.ts @@ -39,6 +39,7 @@ export class EntityExplorer { public agHelper = ObjectsRegistry.AggregateHelper; public locator = ObjectsRegistry.CommonLocators; private modifierKey = Cypress.platform === "darwin" ? "meta" : "ctrl"; + private assertHelper = ObjectsRegistry.AssertHelper; private _contextMenu = (entityNameinLeftSidebar: string) => "//div[text()='" + @@ -130,7 +131,7 @@ export class EntityExplorer { this.agHelper.GetNClick(this.locator._newPage); this.agHelper.GetNClick(this._newPageOptions(option)); if (option === "New blank page") { - this.agHelper.AssertNetworkStatus("@createPage", 201); + this.assertHelper.AssertNetworkStatus("@createPage", 201); return cy .get("@createPage") .then(($pageName: any) => $pageName.response?.body.data.name); @@ -258,7 +259,7 @@ export class EntityExplorer { .click({ force: true }); cy.xpath(this.locator._contextMenuItem("Delete")).click({ force: true }); this.agHelper.Sleep(500); - this.agHelper.AssertNetworkStatus("@updateLayout"); + this.assertHelper.AssertNetworkStatus("@updateLayout"); this.AssertEntityAbsenceInExplorer(widgetNameinLeftSidebar); } @@ -363,7 +364,7 @@ export class EntityExplorer { entityNameinLeftSidebar: pageName, action: "Clone", }); - this.agHelper.AssertNetworkStatus("@clonePage", 201); + this.assertHelper.AssertNetworkStatus("@clonePage", 201); } public CreateNewDsQuery(dsName: string, isQuery = true) { diff --git a/app/client/cypress/support/Pages/GitSync.ts b/app/client/cypress/support/Pages/GitSync.ts index 9411c75a4e..57c70b6723 100644 --- a/app/client/cypress/support/Pages/GitSync.ts +++ b/app/client/cypress/support/Pages/GitSync.ts @@ -6,6 +6,7 @@ export class GitSync { public agHelper = ObjectsRegistry.AggregateHelper; public locator = ObjectsRegistry.CommonLocators; private hostPort = ObjectsRegistry.DefaultHostPort; + private assertHelper = ObjectsRegistry.AssertHelper; private _connectGitBottomBar = ".t--connect-git-bottom-bar"; private _gitSyncModal = "[data-testid=t--git-sync-modal]"; @@ -126,7 +127,7 @@ export class GitSync { this.agHelper.TypeText(this._gitConfigEmailInput, "test@test.com"); this.agHelper.ClickButton("Connect"); if (assertConnect) { - this.agHelper.AssertNetworkStatus("@connectGitLocalRepo"); + this.assertHelper.AssertNetworkStatus("@connectGitLocalRepo"); this.agHelper.AssertElementExist(this._bottomBarCommit, 0, 30000); this.CloseGitSyncModal(); } @@ -159,7 +160,7 @@ export class GitSync { this.agHelper.AssertElementExist(this.locator._btnSpinner); this.agHelper.AssertElementAbsence(this.locator._btnSpinner, 70000); //Since page taking more time to laod in some cases this.agHelper.AssertElementVisible(this._branchName(branch + uid)); - this.agHelper.AssertNetworkStatus("getBranch"); + this.assertHelper.AssertNetworkStatus("getBranch"); cy.wrap(branch + uid).as("gitbranchName"); }); } @@ -291,7 +292,7 @@ export class GitSync { // cy.intercept("POST", "/api/v1/git/connect/app/*", { // fixture: "/Bugs/GitConnectResponse.json", // }); - this.agHelper.AssertNetworkStatus("@connectGitLocalRepo"); + this.assertHelper.AssertNetworkStatus("@connectGitLocalRepo"); } this.CloseGitSyncModal(); }); diff --git a/app/client/cypress/support/Pages/HomePage.ts b/app/client/cypress/support/Pages/HomePage.ts index fd333b3cc2..7335c6c8c8 100644 --- a/app/client/cypress/support/Pages/HomePage.ts +++ b/app/client/cypress/support/Pages/HomePage.ts @@ -6,6 +6,7 @@ export class HomePage { private locator = ObjectsRegistry.CommonLocators; private entityExplorer = ObjectsRegistry.EntityExplorer; private onboarding = ObjectsRegistry.Onboarding; + private assertHelper = ObjectsRegistry.AssertHelper; private _inviteButton = ".t--invite-user-btn"; private _username = "input[name='username']"; @@ -112,7 +113,7 @@ export class HomePage { public CreateNewWorkspace(workspaceNewName: string) { let oldName = ""; this.agHelper.GetNClick(this._newWorkSpaceLink); - this.agHelper.AssertNetworkStatus("createWorkspace", 201); + this.assertHelper.AssertNetworkStatus("createWorkspace", 201); this.agHelper.Sleep(2000); cy.xpath(this._lastWorkspaceInHomePage) .first() @@ -144,7 +145,7 @@ export class HomePage { this.agHelper.GetNClick(this._renameWorkspaceContainer, 0, true); this.agHelper.TypeText(this._renameWorkspaceInput, newWorkspaceName).blur(); this.agHelper.Sleep(2000); - this.agHelper.AssertNetworkStatus("@updateWorkspace"); + this.assertHelper.AssertNetworkStatus("@updateWorkspace"); this.agHelper.AssertContains(newWorkspaceName); } @@ -217,7 +218,7 @@ export class HomePage { cy.get(this._homeIcon).click({ force: true }); this.agHelper.Sleep(2000); if (!Cypress.env("AIRGAPPED")) { - this.agHelper.AssertNetworkStatus("@getReleaseItems"); + this.assertHelper.AssertNetworkStatus("@getReleaseItems"); } else { this.agHelper.Sleep(2000); } @@ -227,7 +228,7 @@ export class HomePage { public CreateNewApplication(skipSignposting = true) { cy.get(this._homePageAppCreateBtn).first().click({ force: true }); - this.agHelper.AssertNetworkStatus("@createNewApplication", 201); + this.assertHelper.AssertNetworkStatus("@createNewApplication", 201); cy.get(this.locator._loading).should("not.exist"); if (skipSignposting) { @@ -235,6 +236,7 @@ export class HomePage { this.onboarding.closeIntroModal(); this.onboarding.skipSignposting(); } + this.assertHelper.AssertNetworkStatus("getWorkspace"); } //Maps to CreateAppForWorkspace in command.js @@ -243,11 +245,11 @@ export class HomePage { .scrollIntoView() .should("be.visible") .click({ force: true }); - this.agHelper.AssertNetworkStatus("@createNewApplication", 201); + this.assertHelper.AssertNetworkStatus("@createNewApplication", 201); cy.get(this.locator._loading).should("not.exist"); this.agHelper.Sleep(2000); if (appname) this.RenameApplication(appname); - //this.agHelper.AssertNetworkStatus("@updateApplication", 200); + //this.assertHelper.AssertNetworkStatus("@updateApplication", 200); } //Maps to AppSetupForRename in command.js @@ -284,7 +286,7 @@ export class HomePage { if (toNavigateToHome) this.NavigateToHome(); this.agHelper.GetNClick(this._profileMenu); this.agHelper.GetNClick(this._signout); - this.agHelper.AssertNetworkStatus("@postLogout"); + this.assertHelper.AssertNetworkStatus("@postLogout"); this.agHelper.Sleep(); //for logout to complete! } @@ -524,7 +526,7 @@ export class HomePage { this.OpenWorkspaceOptions(workspaceName); cy.xpath(this._leaveWorkspace).click({ force: true }); cy.xpath(this._leaveWorkspaceConfirm).click({ force: true }); - this.agHelper.AssertNetworkStatus("@leaveWorkspaceApiCall"); + this.assertHelper.AssertNetworkStatus("@leaveWorkspaceApiCall"); this.agHelper.ValidateToastMessage( "You have successfully left the workspace", diff --git a/app/client/cypress/support/Pages/JSEditor.ts b/app/client/cypress/support/Pages/JSEditor.ts index 657c102caa..d34f6752b9 100644 --- a/app/client/cypress/support/Pages/JSEditor.ts +++ b/app/client/cypress/support/Pages/JSEditor.ts @@ -22,6 +22,7 @@ export class JSEditor { public locator = ObjectsRegistry.CommonLocators; public ee = ObjectsRegistry.EntityExplorer; public propPane = ObjectsRegistry.PropertyPane; + private assertHelper = ObjectsRegistry.AssertHelper; //#region Element locators _runButton = "button.run-js-action"; @@ -132,7 +133,7 @@ export class JSEditor { cy.get(this._newJSobj).eq(0).click({ force: true }); //Checking JS object was created successfully - this.agHelper.AssertNetworkStatus("@jsCollections", 200); + this.assertHelper.AssertNetworkStatus("@jsCollections", 200); // Assert that the name of the JS Object is focused when newly created //cy.get(this._jsObjTxt).should("be.focused").type("{enter}"); this.agHelper.PressEnter(); //for name to settle diff --git a/app/client/cypress/support/Pages/PropertyPane.ts b/app/client/cypress/support/Pages/PropertyPane.ts index 2b999f39e4..5e339518cf 100644 --- a/app/client/cypress/support/Pages/PropertyPane.ts +++ b/app/client/cypress/support/Pages/PropertyPane.ts @@ -1,3 +1,4 @@ +import { assertHelper } from "../Objects/ObjectsCore"; import { ObjectsRegistry } from "../Objects/Registry"; type filedTypeValues = @@ -21,6 +22,7 @@ export class PropertyPane { private agHelper = ObjectsRegistry.AggregateHelper; private entityExplorer = ObjectsRegistry.EntityExplorer; private locator = ObjectsRegistry.CommonLocators; + private assertHelper = ObjectsRegistry.AssertHelper; _jsonFieldEdit = (fieldName: string) => "//input[@placeholder='Field label'][@value='" + @@ -121,7 +123,7 @@ export class PropertyPane { this.OpenJsonFormFieldSettings(fieldName); this.agHelper.SelectDropdownList("Field Type", newDataType); this.agHelper.AssertAutoSave(); - this.agHelper.AssertNetworkStatus("@updateLayout"); + this.assertHelper.AssertNetworkStatus("@updateLayout"); } public NavigateBackToPropertyPane() { @@ -493,7 +495,7 @@ export class PropertyPane { .should("have.value", newName) .blur(); this.agHelper.PressEnter(); - this.agHelper.AssertNetworkStatus("@updateWidgetName"); + this.assertHelper.AssertNetworkStatus("@updateWidgetName"); this.agHelper.Sleep(); } diff --git a/app/client/cypress/support/Pages/Table.ts b/app/client/cypress/support/Pages/Table.ts index 703f208419..1b69bdf3ed 100644 --- a/app/client/cypress/support/Pages/Table.ts +++ b/app/client/cypress/support/Pages/Table.ts @@ -504,7 +504,7 @@ export class Table { ) { this.EditColumn(columnName, tableVersion); this.agHelper.SelectDropdownList("Column type", newDataType); - this.agHelper.AssertNetworkStatus("@updateLayout"); + this.assertHelper.AssertNetworkStatus("@updateLayout"); if (tableVersion == "v2") this.propPane.NavigateBackToPropertyPane(); } @@ -527,7 +527,7 @@ export class Table { cy.url().should("eql", expectedURL); this.assertHelper.AssertDocumentReady(); cy.visit($currentUrl); - this.agHelper.AssertNetworkStatus("@" + networkCall); + this.assertHelper.AssertNetworkStatus("@" + networkCall); this.WaitUntilTableLoad(0, 0, tableVersion); }); } diff --git a/app/client/cypress/support/commands.js b/app/client/cypress/support/commands.js index 06ff9d755b..78ca7c4d4d 100644 --- a/app/client/cypress/support/commands.js +++ b/app/client/cypress/support/commands.js @@ -1279,7 +1279,7 @@ Cypress.Commands.add("assertPageSave", (validateSavedState = true) => { timeout: 30000, }); } - //agHelper.AssertNetworkStatus("@sucessSave", 200); + //assertHelper.AssertNetworkStatus("@sucessSave", 200); }); Cypress.Commands.add(