/// import ROUTES from 'constants/routes'; import defaultRules from '../../fixtures/defaultRules.json'; describe('Alerts', () => { beforeEach(() => { window.localStorage.setItem('isLoggedIn', 'yes'); cy .intercept('get', '*rules*', { fixture: 'defaultRules', }) .as('defaultRules'); cy.visit(Cypress.env('baseUrl') + `${ROUTES.LIST_ALL_ALERT}`); cy.wait('@defaultRules'); }); it('Edit Rules Page Failure', async () => { cy .intercept('**/rules/**', { statusCode: 500, }) .as('Get Rules Error'); cy.get('button.ant-btn.ant-btn-link:nth-child(2)').then((e) => { const firstDelete = e[0]; firstDelete.click(); cy.waitFor('@Get Rules Error'); cy .window() .location() .then((e) => { expect(e.pathname).to.be.equals(`/alerts/edit/1`); }); cy.findByText('Something went wrong').then((e) => { expect(e.length).to.be.equals(1); }); }); }); it('Edit Rules Page Success', async () => { const text = 'this is the sample value'; cy .intercept('**/rules/**', { statusCode: 200, body: { data: { data: text, }, }, }) .as('Get Rules Success'); cy.get('button.ant-btn.ant-btn-link:nth-child(2)').then((e) => { const firstDelete = e[0]; firstDelete.click(); cy.waitFor('@Get Rules Success'); cy.wait(1000); cy.findByText('Save').then((e) => { const [el] = e.get(); el.click(); }); }); }); it('All Rules are rendered correctly', async () => { cy .window() .location() .then(({ pathname }) => { expect(pathname).to.be.equals(ROUTES.LIST_ALL_ALERT); cy.get('tbody').then((e) => { const tarray = e.children().get(); expect(tarray.length).to.be.equals(3); tarray.forEach(({ children }, index) => { const name = children[1]?.textContent; const label = children[2]?.textContent; expect(name).to.be.equals(defaultRules.data.rules[index].name); const defaultLabels = defaultRules.data.rules[index].labels; expect(label).to.be.equals(defaultLabels['severity']); }); }); }); }); it('Rules are Deleted', async () => { cy .intercept('**/rules/**', { body: { data: 'Deleted', message: 'Success', }, statusCode: 200, }) .as('deleteRules'); cy.get('button.ant-btn.ant-btn-link:first-child').then((e) => { const firstDelete = e[0]; firstDelete.click(); }); cy.wait('@deleteRules'); cy.get('tbody').then((e) => { const trray = e.children().get(); expect(trray.length).to.be.equals(2); }); }); });