Skip to content

Commit f4fcc8a

Browse files
authored
Merge pull request #38322 from appsmithorg/release
23/12 Daily Promotion
2 parents b4b40d4 + 8a16903 commit f4fcc8a

File tree

246 files changed

+3796
-1572
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

246 files changed

+3796
-1572
lines changed

.github/workflows/ci-test-limited-with-count.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ jobs:
141141

142142
# Get specs to run
143143
- name: Get specs to run
144-
if: ${{ (inputs.specs_to_run == '' || inputs.specs_to_run == null) && steps.run_result.outputs.run_result != 'success' && steps.run_result.outputs.run_result != 'failedtest' }}
144+
if: ${{ (inputs.specs_to_run == '' || inputs.specs_to_run == null || !inputs.specs_to_run) && steps.run_result.outputs.run_result != 'success' && steps.run_result.outputs.run_result != 'failedtest' }}
145145
run: |
146146
specs_to_run=""
147147
while IFS= read -r line

app/client/cypress/e2e/Regression/ClientSide/Anvil/AppTheming/AnvilAppThemingSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for App Theming`,
1010
{ tags: ["@tag.Anvil"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilButtonWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Button Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxGroupWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Checkbox Group Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilCheckboxWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Checkbox Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilHeadingWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Heading Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilIconButtonWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Icon Button Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilInlineButtonWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Inline Button Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilParagraphWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Paragraph Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilRadioGroupWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Radio Group Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilStatsWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Stats Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilSwitchGroupWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Switch Group Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilSwitchWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Switch Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Anvil/Widgets/AnvilToolbarButtonWidgetSnapshot_spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
} from "../../../../../support/Objects/ObjectsCore";
66

77
// TODO: Enable when issue(github.com/appsmithorg/appsmith/issues/36419) is solved.
8-
describe.skip(
8+
describe(
99
`${ANVIL_EDITOR_TEST}: Anvil tests for Toolbar Button Widget`,
1010
{ tags: ["@tag.Anvil", "@tag.Visual"] },
1111
() => {

app/client/cypress/e2e/Regression/ClientSide/Autocomplete/JS_AC1_spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@ describe("Autocomplete tests", { tags: ["@tag.JS", "@tag.Binding"] }, () => {
298298
)
299299
.type(".");
300300

301-
agHelper.GetNAssertElementText(locators._hints, "geolocation");
301+
agHelper.GetNAssertElementText(locators._hints, "appName");
302302
});
303303
});
304304

@@ -313,6 +313,6 @@ describe("Autocomplete tests", { tags: ["@tag.JS", "@tag.Binding"] }, () => {
313313
.type("{downArrow}{leftArrow}{leftArrow}");
314314

315315
agHelper.TypeText(locators._codeMirrorTextArea, ".");
316-
agHelper.GetNAssertElementText(locators._hints, "geolocation");
316+
agHelper.GetNAssertElementText(locators._hints, "appName");
317317
});
318318
});
Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
import { ObjectsRegistry } from "../../../../support/Objects/Registry";
2+
import {
3+
agHelper,
4+
dataSources,
5+
locators,
6+
jsEditor,
7+
} from "../../../../support/Objects/ObjectsCore";
8+
import PageList from "../../../../support/Pages/PageList";
9+
import EditorNavigation, {
10+
editorTabSelector,
11+
PageLeftPane,
12+
PagePaneSegment,
13+
} from "../../../../support/Pages/EditorNavigation";
14+
15+
let dsName = "MongoDB";
16+
17+
describe("Tabs Navigation", { tags: ["@tag.IDE"] }, () => {
18+
before(() => {
19+
dataSources.CreateDataSource("Mongo");
20+
cy.renameDatasource(dsName);
21+
});
22+
23+
it("should create and switch between JS files", () => {
24+
// Create first JS file
25+
jsEditor.CreateJSObject("", { prettify: false, toRun: false });
26+
jsEditor.RenameJSObjFromPane("Page1_JS1");
27+
28+
// Create second JS file
29+
jsEditor.CreateJSObject("", { prettify: false, toRun: false });
30+
jsEditor.RenameJSObjFromPane("Page1_JS2");
31+
32+
agHelper.GetNClick(editorTabSelector("page1_js1"));
33+
34+
jsEditor.currentJSObjectName().then((jsObjName) => {
35+
expect(jsObjName).equal("Page1_JS1");
36+
});
37+
38+
agHelper.GetNClick(editorTabSelector("page1_js2"));
39+
40+
jsEditor.currentJSObjectName().then((jsObjName) => {
41+
expect(jsObjName).equal("Page1_JS2");
42+
});
43+
});
44+
45+
it("should create and switch between queries", () => {
46+
dataSources.CreateQueryFromOverlay(dsName, "", "Page1_Query1");
47+
agHelper
48+
.GetElement("[data-testid='t--ide-tab-page1_query1']")
49+
.should("be.visible");
50+
dataSources.CreateQueryFromOverlay(dsName, "", "Page1_Query2");
51+
52+
// Switch between tabs
53+
agHelper.GetNClick(editorTabSelector("page1_query1"));
54+
55+
agHelper
56+
.GetElement(locators._queryName)
57+
.should("have.text", "Page1_Query1");
58+
59+
agHelper.GetNClick(editorTabSelector("page1_query2"));
60+
61+
agHelper
62+
.GetElement(locators._queryName)
63+
.should("have.text", "Page1_Query2");
64+
});
65+
66+
it("should create items in the next page and navigate", () => {
67+
// Create first page
68+
PageList.AddNewPage("New blank page");
69+
70+
// Create first JS file
71+
jsEditor.CreateJSObject("", { prettify: false, toRun: false });
72+
jsEditor.RenameJSObjFromPane("Page2_JS1");
73+
74+
// Create second JS file
75+
jsEditor.CreateJSObject("", { prettify: false, toRun: false });
76+
jsEditor.RenameJSObjFromPane("Page2_JS2");
77+
78+
agHelper.GetNClick(editorTabSelector("page2_js1"));
79+
80+
jsEditor.currentJSObjectName().then((jsObjName) => {
81+
expect(jsObjName).equal("Page2_JS1");
82+
});
83+
84+
agHelper.GetNClick(editorTabSelector("page2_js2"));
85+
86+
jsEditor.currentJSObjectName().then((jsObjName) => {
87+
expect(jsObjName).equal("Page2_JS2");
88+
});
89+
90+
dataSources.CreateQueryFromOverlay(dsName, "", "Page2_Query1");
91+
dataSources.CreateQueryFromOverlay(dsName, "", "Page2_Query2");
92+
93+
agHelper.GetNClick(editorTabSelector("page2_query1"));
94+
95+
agHelper
96+
.GetElement(locators._queryName)
97+
.should("have.text", "Page2_Query1");
98+
99+
agHelper.GetNClick(editorTabSelector("page2_query2"));
100+
101+
agHelper
102+
.GetElement(locators._queryName)
103+
.should("have.text", "Page2_Query2");
104+
});
105+
106+
it("Use tabs navigation with multiple pages", () => {
107+
EditorNavigation.NavigateToPage("Page1");
108+
agHelper.GetNClick(editorTabSelector("page1_query1"));
109+
110+
agHelper
111+
.GetElement(locators._queryName)
112+
.should("have.text", "Page1_Query1");
113+
114+
agHelper.GetNClick(editorTabSelector("page1_query2"));
115+
116+
agHelper
117+
.GetElement(locators._queryName)
118+
.should("have.text", "Page1_Query2");
119+
120+
PageLeftPane.switchSegment(PagePaneSegment.JS);
121+
122+
agHelper.GetNClick(editorTabSelector("page1_js1"));
123+
124+
jsEditor.currentJSObjectName().then((jsObjName) => {
125+
expect(jsObjName).equal("Page1_JS1");
126+
});
127+
128+
agHelper.GetNClick(editorTabSelector("page1_js2"));
129+
130+
jsEditor.currentJSObjectName().then((jsObjName) => {
131+
expect(jsObjName).equal("Page1_JS2");
132+
});
133+
134+
EditorNavigation.NavigateToPage("Page2");
135+
PageLeftPane.switchSegment(PagePaneSegment.JS);
136+
agHelper.GetNClick(editorTabSelector("page2_js1"));
137+
138+
jsEditor.currentJSObjectName().then((jsObjName) => {
139+
expect(jsObjName).equal("Page2_JS1");
140+
});
141+
142+
agHelper.GetNClick(editorTabSelector("page2_js2"));
143+
144+
jsEditor.currentJSObjectName().then((jsObjName) => {
145+
expect(jsObjName).equal("Page2_JS2");
146+
});
147+
});
148+
});

app/client/cypress/locators/QueryEditor.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"addDatasource": ".t--add-datasource",
1010
"editDatasourceButton": ".t--edit-datasource",
1111
"switch": ".t--form-control-SWITCH input",
12-
"queryResponse": "(//div[@class='table']//div[@class='tr'])[3]//div[@class='td']",
12+
"queryResponse": "(//div[@class='table']//div[@class='tr'])[3]//div[@class='td mp-mask']",
1313
"querySelect": "//div[contains(@class, 't--template-menu')]//div[text()='Select']",
1414
"queryCreate": "//div[contains(@class, 't--template-menu')]//div[text()='Create']",
1515
"queryUpdate": "//div[contains(@class, 't--template-menu')]//div[text()='Update']",

app/client/cypress/support/Pages/DataSources.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ export class DataSources {
147147
option +
148148
"']";
149149
_queryTableResponse =
150-
"//div[@data-guided-tour-id='query-table-response']//div[@class='tbody']//div[@class ='td']";
150+
"//div[@data-guided-tour-id='query-table-response']//div[@class='tbody']//div[@class ='td mp-mask']";
151151
_queryResponseHeader = (header: string) =>
152152
"//div[@data-guided-tour-id='query-table-response']//div[@class='table']//div[@role ='columnheader']//span[text()='" +
153153
header +

app/client/cypress/support/Pages/EditorNavigation.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ export enum PagePaneSegment {
2020
JS = "JS",
2121
}
2222

23+
export const editorTabSelector = (name: string) =>
24+
`[data-testid='t--ide-tab-${name.toLowerCase()}']`;
25+
2326
export enum EditorViewMode {
2427
FullScreen = "FullScreen",
2528
SplitScreen = "SplitScreen",

app/client/cypress/support/commands.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -814,7 +814,7 @@ Cypress.Commands.add("ValidatePaginateResponseUrlData", (runTestCss) => {
814814
cy.wait(2000);
815815
cy.get(runTestCss).click();
816816
cy.wait(2000);
817-
cy.xpath("//div[@class='tr'][1]//div[@class='td'][6]//span")
817+
cy.xpath("//div[@class='tr'][1]//div[@class='td mp-mask'][6]//span")
818818
.invoke("text")
819819
.then((valueToTest) => {
820820
// eslint-disable-next-line cypress/no-unnecessary-waiting
@@ -839,7 +839,7 @@ Cypress.Commands.add("ValidatePaginateResponseUrlDataV2", (runTestCss) => {
839839
cy.wait(2000);
840840
cy.get(runTestCss).click();
841841
cy.wait(2000);
842-
cy.xpath("//div[@class='tr'][1]//div[@class='td'][6]//span")
842+
cy.xpath("//div[@class='tr'][1]//div[@class='td mp-mask'][6]//span")
843843
.invoke("text")
844844
.then((valueToTest) => {
845845
// eslint-disable-next-line cypress/no-unnecessary-waiting

0 commit comments

Comments
 (0)