From 65736dff2f1c91489d78ff6f13e771f04ef0c8ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20de=20Juvigny?= Date: Sun, 19 Sep 2021 23:07:42 +0200 Subject: [PATCH] Add tests for the permissions accordions --- .../admin/src/components/Permissions/index.js | 4 ++-- .../src/pages/Roles/EditPage/tests/index.test.js | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/packages/plugins/users-permissions/admin/src/components/Permissions/index.js b/packages/plugins/users-permissions/admin/src/components/Permissions/index.js index 581ff39ea3..a0d5aa446e 100644 --- a/packages/plugins/users-permissions/admin/src/components/Permissions/index.js +++ b/packages/plugins/users-permissions/admin/src/components/Permissions/index.js @@ -1,5 +1,5 @@ import React, { memo, useCallback, useReducer } from 'react'; -import { Accordion, AccordionToggle, AccordionContent, Box } from '@strapi/parts'; +import { Accordion, AccordionToggle, AccordionContent } from '@strapi/parts'; import { useIntl } from 'react-intl'; import { useUsersPermissions } from '../../contexts/UsersPermissionsContext'; import formatPluginName from '../../utils/formatPluginName'; @@ -36,7 +36,7 @@ const Permissions = () => { id: 'users-permissions.Plugin.permissions.plugins.description', defaultMessage: 'Define all allowed actions for the {name} plugin.', }, - { name: formatPluginName(collapse.name) } + { name: collapse.name } )} variant={index % 2 ? 'primary' : 'secondary'} /> diff --git a/packages/plugins/users-permissions/admin/src/pages/Roles/EditPage/tests/index.test.js b/packages/plugins/users-permissions/admin/src/pages/Roles/EditPage/tests/index.test.js index 72ddab4273..adbd072d6e 100644 --- a/packages/plugins/users-permissions/admin/src/pages/Roles/EditPage/tests/index.test.js +++ b/packages/plugins/users-permissions/admin/src/pages/Roles/EditPage/tests/index.test.js @@ -966,4 +966,18 @@ describe('Admin | containers | RoleEditPage', () => { const errorMessages = await getAllByText(/invalid value/i); errorMessages.forEach(errorMessage => expect(errorMessage).toBeInTheDocument()); }); + + it('can toggle the permissions accordions', async () => { + // Create app and wait for loading + const { getByLabelText, queryByText, getByTestId, getByText } = makeAndRenderApp(); + const loader = getByTestId('loader'); + await waitForElementToBeRemoved(loader).catch(e => console.error(e)); + + // Open then close the collapse + const collapse = getByText(/define all allowed actions for the application plugin/i); + await userEvent.click(collapse); + expect(getByLabelText(/select all/i)).toBeInTheDocument(); + await userEvent.click(collapse); + expect(queryByText(/select all/i)).not.toBeInTheDocument(); + }); });