import 'cypress-localstorage-commands'; import 'cypress-file-upload'; import 'cypress-keycloak-commands'; Cypress.Commands.add('cleanup', () => { localStorage.clear(); cy.clearLocalStorageSnapshot(); cy.kcLogout(); }); Cypress.Commands.add('init', (user) => { cy.kcLogin('manager').as('tokens'); cy.deleteAllProjects(); cy.kcLogout(); cy.kcLogin(user).as('tokens'); }); Cypress.Commands.add('deleteAllProjects', () => { cy.get('@tokens').then((tokens) => { const projectListRequest = { method: 'GET', url: Cypress.env('api_url') + '/project', headers: { Authorization: 'bearer ' + tokens.access_token } }; cy.request(projectListRequest).then((projects) => { projects.body.forEach((project) => { const deleteProjectRequest = { method: 'DELETE', url: Cypress.env('api_url') + '/project/' + project.projectId, headers: { Authorization: 'bearer ' + tokens.access_token } }; cy.request(deleteProjectRequest).then((response) => { console.log('Project Deleted', project.projectId, response); }); }); }); }); });