Removing templates test folder
We do not need to test templates this way via the UI - There is currently a test which creates an app via a template - These specific templates tests are time consuming and repetitive - These template tests will be replaced by API testing Commands.js - Removing a publishApp function -> There was two, one is not needed
This commit is contained in:
parent
69454a0c92
commit
5a355be990
|
@ -1,56 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify HR Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter HR Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="HR"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for HR templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
|
||||
if (templateNameText == "Job Application Tracker") {
|
||||
// Template name should include 'applicant-tracking-system'
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', 'applicant-tracking-system')
|
||||
}
|
||||
else if (templateNameText == "Job Portal App") {
|
||||
// Template name should include 'job-portal'
|
||||
const templateNameSplit = templateNameParsed.split('-app')[0]
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameSplit)
|
||||
}
|
||||
else {
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
}
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,222 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Job Application Tracker Template Functionality", () => {
|
||||
const templateName = "Job Application Tracker"
|
||||
const templateNameParsed = templateName.toLowerCase().replace(/\s+/g, '-')
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
cy.deleteApp(templateName)
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`, {
|
||||
onBeforeLoad(win) {
|
||||
cy.stub(win, 'open')
|
||||
}
|
||||
})
|
||||
cy.wait(2000)
|
||||
})
|
||||
|
||||
it("should create and publish app with Job Application Tracker template", () => {
|
||||
// Select Job Application Tracker template
|
||||
cy.get(".template-thumbnail-text")
|
||||
.contains(templateName).parentsUntil(".template-grid").within(() => {
|
||||
cy.get(".spectrum-Button").contains("Use template").click({ force: true })
|
||||
})
|
||||
|
||||
// Confirm URL matches template name
|
||||
const appUrl = cy.get(".app-server")
|
||||
appUrl.invoke('text').then(appUrlText => {
|
||||
expect(appUrlText).to.equal(`${Cypress.config().baseUrl}/app/` + templateNameParsed)
|
||||
})
|
||||
|
||||
// Create App
|
||||
cy.get(".spectrum-Dialog-grid").within(() => {
|
||||
cy.get(".spectrum-Button").contains("Create app").click({ force: true })
|
||||
})
|
||||
|
||||
// Publish App & Verify it opened
|
||||
cy.wait(2000) // Wait for app to generate
|
||||
cy.publishApp(true)
|
||||
cy.window().its('open').should('be.calledOnce')
|
||||
})
|
||||
|
||||
it("should add active/inactive vacancies", () => {
|
||||
// Visit published app
|
||||
cy.visit(`${Cypress.config().baseUrl}/app/` + templateNameParsed)
|
||||
|
||||
// loop for active/inactive vacancies
|
||||
for (let i = 0; i < 2; i++) {
|
||||
// Vacancies section
|
||||
cy.get(".links").contains("Vacancies").click({ force: true })
|
||||
cy.get(".spectrum-Button").contains("Create New").click()
|
||||
|
||||
// Add inactive vacancy
|
||||
// Title
|
||||
cy.get('[data-name="Title"]').within(() => {
|
||||
cy.get(".spectrum-Textfield").type("Tester")
|
||||
})
|
||||
|
||||
// Closing Date
|
||||
cy.get('[data-name="Closing date"]').within(() => {
|
||||
cy.get('[aria-label=Calendar]').click({ force: true })
|
||||
})
|
||||
cy.get("[aria-current=date]").click()
|
||||
|
||||
// Department
|
||||
cy.get('[data-name="Department"]').within(() => {
|
||||
cy.get(".spectrum-Picker-label").click()
|
||||
})
|
||||
cy.get(".spectrum-Menu").find('li').its('length').then(len => {
|
||||
cy.get(".spectrum-Menu-item").eq(Math.floor(Math.random() * len)).click()
|
||||
})
|
||||
|
||||
// Employment Type
|
||||
cy.get('[data-name="Employment type"]').within(() => {
|
||||
cy.get(".spectrum-Picker-label").click()
|
||||
})
|
||||
cy.get(".spectrum-Menu").find('li').its('length').then(len => {
|
||||
cy.get(".spectrum-Menu-item").eq(Math.floor(Math.random() * len)).click()
|
||||
})
|
||||
|
||||
// Salary
|
||||
cy.get('[data-name="Salary ($)"]').within(() => {
|
||||
cy.get(".spectrum-Textfield").type(40000)
|
||||
})
|
||||
|
||||
// Description
|
||||
cy.get('[data-name="Description"]').within(() => {
|
||||
cy.get(".spectrum-Textfield").type("description")
|
||||
})
|
||||
|
||||
// Responsibilities
|
||||
cy.get('[data-name="Responsibilities"]').within(() => {
|
||||
cy.get(".spectrum-Textfield").type("Responsibilities")
|
||||
})
|
||||
|
||||
// Requirements
|
||||
cy.get('[data-name="Requirements"]').within(() => {
|
||||
cy.get(".spectrum-Textfield").type("Requirements")
|
||||
})
|
||||
|
||||
// Hiring manager
|
||||
cy.get('[data-name="Hiring manager"]').within(() => {
|
||||
cy.get(".spectrum-Picker-label").click()
|
||||
})
|
||||
cy.get(".spectrum-Menu").find('li').its('length').then(len => {
|
||||
cy.get(".spectrum-Menu-item").eq(Math.floor(Math.random() * len)).click()
|
||||
})
|
||||
|
||||
// Active
|
||||
if (i == 0) {
|
||||
cy.get('[data-name="Active"]').within(() => {
|
||||
cy.get(".spectrum-Checkbox-box").click({ force: true })
|
||||
})
|
||||
}
|
||||
|
||||
// Location
|
||||
cy.get('[data-name="Location"]').within(() => {
|
||||
cy.get(".spectrum-Picker-label").click()
|
||||
})
|
||||
cy.get(".spectrum-Menu").find('li').its('length').then(len => {
|
||||
cy.get(".spectrum-Menu-item").eq(Math.floor(Math.random() * len)).click()
|
||||
})
|
||||
|
||||
// Save vacancy
|
||||
cy.get(".spectrum-Button").contains("Save").click({ force: true })
|
||||
cy.wait(1000)
|
||||
|
||||
// Check table was updated
|
||||
cy.get('[data-name="Vacancies Table"]').eq(i).should('contain', 'Tester')
|
||||
}
|
||||
})
|
||||
|
||||
xit("should filter applications by stage", () => {
|
||||
// Visit published app
|
||||
cy.visit(`${Cypress.config().baseUrl}/app/` + templateNameParsed)
|
||||
cy.wait(1000)
|
||||
|
||||
// Applications section
|
||||
cy.get(".links").contains("Applications").click({ force: true })
|
||||
cy.wait(1000)
|
||||
|
||||
// Filter by stage - Confirm table updates
|
||||
cy.get(".spectrum-Picker").contains("Filter by stage").click({ force: true })
|
||||
cy.get(".spectrum-Menu").find('li').its('length').then(len => {
|
||||
for (let i = 1; i < len; i++) {
|
||||
cy.get(".spectrum-Menu-item").eq(i).click()
|
||||
const stage = cy.get(".spectrum-Picker-label")
|
||||
stage.invoke('text').then(stageText => {
|
||||
if (stageText == "1st interview") {
|
||||
cy.get(".placeholder").should('contain', 'No rows found')
|
||||
}
|
||||
else {
|
||||
cy.get(".spectrum-Table-row").should('contain', stageText)
|
||||
}
|
||||
cy.get(".spectrum-Picker").contains(stageText).click({ force: true })
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
xit("should edit an application", () => {
|
||||
// Switch application from not hired to hired
|
||||
// Visit published app
|
||||
cy.visit(`${Cypress.config().baseUrl}/app/` + templateNameParsed)
|
||||
cy.wait(1000)
|
||||
|
||||
// Not Hired section
|
||||
cy.get(".links").contains("Not hired").click({ force: true })
|
||||
cy.wait(500)
|
||||
|
||||
// View application
|
||||
cy.get(".spectrum-Table").within(() => {
|
||||
cy.get(".spectrum-Button").contains("View").click({ force: true })
|
||||
cy.wait(500)
|
||||
})
|
||||
|
||||
// Update value for 'Staged'
|
||||
cy.get('[data-name="Stage"]').within(() => {
|
||||
cy.get(".spectrum-Picker-label").click()
|
||||
})
|
||||
cy.get(".spectrum-Menu").within(() => {
|
||||
cy.get(".spectrum-Menu-item").contains("Hired").click()
|
||||
})
|
||||
|
||||
// Save application
|
||||
cy.get(".spectrum-Button").contains("Save").click({ force: true })
|
||||
cy.wait(500)
|
||||
|
||||
// Hired section
|
||||
cy.get(".links").contains("Hired").click({ force: true })
|
||||
cy.wait(500)
|
||||
|
||||
// Verify Table size - Total rows = 2
|
||||
cy.get(".spectrum-Table").find(".spectrum-Table-row").its('length').then((len => {
|
||||
expect(len).to.eq(2)
|
||||
}))
|
||||
})
|
||||
|
||||
xit("should delete an application", () => {
|
||||
// Visit published app
|
||||
cy.visit(`${Cypress.config().baseUrl}/app/` + templateNameParsed)
|
||||
cy.wait(1000)
|
||||
|
||||
// Hired section
|
||||
cy.get(".links").contains("Hired").click({ force: true })
|
||||
cy.wait(500)
|
||||
|
||||
// View first application
|
||||
cy.get(".spectrum-Table-row").eq(0).within(() => {
|
||||
cy.get(".spectrum-Button").contains("View").click({ force: true })
|
||||
cy.wait(500)
|
||||
})
|
||||
|
||||
// Delete application
|
||||
cy.get(".spectrum-Button").contains("Delete").click({ force: true })
|
||||
cy.get(".spectrum-Dialog-grid").within(() => {
|
||||
cy.get(".spectrum-Button").contains("Confirm").click()
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,60 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify IT Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter IT Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="IT"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for IT templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
|
||||
if (templateNameText == "Hashicorp Scorecard Template") {
|
||||
const templateNameSplit = templateNameParsed.split('-template')[0]
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameSplit)
|
||||
}
|
||||
else if (templateNameText == "IT Ticketing System") {
|
||||
const templateNameSplit = templateNameParsed.split('it-')[1]
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameSplit)
|
||||
}
|
||||
else if (templateNameText == "IT Incident Report Form") {
|
||||
const templateNameSplit = templateNameParsed.split('-form')[0]
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameSplit)
|
||||
}
|
||||
else {
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
}
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,72 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("IT Ticketing System Template Functionality", () => {
|
||||
const templateName = "IT Ticketing System"
|
||||
const templateNameParsed = templateName.toLowerCase().replace(/\s+/g, '-')
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
cy.deleteApp(templateName)
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`, {
|
||||
onBeforeLoad(win) {
|
||||
cy.stub(win, 'open')
|
||||
}
|
||||
})
|
||||
cy.wait(2000)
|
||||
})
|
||||
|
||||
it("should create and publish app with IT Ticketing System template", () => {
|
||||
// Select IT Ticketing System template
|
||||
cy.get(".template-thumbnail-text")
|
||||
.contains(templateName).parentsUntil(".template-grid").within(() => {
|
||||
cy.get(".spectrum-Button").contains("Use template").click({ force: true })
|
||||
})
|
||||
|
||||
// Confirm URL matches template name
|
||||
const appUrl = cy.get(".app-server")
|
||||
appUrl.invoke('text').then(appUrlText => {
|
||||
expect(appUrlText).to.equal(`${Cypress.config().baseUrl}/app/` + templateNameParsed)
|
||||
})
|
||||
|
||||
// Create App
|
||||
cy.get(".spectrum-Dialog-grid").within(() => {
|
||||
cy.get(".spectrum-Button").contains("Create app").click({ force: true })
|
||||
})
|
||||
|
||||
// Publish App & Verify it opened
|
||||
cy.wait(2000) // Wait for app to generate
|
||||
cy.publishApp(true)
|
||||
cy.window().its('open').should('be.calledOnce')
|
||||
})
|
||||
|
||||
xit("should filter tickets by status", () => {
|
||||
// Visit published app
|
||||
cy.visit(`${Cypress.config().baseUrl}/app/` + templateNameParsed)
|
||||
cy.wait(1000)
|
||||
|
||||
// Tickets section
|
||||
cy.get(".links").contains("Tickets").click({ force: true })
|
||||
cy.wait(1000)
|
||||
|
||||
// Filter by stage - Confirm table updates
|
||||
cy.get(".spectrum-Picker").contains("Filter by status").click({ force: true })
|
||||
cy.get(".spectrum-Menu").find('li').its('length').then(len => {
|
||||
for (let i = 1; i < len; i++) {
|
||||
cy.get(".spectrum-Menu-item").eq(i).click()
|
||||
const stage = cy.get(".spectrum-Picker-label")
|
||||
stage.invoke('text').then(stageText => {
|
||||
if (stageText == "In progress" || stageText == "On hold" || stageText == "Triaged") {
|
||||
cy.get(".placeholder").should('contain', 'No rows found')
|
||||
}
|
||||
else {
|
||||
cy.get(".spectrum-Table-row").should('contain', stageText)
|
||||
}
|
||||
cy.get(".spectrum-Picker").contains(stageText).click({ force: true })
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,42 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Admin Panel Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Admin Panels Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Admin Panels"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Admin Panels templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,51 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Aproval Apps Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Approval Apps Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Approval Apps"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Approval Apps templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
|
||||
if (templateNameText == "Content Approval System") {
|
||||
// Template name should include 'content-approval'
|
||||
const templateNameSplit = templateNameParsed.split('-system')[0]
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameSplit)
|
||||
}
|
||||
else {
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
}
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,51 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Business Apps Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Business Apps Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Business Apps"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Business Apps templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
|
||||
if (templateNameText == "Employee Check-in/Check-Out Template") {
|
||||
// Remove / from template name
|
||||
const templateNameReplace = templateNameParsed.replace(/\//g, "-")
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameReplace)
|
||||
}
|
||||
else {
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
}
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,44 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Directories Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Directories Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Directories"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Directories templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
const templateNameSplit = templateNameParsed.split('-template')[0]
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameSplit)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,42 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Forms Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Forms Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Forms"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Forms templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,43 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Healthcare Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Healthcare Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Healthcare"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Healthcare templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,42 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Legal Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Legal Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Legal"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Legal templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,42 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Logistics Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Logistics Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Logistics"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Logistics templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,42 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Manufacturing Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Manufacturing Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Manufacturing"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Manufacturing templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,44 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Lead Generation Form Template Functionality", () => {
|
||||
const templateName = "Lead Generation Form"
|
||||
const templateNameParsed = templateName.toLowerCase().replace(/\s+/g, '-')
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
cy.deleteApp(templateName)
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`, {
|
||||
onBeforeLoad(win) {
|
||||
cy.stub(win, 'open')
|
||||
}
|
||||
})
|
||||
cy.wait(2000)
|
||||
})
|
||||
|
||||
it("should create and publish app with Lead Generation Form template", () => {
|
||||
// Select Lead Generation Form template
|
||||
cy.get(".template-thumbnail-text")
|
||||
.contains(templateName).parentsUntil(".template-grid").within(() => {
|
||||
cy.get(".spectrum-Button").contains("Use template").click({ force: true })
|
||||
})
|
||||
|
||||
// Confirm URL matches template name
|
||||
const appUrl = cy.get(".app-server")
|
||||
appUrl.invoke('text').then(appUrlText => {
|
||||
expect(appUrlText).to.equal(`${Cypress.config().baseUrl}/app/` + templateNameParsed)
|
||||
})
|
||||
|
||||
// Create App
|
||||
cy.get(".spectrum-Dialog-grid").within(() => {
|
||||
cy.get(".spectrum-Button").contains("Create app").click({ force: true })
|
||||
})
|
||||
|
||||
// Publish App & Verify it opened
|
||||
cy.wait(2000) // Wait for app to generate
|
||||
cy.publishApp(true)
|
||||
cy.window().its('open').should('be.calledOnce')
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,51 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Marketing Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Marketing Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Marketing"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Marketing templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
|
||||
if (templateNameText == "Lead Generation Form") {
|
||||
// Multi-step lead form
|
||||
// Template name includes 'multi-step-lead-form'
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', 'multi-step-lead-form')
|
||||
}
|
||||
else {
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
}
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,42 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Operations Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Operations Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Operations"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Operations templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,71 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Portals Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Portal Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Portal"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Portal templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Portals templates", () => {
|
||||
// Filter Portals Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Portals"]').click()
|
||||
})
|
||||
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
cy.get('a')
|
||||
.should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -1,42 +0,0 @@
|
|||
import filterTests from "../../../support/filterTests"
|
||||
|
||||
filterTests(["all"], () => {
|
||||
context("Verify Professional Services Template Details", () => {
|
||||
|
||||
before(() => {
|
||||
cy.login()
|
||||
|
||||
// Template navigation
|
||||
cy.visit(`${Cypress.config().baseUrl}/builder/portal/apps/templates`)
|
||||
|
||||
// Filter Professional Services Templates
|
||||
cy.get(".template-category-filters").within(() => {
|
||||
cy.get('[data-cy="Professional Services"]').click()
|
||||
})
|
||||
})
|
||||
|
||||
it("should verify the details option for Professional Services templates", () => {
|
||||
cy.get(".template-grid").find(".template-card").its('length')
|
||||
.then(len => {
|
||||
// Verify template name is within details link
|
||||
for (let i = 0; i < len; i++) {
|
||||
cy.get(".template-card").eq(i).within(() => {
|
||||
const templateName = cy.get(".template-thumbnail-text")
|
||||
templateName.invoke('text')
|
||||
.then(templateNameText => {
|
||||
const templateNameParsed = templateNameText.toLowerCase().replace(/\s+/g, '-')
|
||||
cy.get('a').should('have.attr', 'href').and('contain', templateNameParsed)
|
||||
})
|
||||
// Verify correct status from Details link - 200
|
||||
cy.get('a')
|
||||
.then(link => {
|
||||
cy.request(link.prop('href'))
|
||||
.its('status')
|
||||
.should('eq', 200)
|
||||
})
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
|
@ -334,21 +334,6 @@ Cypress.Commands.add("createTestTableWithData", () => {
|
|||
cy.addColumn("dog", "age", "Number")
|
||||
})
|
||||
|
||||
Cypress.Commands.add("publishApp", (viewApp = false) => {
|
||||
cy.get(".toprightnav").contains("Publish").click({ force: true })
|
||||
cy.get(".spectrum-Dialog-grid").within(() => {
|
||||
cy.get(".spectrum-Button").contains("Publish").click({ force: true })
|
||||
})
|
||||
cy.wait(2000) // Wait for App to publish and modal to appear
|
||||
cy.get(".spectrum-Dialog-grid").within(() => {
|
||||
if (viewApp) {
|
||||
cy.get(".spectrum-Button").contains("View App").click({ force: true })
|
||||
} else {
|
||||
cy.get(".spectrum-Button").contains("Done").click({ force: true })
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
Cypress.Commands.add("createTable", (tableName, initialTable) => {
|
||||
if (!initialTable) {
|
||||
cy.navigateToDataSection()
|
||||
|
|
Loading…
Reference in New Issue