Created a utility function for checking the flash success message for user udpates in the admin (#16956)

This commit is contained in:
Nick Taylor 2022-03-21 16:38:31 -04:00 committed by GitHub
parent 7e099db0f4
commit 37cf5107f5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 30 additions and 40 deletions

View file

@ -1,3 +1,5 @@
import { verifyAndDismissUserUpdatedMessage } from './userAdminUtilitites';
// More on roles, https://admin.forem.com/docs/forem-basics/user-roles
function openCreditsModal() {
cy.getModal().should('not.exist');
@ -6,14 +8,6 @@ function openCreditsModal() {
return cy.getModal();
}
function verifyAndDismissUserUpdatedMessage(message) {
cy.findByText(message).should('exist');
cy.findByRole('button', { name: 'Dismiss message' })
.should('have.focus')
.click();
cy.findByText(message).should('not.exist');
}
describe('Manage User Credits', () => {
describe('As an admin', () => {
beforeEach(() => {

View file

@ -1,3 +1,5 @@
import { verifyAndDismissUserUpdatedMessage } from './userAdminUtilitites';
// More on roles, https://admin.forem.com/docs/forem-basics/user-roles
function openOrgModal(ctaText = 'Add organization') {
cy.getModal().should('not.exist');
@ -6,14 +8,6 @@ function openOrgModal(ctaText = 'Add organization') {
return cy.getModal();
}
function verifyAndDismissUserUpdatedMessage(message) {
cy.findByText(message).should('exist');
cy.findByRole('button', { name: 'Dismiss message' })
.should('have.focus')
.click();
cy.findByText(message).should('not.exist');
}
describe('Manage User Organziations', () => {
describe('As an admin', () => {
beforeEach(() => {

View file

@ -1,3 +1,5 @@
import { verifyAndDismissUserUpdatedMessage } from './userAdminUtilitites';
// More on roles, https://admin.forem.com/docs/forem-basics/user-roles
function openRolesModal() {
cy.getModal().should('not.exist');
@ -6,14 +8,6 @@ function openRolesModal() {
return cy.getModal();
}
function verifyAndDismissUserUpdatedMessage() {
cy.findByText('User has been updated').should('exist');
cy.findByRole('button', { name: 'Dismiss message' })
.should('have.focus')
.click();
cy.findByText('User has been updated').should('not.exist');
}
function checkUserStatus(status) {
cy.findByTestId('user-status').should('have.text', status);
}

View file

@ -1,3 +1,5 @@
import { verifyAndDismissUserUpdatedMessage } from './userAdminUtilitites';
function openUserOptions(callback) {
cy.findByRole('button', { name: 'Options' })
.should('have.attr', 'aria-haspopup', 'true')
@ -11,22 +13,6 @@ function openUserOptions(callback) {
});
}
function verifyAndDismissUserUpdatedMessage(message) {
cy.findByTestId('flash-success')
.as('success')
.then((element) => {
expect(element.text().trim()).equal(message);
});
cy.get('@success').within(() => {
cy.findByRole('button', { name: 'Dismiss message' })
.should('have.focus')
.click();
});
cy.findByTestId('flash-success').should('not.exist');
}
describe('Manage User Options', () => {
describe('As an admin', () => {
beforeEach(() => {

View file

@ -0,0 +1,22 @@
/**
* E2E helper function for user admin tests that validates the correct flash success message appears
*
* @param {string} [message="User has been updated"] The expected flash message text
*/
export function verifyAndDismissUserUpdatedMessage(
message = 'User has been updated',
) {
cy.findByTestId('flash-success')
.as('success')
.then((element) => {
expect(element.text().trim()).equal(message);
});
cy.get('@success').within(() => {
cy.findByRole('button', { name: 'Dismiss message' })
.should('have.focus')
.click();
});
cy.findByTestId('flash-success').should('not.exist');
}