Added tests for dependencies (#1679)
* Added tests for dependencies * updated review comments * moved files to binding folder Co-authored-by: nandan.anantharamu <nandan.anantharamu@thoughtspot.com>
This commit is contained in:
parent
3c37645d12
commit
d5ce1dfa52
56
app/client/cypress/fixtures/inputBindingdsl.json
Normal file
56
app/client/cypress/fixtures/inputBindingdsl.json
Normal file
|
|
@ -0,0 +1,56 @@
|
||||||
|
{
|
||||||
|
"dsl": {
|
||||||
|
"widgetName": "MainContainer",
|
||||||
|
"backgroundColor": "none",
|
||||||
|
"rightColumn": 1224,
|
||||||
|
"snapColumns": 16,
|
||||||
|
"detachFromLayout": true,
|
||||||
|
"widgetId": "0",
|
||||||
|
"topRow": 0,
|
||||||
|
"bottomRow": 1280,
|
||||||
|
"containerStyle": "none",
|
||||||
|
"snapRows": 33,
|
||||||
|
"parentRowSpace": 1,
|
||||||
|
"type": "CANVAS_WIDGET",
|
||||||
|
"canExtend": true,
|
||||||
|
"dynamicBindings": {},
|
||||||
|
"version": 6,
|
||||||
|
"minHeight": 1292,
|
||||||
|
"parentColumnSpace": 1,
|
||||||
|
"leftColumn": 0,
|
||||||
|
"children": [
|
||||||
|
{
|
||||||
|
"isVisible": true,
|
||||||
|
"inputType": "TEXT",
|
||||||
|
"label": "",
|
||||||
|
"widgetName": "Input1",
|
||||||
|
"type": "INPUT_WIDGET",
|
||||||
|
"isLoading": false,
|
||||||
|
"parentColumnSpace": 74,
|
||||||
|
"parentRowSpace": 40,
|
||||||
|
"leftColumn": 3,
|
||||||
|
"rightColumn": 8,
|
||||||
|
"topRow": 3,
|
||||||
|
"bottomRow": 4,
|
||||||
|
"parentId": "0",
|
||||||
|
"widgetId": "ufr2ik3x1q"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"isVisible": true,
|
||||||
|
"inputType": "TEXT",
|
||||||
|
"label": "",
|
||||||
|
"widgetName": "Input2",
|
||||||
|
"type": "INPUT_WIDGET",
|
||||||
|
"isLoading": false,
|
||||||
|
"parentColumnSpace": 74,
|
||||||
|
"parentRowSpace": 40,
|
||||||
|
"leftColumn": 4,
|
||||||
|
"rightColumn": 9,
|
||||||
|
"topRow": 5,
|
||||||
|
"bottomRow": 6,
|
||||||
|
"parentId": "0",
|
||||||
|
"widgetId": "qfc7a4t3p8"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -174,5 +174,10 @@
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"addInputWidgetBinding": "{{Table1.selectedRow.id",
|
"addInputWidgetBinding": "{{Table1.selectedRow.id",
|
||||||
"externalPage": "https://www.appsmith.com/"
|
"externalPage": "https://www.appsmith.com/",
|
||||||
|
"loadashInput": "{{_.add(3,4)",
|
||||||
|
"momentInput": "{{moment(new Date).format('yyyy')",
|
||||||
|
"atobInput": "{{atob('QQ==')",
|
||||||
|
"btoaInput": "{{btoa('A')",
|
||||||
|
"defaultInputBinding": "{{Input2.text"
|
||||||
}
|
}
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
const commonlocators = require("../../../locators/commonlocators.json");
|
||||||
|
const formWidgetsPage = require("../../../locators/FormWidgets.json");
|
||||||
|
const dsl = require("../../../fixtures/inputBindingdsl.json");
|
||||||
|
const pages = require("../../../locators/Pages.json");
|
||||||
|
const widgetsPage = require("../../../locators/Widgets.json");
|
||||||
|
const publish = require("../../../locators/publishWidgetspage.json");
|
||||||
|
const testdata = require("../../../fixtures/testdata.json");
|
||||||
|
|
||||||
|
describe("aTob and bToa library tests ", function() {
|
||||||
|
before(() => {
|
||||||
|
cy.addDsl(dsl);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("Input widget test with default value for atob method", function() {
|
||||||
|
cy.SearchEntityandOpen("Input1");
|
||||||
|
cy.get(widgetsPage.defaultInput).type(testdata.atobInput);
|
||||||
|
cy.get(commonlocators.editPropCrossButton).click();
|
||||||
|
cy.wait("@updateLayout").should(
|
||||||
|
"have.nested.property",
|
||||||
|
"response.body.responseMeta.status",
|
||||||
|
200,
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("Input widget test with default value for btoa method", function() {
|
||||||
|
cy.SearchEntityandOpen("Input2");
|
||||||
|
cy.get(widgetsPage.defaultInput).type(testdata.btoaInput);
|
||||||
|
cy.get(commonlocators.editPropCrossButton).click();
|
||||||
|
cy.wait("@updateLayout").should(
|
||||||
|
"have.nested.property",
|
||||||
|
"response.body.responseMeta.status",
|
||||||
|
200,
|
||||||
|
);
|
||||||
|
cy.reload();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("publish widget and validate the data displayed in input widgets value for aToB and bToa", function() {
|
||||||
|
cy.PublishtheApp();
|
||||||
|
cy.get(publish.inputWidget + " " + "input")
|
||||||
|
.first()
|
||||||
|
.invoke("attr", "value")
|
||||||
|
.should("contain", "A");
|
||||||
|
cy.get(publish.inputWidget + " " + "input")
|
||||||
|
.last()
|
||||||
|
.invoke("attr", "value")
|
||||||
|
.should("contain", "QQ==");
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
const commonlocators = require("../../../locators/commonlocators.json");
|
||||||
|
const formWidgetsPage = require("../../../locators/FormWidgets.json");
|
||||||
|
const dsl = require("../../../fixtures/inputBindingdsl.json");
|
||||||
|
const pages = require("../../../locators/Pages.json");
|
||||||
|
const widgetsPage = require("../../../locators/Widgets.json");
|
||||||
|
const publish = require("../../../locators/publishWidgetspage.json");
|
||||||
|
const testdata = require("../../../fixtures/testdata.json");
|
||||||
|
|
||||||
|
describe("Loadash basic test with input Widget", function() {
|
||||||
|
before(() => {
|
||||||
|
cy.addDsl(dsl);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("Input widget test with default value from another Input widget", function() {
|
||||||
|
cy.SearchEntityandOpen("Input1");
|
||||||
|
cy.get(widgetsPage.defaultInput).type(testdata.defaultInputBinding);
|
||||||
|
cy.get(commonlocators.editPropCrossButton).click();
|
||||||
|
cy.wait("@updateLayout").should(
|
||||||
|
"have.nested.property",
|
||||||
|
"response.body.responseMeta.status",
|
||||||
|
200,
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("Input widget test with default value for loadash function", function() {
|
||||||
|
cy.SearchEntityandOpen("Input2");
|
||||||
|
cy.get(widgetsPage.defaultInput).type(testdata.loadashInput);
|
||||||
|
cy.get(commonlocators.editPropCrossButton).click();
|
||||||
|
cy.wait("@updateLayout").should(
|
||||||
|
"have.nested.property",
|
||||||
|
"response.body.responseMeta.status",
|
||||||
|
200,
|
||||||
|
);
|
||||||
|
cy.reload();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("publish widget and validate the data displayed in input widgets from loadash function", function() {
|
||||||
|
cy.PublishtheApp();
|
||||||
|
cy.get(publish.inputWidget + " " + "input")
|
||||||
|
.first()
|
||||||
|
.invoke("attr", "value")
|
||||||
|
.should("contain", "7");
|
||||||
|
cy.get(publish.inputWidget + " " + "input")
|
||||||
|
.last()
|
||||||
|
.invoke("attr", "value")
|
||||||
|
.should("contain", "7");
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
const commonlocators = require("../../../locators/commonlocators.json");
|
||||||
|
const formWidgetsPage = require("../../../locators/FormWidgets.json");
|
||||||
|
const dsl = require("../../../fixtures/inputBindingdsl.json");
|
||||||
|
const pages = require("../../../locators/Pages.json");
|
||||||
|
const widgetsPage = require("../../../locators/Widgets.json");
|
||||||
|
const publish = require("../../../locators/publishWidgetspage.json");
|
||||||
|
const testdata = require("../../../fixtures/testdata.json");
|
||||||
|
|
||||||
|
describe("Moment basic test with input Widget", function() {
|
||||||
|
before(() => {
|
||||||
|
cy.addDsl(dsl);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("Input widget test with default value from another Input widget", function() {
|
||||||
|
cy.SearchEntityandOpen("Input1");
|
||||||
|
cy.get(widgetsPage.defaultInput).type(testdata.defaultInputBinding);
|
||||||
|
cy.get(commonlocators.editPropCrossButton).click();
|
||||||
|
cy.wait("@updateLayout").should(
|
||||||
|
"have.nested.property",
|
||||||
|
"response.body.responseMeta.status",
|
||||||
|
200,
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("Binding second input widget with first input widget and validating", function() {
|
||||||
|
cy.SearchEntityandOpen("Input2");
|
||||||
|
cy.get(widgetsPage.defaultInput).type(testdata.momentInput);
|
||||||
|
cy.get(commonlocators.editPropCrossButton).click();
|
||||||
|
cy.wait("@updateLayout").should(
|
||||||
|
"have.nested.property",
|
||||||
|
"response.body.responseMeta.status",
|
||||||
|
200,
|
||||||
|
);
|
||||||
|
cy.reload();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("publish widget and validate the data displayed in input widgets", function() {
|
||||||
|
cy.PublishtheApp();
|
||||||
|
cy.get(publish.inputWidget + " " + "input")
|
||||||
|
.first()
|
||||||
|
.invoke("attr", "value")
|
||||||
|
.should("contain", "2020");
|
||||||
|
cy.get(publish.inputWidget + " " + "input")
|
||||||
|
.last()
|
||||||
|
.invoke("attr", "value")
|
||||||
|
.should("contain", "2020");
|
||||||
|
});
|
||||||
|
});
|
||||||
Loading…
Reference in New Issue
Block a user