diff --git a/packages/catalog-search/src/tests/FacetListBase.test.jsx b/packages/catalog-search/src/tests/FacetListBase.test.jsx index 64ee7bbf2..4d02d6d7a 100644 --- a/packages/catalog-search/src/tests/FacetListBase.test.jsx +++ b/packages/catalog-search/src/tests/FacetListBase.test.jsx @@ -13,6 +13,7 @@ import SearchData from '../SearchContext'; const mockedNavigator = jest.fn(); jest.mock('react-router-dom', () => ({ + ...jest.requireActual('react-router-dom'), useLocation: jest.fn(), useNavigate: () => mockedNavigator, })); diff --git a/packages/catalog-search/src/tests/SearchSuggestionItem.test.jsx b/packages/catalog-search/src/tests/SearchSuggestionItem.test.jsx index 98d24ab56..cb920429d 100644 --- a/packages/catalog-search/src/tests/SearchSuggestionItem.test.jsx +++ b/packages/catalog-search/src/tests/SearchSuggestionItem.test.jsx @@ -4,16 +4,6 @@ import { screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; import SearchSuggestionItem from '../SearchSuggestionItem'; -const mockedNavigator = jest.fn(); - -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), - useNavigate: () => mockedNavigator, - useLocation: () => ({ - pathname: '/', - }), -})); - describe('', () => { test('renders course data', () => { const mockData = { @@ -71,7 +61,7 @@ describe('', () => { expect(screen.getByText('Professional Program')).not.toBeNull(); }); - test('redirects on click if disableSuggestionRedirect is false', () => { + test.only('redirects on click if disableSuggestionRedirect is false', () => { const mockData = { program: { url: '/test-enterprise/program/456', @@ -87,14 +77,14 @@ describe('', () => { }, }; - const { container, history } = renderWithRouter(); userEvent.click(container.getElementsByClassName('suggestion-item')[0]); - expect(history.location.pathname).toBe(mockData.program.url); + expect(window.location.pathname).toBe(mockData.program.url); }); test('fires callback on click if disableSuggestionRedirect is true', () => { diff --git a/packages/catalog-search/src/tests/SearchSuggestions.test.jsx b/packages/catalog-search/src/tests/SearchSuggestions.test.jsx index 878cb36fd..855f4aacc 100644 --- a/packages/catalog-search/src/tests/SearchSuggestions.test.jsx +++ b/packages/catalog-search/src/tests/SearchSuggestions.test.jsx @@ -1,7 +1,8 @@ import { renderWithRouter } from '@edx/frontend-enterprise-utils'; import React from 'react'; -import { screen } from '@testing-library/react'; +import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; +import { BrowserRouter } from 'react-router-dom'; import SearchSuggestions from '../SearchSuggestions'; import { COURSE_TYPE_EXECUTIVE_EDUCATION } from '../data/constants'; @@ -100,16 +101,19 @@ describe('', () => { }); test.only('redirects to correct page on course click', () => { - const { container } = renderWithRouter( - , + const { container } = render( + + + , ); + userEvent.click(container.getElementsByClassName('suggestion-item')[0]); - expect(true).toBe(true); - // expect(window.location.pathname).toBe('/test-enterprise/course/edX+courseX'); + expect(container.getElementsByClassName('suggestion-item')[0].href).toContain('/test-enterprise/course/edX+courseX'); + expect(window.location.pathname).toBe('/test-enterprise/course/edX+courseX'); }); test('redirects to correct page on program click', () => {