mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	Follows up on https://github.com/Unleash/unleash/pull/4853 to add Biome to the frontend as well.  Added a few `biome-ignore` to speed up the process but we may want to check and fix them in the future.
		
			
				
	
	
		
			108 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			108 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| ///<reference path="../../global.d.ts" />
 | |
| 
 | |
| describe('groups', () => {
 | |
|     const baseUrl = Cypress.config().baseUrl;
 | |
|     const randomId = String(Math.random()).split('.')[1];
 | |
|     const groupName = `unleash-e2e-${randomId}`;
 | |
|     const userIds: any[] = [];
 | |
| 
 | |
|     before(() => {
 | |
|         cy.runBefore();
 | |
|         cy.login_UI();
 | |
|         for (let i = 1; i <= 2; i++) {
 | |
|             cy.request('POST', `${baseUrl}/api/admin/user-admin`, {
 | |
|                 name: `unleash-e2e-user${i}-${randomId}`,
 | |
|                 email: `unleash-e2e-user${i}-${randomId}@test.com`,
 | |
|                 sendEmail: false,
 | |
|                 rootRole: 3,
 | |
|             }).then((response) => userIds.push(response.body.id));
 | |
|         }
 | |
|     });
 | |
| 
 | |
|     after(() => {
 | |
|         userIds.forEach((id) =>
 | |
|             cy.request('DELETE', `${baseUrl}/api/admin/user-admin/${id}`),
 | |
|         );
 | |
|     });
 | |
| 
 | |
|     beforeEach(() => {
 | |
|         cy.login_UI();
 | |
|         cy.visit('/admin/groups');
 | |
|         if (document.querySelector("[data-testid='CLOSE_SPLASH']")) {
 | |
|             cy.get("[data-testid='CLOSE_SPLASH']").click();
 | |
|         }
 | |
|     });
 | |
| 
 | |
|     it('can create a group', () => {
 | |
|         cy.get("[data-testid='NAVIGATE_TO_CREATE_GROUP']").click();
 | |
| 
 | |
|         cy.intercept('POST', '/api/admin/groups').as('createGroup');
 | |
| 
 | |
|         cy.get("[data-testid='UG_NAME_ID']").type(groupName);
 | |
|         cy.get("[data-testid='UG_DESC_ID']").type('hello-world');
 | |
|         cy.get("[data-testid='UG_USERS_ID']").click();
 | |
|         cy.contains(`unleash-e2e-user1-${randomId}`).click();
 | |
| 
 | |
|         cy.get("[data-testid='UG_CREATE_BTN_ID']").click();
 | |
|         cy.wait('@createGroup');
 | |
|         cy.contains(groupName);
 | |
|     });
 | |
| 
 | |
|     it('gives an error if a group exists with the same name', () => {
 | |
|         cy.get("[data-testid='NAVIGATE_TO_CREATE_GROUP']").click();
 | |
| 
 | |
|         cy.intercept('POST', '/api/admin/groups').as('createGroup');
 | |
| 
 | |
|         cy.get("[data-testid='UG_NAME_ID']").type(groupName);
 | |
|         cy.get("[data-testid='INPUT_ERROR_TEXT'").contains(
 | |
|             'A group with that name already exists.',
 | |
|         );
 | |
|     });
 | |
| 
 | |
|     it('can edit a group', () => {
 | |
|         cy.contains(groupName).click();
 | |
| 
 | |
|         cy.get("[data-testid='UG_EDIT_BTN_ID']").click();
 | |
| 
 | |
|         cy.get("[data-testid='UG_DESC_ID']").type('-my edited description');
 | |
| 
 | |
|         cy.get("[data-testid='UG_SAVE_BTN_ID']").click();
 | |
| 
 | |
|         cy.contains('hello-world-my edited description');
 | |
|     });
 | |
| 
 | |
|     it('can add user to a group', () => {
 | |
|         cy.contains(groupName).click();
 | |
| 
 | |
|         cy.get("[data-testid='UG_EDIT_USERS_BTN_ID']").click();
 | |
| 
 | |
|         cy.get("[data-testid='UG_USERS_ID']").click();
 | |
|         cy.contains(`unleash-e2e-user2-${randomId}`).click();
 | |
| 
 | |
|         cy.get("[data-testid='UG_SAVE_BTN_ID']").click();
 | |
| 
 | |
|         cy.contains(`unleash-e2e-user1-${randomId}`);
 | |
|         cy.contains(`unleash-e2e-user2-${randomId}`);
 | |
|     });
 | |
| 
 | |
|     it('can remove user from a group', () => {
 | |
|         cy.contains(groupName).click();
 | |
| 
 | |
|         cy.get(`[data-testid='UG_REMOVE_USER_BTN_ID-${userIds[1]}']`).click();
 | |
| 
 | |
|         cy.get("[data-testid='DIALOGUE_CONFIRM_ID'").click();
 | |
| 
 | |
|         cy.contains(`unleash-e2e-user1-${randomId}`);
 | |
|         cy.contains(`unleash-e2e-user2-${randomId}`).should('not.exist');
 | |
|     });
 | |
| 
 | |
|     it('can delete a group', () => {
 | |
|         cy.contains(groupName).click();
 | |
| 
 | |
|         cy.get("[data-testid='UG_DELETE_BTN_ID']").click();
 | |
|         cy.get("[data-testid='DIALOGUE_CONFIRM_ID'").click();
 | |
| 
 | |
|         cy.contains(groupName).should('not.exist');
 | |
|     });
 | |
| });
 |