From ff9f117eaaa6c385de8d07eea6610543c0b4f496 Mon Sep 17 00:00:00 2001 From: MonireRasouli Date: Tue, 28 Jan 2025 14:24:32 +0000 Subject: [PATCH] tweak tests --- src/components/views/Basket/Basket.test.js | 30 ++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/src/components/views/Basket/Basket.test.js b/src/components/views/Basket/Basket.test.js index 4400f9cfd..8781e173e 100644 --- a/src/components/views/Basket/Basket.test.js +++ b/src/components/views/Basket/Basket.test.js @@ -1,6 +1,6 @@ import { MemoryRouter } from 'react-router-dom'; import { useMutation } from 'react-query'; -import { waitFor, fireEvent, screen } from '@folio/jest-config-stripes/testing-library/react'; +import { waitFor, fireEvent } from '@folio/jest-config-stripes/testing-library/react'; import { Button, @@ -13,7 +13,13 @@ import Basket from './Basket'; import translationsProperties from '../../../../test/helpers'; import { data, handlers } from './testResources'; -jest.mock('../../BasketList', () => () =>
BasketList
); +jest.mock('../../BasketList', () => (props) => ( +
+ + + BasketList +
+)); jest.mock('../../AgreementSearchButton', () => () =>
AgreementSearchButton
); jest.mock('../../AgreementModal', () => () =>
AgreementModal
); @@ -70,6 +76,12 @@ describe('Basket', () => { expect(getByText('BasketList')).toBeInTheDocument(); }); + if (isButtonDisabled) { + test('the Create New Agreement button is disabled', async () => { + await Button('Create new agreement').is({ disabled: true }); + }); + } + describe(' clicking on the create agreement button', () => { if (!isButtonDisabled) { it('triggers create agreement logic on button click', async () => { @@ -89,6 +101,20 @@ describe('Basket', () => { } }); + it('toggles item selection', async () => { + const { getByText } = renderComponent; + const basketList = getByText('BasketList'); + + const checkbox = basketList.querySelector('input[type="checkbox"]'); + expect(checkbox).toBeInTheDocument(); + + fireEvent.click(checkbox); + expect(checkbox.checked).toBe(true); + + fireEvent.click(checkbox); + expect(checkbox.checked).toBe(false); + }); + it('renders the close basket button', async () => { const { getByRole } = renderComponent; expect(getByRole('button', { name: 'Close basket' })).toBeInTheDocument();