Browse Source

test: CY migration for pagination, airtable import

Signed-off-by: Raju Udava <86527202+dstala@users.noreply.github.com>
pull/3384/head
Raju Udava 2 years ago
parent
commit
d4f971f073
  1. 10
      scripts/cypress-v2/integration/common/7b_import_from_airtable.js
  2. 58
      scripts/cypress-v2/integration/common/9a_QuickTest.js
  3. 2
      scripts/cypress-v2/support/page_objects/navigation.js

10
scripts/cypress-v2/integration/common/7b_import_from_airtable.js

@ -13,7 +13,6 @@ export const genTest = (apiType, dbType) => {
describe(`Import from airtable`, () => { describe(`Import from airtable`, () => {
before(() => { before(() => {
cy.fileHook();
apiKey = Cypress.env("airtable").apiKey; apiKey = Cypress.env("airtable").apiKey;
sharedBase = Cypress.env("airtable").sharedBase; sharedBase = Cypress.env("airtable").sharedBase;
@ -21,14 +20,17 @@ export const genTest = (apiType, dbType) => {
projectsPage.createProject({ dbType: "none", apiType: "REST", name: "importSample" }, {}) projectsPage.createProject({ dbType: "none", apiType: "REST", name: "importSample" }, {})
}); });
after(() => {}); after(() => {
cy.saveLocalStorage();
});
it("Import", () => { it("Import", () => {
cy.log(apiKey, sharedBase); cy.log(apiKey, sharedBase);
// trigger import // trigger import
cy.get(`[data-menu-id="addORImport"]`).click(); cy.get('.nc-add-new-table').should('exist').trigger('mouseover')
cy.getActivePopUp().contains("Airtable").should('exist').click(); cy.get('.nc-import-menu').should('exist').click()
cy.getActiveMenu().find('.ant-dropdown-menu-item').contains('Airtable').click()
cy.getActiveModal().find(".nc-input-api-key").should('exist').clear().type(apiKey) cy.getActiveModal().find(".nc-input-api-key").should('exist').clear().type(apiKey)
cy.getActiveModal().find(".nc-input-shared-base").should('exist').clear().type(sharedBase) cy.getActiveModal().find(".nc-input-shared-base").should('exist').clear().type(sharedBase)

58
scripts/cypress-v2/integration/common/9a_QuickTest.js

@ -81,7 +81,8 @@ export const genTest = (apiType, dbType, testMode) => {
} }
before(() => { before(() => {
cy.fileHook(); cy.restoreLocalStorage();
if( testMode === 'CY_QUICK') { if( testMode === 'CY_QUICK') {
// cy.task("copyFile") // cy.task("copyFile")
loginPage.signIn(roles.owner.credentials); loginPage.signIn(roles.owner.credentials);
@ -102,7 +103,20 @@ export const genTest = (apiType, dbType, testMode) => {
cy.restoreLocalStorage(); cy.restoreLocalStorage();
}) })
after(() => {}); // afterEach(() => {
// cy.saveLocalStorage();
// })
after(() => {
// sign out
cy.visit(`/`);
cy.wait(5000);
cy.get('.nc-menu-accounts').should('exist').click();
cy.getActiveMenu().find('.ant-dropdown-menu-item').eq(1).click();
cy.wait(5000);
cy.get('button:contains("SIGN")').should('exist')
});
it("Verify Schema", () => { it("Verify Schema", () => {
cy.openTableTab("Film", 3) cy.openTableTab("Film", 3)
@ -221,8 +235,10 @@ export const genTest = (apiType, dbType, testMode) => {
it("Verify Views & Shared base", () => { it("Verify Views & Shared base", () => {
cy.openTableTab("Film", 3); cy.openTableTab("Film", 3);
mainPage.toggleRightSidebar(); mainPage.toggleRightSidebar();
cy.get('.nc-form-view-item').eq(0) cy.get('.nc-form-view-item:visible')
.click({ force: true }) .should('exist')
.eq(0)
.click({ force: true })
// Header & description should exist // Header & description should exist
// cy.get(".nc-form") // cy.get(".nc-form")
@ -345,29 +361,38 @@ export const genTest = (apiType, dbType, testMode) => {
mainPage.getPagination(">").click(); mainPage.getPagination(">").click();
mainPage mainPage
.getPagination(2) .getPagination(2)
.should("have.class", "v-pagination__item--active"); .should("have.class", "ant-pagination-item-active");
// verify < pagination option // verify < pagination option
mainPage.getPagination("<").click(); mainPage.getPagination("<").click();
mainPage mainPage
.getPagination(1) .getPagination(1)
.should("have.class", "v-pagination__item--active"); .should("have.class", "ant-pagination-item-active");
cy.closeTableTab("Actor"); cy.closeTableTab("Actor");
}); });
it("Verify Fields, Filter & Sort", () => { it("Verify Fields, Filter & Sort", () => {
cy.openTableTab("Actor", 25); cy.openTableTab("Actor", 25);
mainPage.toggleRightSidebar();
cy.get(".nc-grid-view-item").eq(1).click() cy.get(".nc-grid-view-item").eq(1).click()
cy.get(".nc-grid-header-cell").contains('Name').should("be.visible"); cy.get(".nc-grid-header").find(`th[data-title="Name"]`).should("be.visible");
cy.get(".nc-grid-header-cell").contains('Notes').should("be.visible"); cy.get(".nc-grid-header").find(`th[data-title="Notes"]`).should("be.visible");
cy.get(".nc-grid-header").find(`th[data-title="Attachments"]`).should("not.exist");
cy.get(".nc-grid-header").find(`th[data-title="Status"]`).should("be.visible");
cy.get(".nc-grid-header").find(`th[data-title="Film"]`).should("be.visible");
// cy.get(".nc-grid-header").contains('Notes').should("be.visible");
// fix me! // fix me!
if(testMode !== 'AT_IMPORT') cy.get(".nc-grid-header-cell").contains('Attachments').should("not.be.visible"); // if(testMode !== 'AT_IMPORT') cy.get(".nc-grid-header-cell").contains('Attachments').should("not.be.visible");
cy.get(".nc-grid-header-cell").contains('Status').should("be.visible"); // cy.get(".nc-grid-header-cell").contains('Status').should("be.visible");
cy.get(".nc-grid-header-cell").contains('Film').should("be.visible"); // cy.get(".nc-grid-header-cell").contains('Film').should("be.visible");
cy.wait(2000);
cy.get(".nc-fields-menu-btn").click()
cy.get(".nc-fields-menu-btn").click();
cy.getActiveMenu().find(`[type="checkbox"]`).eq(0).should('be.checked') cy.getActiveMenu().find(`[type="checkbox"]`).eq(0).should('be.checked')
cy.getActiveMenu().find(`[type="checkbox"]`).eq(1).should('be.checked') cy.getActiveMenu().find(`[type="checkbox"]`).eq(1).should('be.checked')
cy.getActiveMenu().find(`[type="checkbox"]`).eq(2).should('not.be.checked') cy.getActiveMenu().find(`[type="checkbox"]`).eq(2).should('not.be.checked')
@ -407,15 +432,18 @@ export const genTest = (apiType, dbType, testMode) => {
if( testMode === 'CY_QUICK') { if( testMode === 'CY_QUICK') {
cy.openTableTab("Producer", 3) cy.openTableTab("Producer", 3)
mainPage.toggleRightSidebar();
cy.get('.nc-grid-view-item').should('have.length', 4) cy.get('.nc-grid-view-item').should('have.length', 4)
cy.get('.nc-form-view-item').should('have.length', 4) cy.get('.nc-form-view-item').should('have.length', 4)
cy.get('.nc-gallery-view-item').should('have.length', 3) cy.get('.nc-gallery-view-item').should('have.length', 3)
// LinkToAnotherRecord hm relation // LinkToAnotherRecord hm relation
mainPage.getCell("FilmRead", 1).scrollIntoView(); mainPage.getCell("FilmRead", 1).scrollIntoView();
cy.get( cy.get('[data-title="FilmRead"] > .h-full > .nc-virtual-cell > .w-full > .chips > .chip > .name')
':nth-child(1) > [data-col="FilmRead"] > .nc-virtual-cell > .v-lazy > .d-100 > .chips > :nth-child(1) > .v-chip__content > .name' // cy.get(
) // ':nth-child(1) > [data-col="FilmRead"] > .nc-virtual-cell > .v-lazy > .d-100 > .chips > :nth-child(1) > .v-chip__content > .name'
// )
.contains('Movie-1') .contains('Movie-1')
.should("exist"); .should("exist");

2
scripts/cypress-v2/support/page_objects/navigation.js

@ -137,6 +137,8 @@ export class _projectsPage {
cy.get(".nc-metadb-project-name").should("exist"); cy.get(".nc-metadb-project-name").should("exist");
cy.contains("button", "Create").should("exist"); cy.contains("button", "Create").should("exist");
cy.wait(1000)
// feed project name // feed project name
cy.get(".nc-metadb-project-name", { timeout: 20000 }).clear().type( cy.get(".nc-metadb-project-name", { timeout: 20000 }).clear().type(
projectName projectName

Loading…
Cancel
Save