| @@ -0,0 +1,57 @@ | |||
| import * as redux from "react-redux"; | |||
| import store from "../../store"; | |||
| import { Router } from "react-router-dom"; | |||
| import { render } from "@testing-library/react"; | |||
| import history from "../../store/utils/history"; | |||
| import StatsAd from "../../components/Ads/StatsAd"; | |||
| describe("StatsAd render tests", () => { | |||
| var props = { | |||
| className: "some class", | |||
| count: 2, | |||
| title: ".NET", | |||
| minimumExperience: 1, | |||
| createdAt: "20.12.2023", | |||
| expiredAt: "28.12.2023", | |||
| onShowAdDetails: jest.fn(), | |||
| }; | |||
| const cont = ( | |||
| <redux.Provider store={store}> | |||
| <Router history={history}> | |||
| <StatsAd {...props} /> | |||
| </Router> | |||
| </redux.Provider> | |||
| ); | |||
| afterEach(() => { | |||
| jest.restoreAllMocks(); | |||
| }); | |||
| it("Should render", () => { | |||
| const { container } = render(cont); | |||
| expect(container.getElementsByClassName("stats-ad")[0]).toBeDefined(); | |||
| }); | |||
| it("Should render title", () => { | |||
| const { container } = render(cont); | |||
| expect( | |||
| container.getElementsByClassName("archive-ad-title")[0] | |||
| ).toBeDefined(); | |||
| }); | |||
| it("Should render date", () => { | |||
| const { container } = render(cont); | |||
| expect( | |||
| container.getElementsByClassName("archive-ad-date")[0] | |||
| ).toBeDefined(); | |||
| }); | |||
| it("Should render that experience is required because minimumExperience is greater than 0", () => { | |||
| const { container } = render(cont); | |||
| expect( | |||
| container | |||
| .getElementsByClassName("archive-ad-experience")[0] | |||
| .getElementsByTagName("p")[0].textContent | |||
| ).toBe("1+ years of experience"); | |||
| }); | |||
| }); | |||