forked from tsai/budibase
4 changed files with 81 additions and 51 deletions
@ -1,51 +1,51 @@ |
|||||
import filterTests from "../support/filterTests" |
import filterTests from "../support/filterTests" |
||||
|
|
||||
filterTests(['smoke', 'all'], () => { |
filterTests(['smoke', 'all'], () => { |
||||
context("Auto Screens UI", () => { |
context("Auto Screens UI", () => { |
||||
before(() => { |
before(() => { |
||||
cy.login() |
cy.login() |
||||
cy.createTestApp() |
cy.createTestApp() |
||||
}) |
|
||||
|
|
||||
it("should generate internal table screens", () => { |
|
||||
// Create autogenerated screens from the internal table
|
|
||||
cy.createAutogeneratedScreens(["Cypress Tests"]) |
|
||||
// Confirm screens have been auto generated
|
|
||||
cy.get(".nav-items-container").contains("cypress-tests").click({ force: true }) |
|
||||
cy.get(".nav-items-container").should('contain', 'cypress-tests/:id') |
|
||||
.and('contain', 'cypress-tests/new/row') |
|
||||
}) |
|
||||
|
|
||||
it("should generate multiple internal table screens at once", () => { |
|
||||
// Create a second internal table
|
|
||||
const initialTable = "Cypress Tests" |
|
||||
const secondTable = "Table Two" |
|
||||
cy.createTable(secondTable) |
|
||||
// Create autogenerated screens from the internal tables
|
|
||||
cy.createAutogeneratedScreens([initialTable, secondTable]) |
|
||||
// Confirm screens have been auto generated
|
|
||||
cy.get(".nav-items-container").contains("cypress-tests").click({ force: true }) |
|
||||
// Previously generated tables are suffixed with numbers - as expected
|
|
||||
cy.get(".nav-items-container").should('contain', 'cypress-tests-2/:id') |
|
||||
.and('contain', 'cypress-tests-2/new/row') |
|
||||
cy.get(".nav-items-container").contains("table-two").click() |
|
||||
cy.get(".nav-items-container").should('contain', 'table-two/:id') |
|
||||
.and('contain', 'table-two/new/row') |
|
||||
}) |
|
||||
|
|
||||
if (Cypress.env("TEST_ENV")) { |
|
||||
it("should generate data source screens", () => { |
|
||||
// Using MySQL data source for testing this
|
|
||||
const datasource = "MySQL" |
|
||||
// Select & configure MySQL data source
|
|
||||
cy.selectExternalDatasource(datasource) |
|
||||
cy.addDatasourceConfig(datasource) |
|
||||
// Create autogenerated screens from a MySQL table - MySQL contains books table
|
|
||||
cy.createAutogeneratedScreens(["books"]) |
|
||||
cy.get(".nav-items-container").contains("books").click() |
|
||||
cy.get(".nav-items-container").should('contain', 'books/:id') |
|
||||
.and('contain', 'books/new/row') |
|
||||
}) |
|
||||
} |
|
||||
}) |
}) |
||||
|
|
||||
|
it("should generate internal table screens", () => { |
||||
|
// Create autogenerated screens from the internal table
|
||||
|
cy.createAutogeneratedScreens(["Cypress Tests"]) |
||||
|
// Confirm screens have been auto generated
|
||||
|
cy.get(".nav-items-container").contains("cypress-tests").click({ force: true }) |
||||
|
cy.get(".nav-items-container").should('contain', 'cypress-tests/:id') |
||||
|
.and('contain', 'cypress-tests/new/row') |
||||
|
}) |
||||
|
|
||||
|
it("should generate multiple internal table screens at once", () => { |
||||
|
// Create a second internal table
|
||||
|
const initialTable = "Cypress Tests" |
||||
|
const secondTable = "Table Two" |
||||
|
cy.createTable(secondTable) |
||||
|
// Create autogenerated screens from the internal tables
|
||||
|
cy.createAutogeneratedScreens([initialTable, secondTable]) |
||||
|
// Confirm screens have been auto generated
|
||||
|
cy.get(".nav-items-container").contains("cypress-tests").click({ force: true }) |
||||
|
// Previously generated tables are suffixed with numbers - as expected
|
||||
|
cy.get(".nav-items-container").should('contain', 'cypress-tests-2/:id') |
||||
|
.and('contain', 'cypress-tests-2/new/row') |
||||
|
cy.get(".nav-items-container").contains("table-two").click() |
||||
|
cy.get(".nav-items-container").should('contain', 'table-two/:id') |
||||
|
.and('contain', 'table-two/new/row') |
||||
|
}) |
||||
|
|
||||
|
if (Cypress.env("TEST_ENV")) { |
||||
|
it("should generate data source screens", () => { |
||||
|
// Using MySQL data source for testing this
|
||||
|
const datasource = "MySQL" |
||||
|
// Select & configure MySQL data source
|
||||
|
cy.selectExternalDatasource(datasource) |
||||
|
cy.addDatasourceConfig(datasource) |
||||
|
// Create autogenerated screens from a MySQL table - MySQL contains books table
|
||||
|
cy.createAutogeneratedScreens(["books"]) |
||||
|
cy.get(".nav-items-container").contains("books").click() |
||||
|
cy.get(".nav-items-container").should('contain', 'books/:id') |
||||
|
.and('contain', 'books/new/row') |
||||
|
}) |
||||
|
} |
||||
|
}) |
||||
}) |
}) |
||||
|
|||||
Loading…
Reference in new issue