117 lines
3.5 KiB
JavaScript
117 lines
3.5 KiB
JavaScript
import filterTests from "../../support/filterTests"
|
|
const interact = require('../../support/interact')
|
|
|
|
filterTests(["smoke", "all"], () => {
|
|
context("Account Portals", () => {
|
|
|
|
const bbUserEmail = "bbuser@test.com"
|
|
|
|
before(() => {
|
|
cy.login()
|
|
cy.deleteApp("Cypress Tests")
|
|
cy.createApp("Cypress Tests", false)
|
|
|
|
// Create new user
|
|
cy.wait(500)
|
|
cy.visit(`${Cypress.config().baseUrl}/builder`, { timeout: 5000})
|
|
cy.createUser(bbUserEmail)
|
|
cy.contains("bbuser").click()
|
|
cy.wait(500)
|
|
|
|
// Reset password
|
|
cy.get(".title").within(() => {
|
|
cy.get(interact.SPECTRUM_ICON).click({ force: true })
|
|
})
|
|
cy.get(interact.SPECTRUM_MENU).within(() => {
|
|
cy.get(interact.SPECTRUM_MENU_ITEM).contains("Force Password Reset").click({ force: true })
|
|
})
|
|
|
|
cy.get(interact.SPECTRUM_DIALOG_GRID)
|
|
.find(interact.SPECTRUM_TEXTFIELD_INPUT).invoke('val').as('pwd')
|
|
|
|
cy.get(interact.SPECTRUM_BUTTON).contains("Reset password").click({ force: true })
|
|
|
|
// Login as new user and set password
|
|
cy.logOut()
|
|
cy.get('@pwd').then((pwd) => {
|
|
cy.login(bbUserEmail, pwd)
|
|
})
|
|
|
|
for (let i = 0; i < 2; i++) {
|
|
cy.get(interact.SPECTRUM_TEXTFIELD_INPUT).eq(i).type("test")
|
|
}
|
|
cy.get(interact.SPECTRUM_BUTTON).contains("Reset your password").click({ force: true })
|
|
cy.logoutNoAppGrid()
|
|
})
|
|
|
|
xit("should verify Admin Portal", () => {
|
|
cy.login()
|
|
// Configure user role
|
|
cy.setUserRole("bbuser", "Admin")
|
|
bbUserLogin()
|
|
|
|
// Verify available options for Admin portal
|
|
cy.get(interact.SPECTRUM_SIDENAV)
|
|
.should('contain', 'Apps')
|
|
//.and('contain', 'Usage')
|
|
.and('contain', 'Users')
|
|
.and('contain', 'Auth')
|
|
.and('contain', 'Email')
|
|
.and('contain', 'Organisation')
|
|
.and('contain', 'Theming')
|
|
.and('contain', 'Update')
|
|
//.and('contain', 'Upgrade')
|
|
|
|
cy.logOut()
|
|
})
|
|
|
|
it("should verify Development Portal", () => {
|
|
// Only Development access should be enabled
|
|
cy.login()
|
|
cy.setUserRole("bbuser", "Developer")
|
|
bbUserLogin()
|
|
|
|
// Verify available options for Admin portal
|
|
cy.get(interact.SPECTRUM_SIDENAV)
|
|
.should('contain', 'Apps')
|
|
//.and('contain', 'Usage')
|
|
.and('not.contain', 'Users')
|
|
.and('not.contain', 'Auth')
|
|
.and('not.contain', 'Email')
|
|
.and('not.contain', 'Organisation')
|
|
.and('contain', 'Theming')
|
|
.and('not.contain', 'Update')
|
|
.and('not.contain', 'Upgrade')
|
|
|
|
cy.logOut()
|
|
})
|
|
|
|
it("should verify Standard Portal", () => {
|
|
// Development access should be disabled (Admin access is already disabled)
|
|
cy.login()
|
|
cy.setUserRole("bbuser", "App User")
|
|
bbUserLogin()
|
|
|
|
// Verify Standard Portal
|
|
cy.get(interact.SPECTRUM_SIDENAV).should('not.exist') // No config sections
|
|
cy.get(interact.CREATE_APP_BUTTON).should('not.exist') // No create app button
|
|
cy.get(".app").should('not.exist') // No apps -> no roles assigned to user
|
|
cy.get(interact.CONTAINER).should('contain', bbUserEmail) // Message containing users email
|
|
|
|
cy.logoutNoAppGrid()
|
|
})
|
|
|
|
const bbUserLogin = () => {
|
|
// Login as bbuser
|
|
cy.logOut()
|
|
cy.login(bbUserEmail, "test")
|
|
}
|
|
|
|
after(() => {
|
|
cy.login()
|
|
// Delete BB user
|
|
cy.deleteUser(bbUserEmail)
|
|
})
|
|
})
|
|
})
|