unit-tests
This commit is contained in:
parent
b8ef87fc83
commit
b06a6ec07e
15849
package-lock.json
generated
Normal file
15849
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
25
src/components/__tests__/SelectMenu.test.jsx
Normal file
25
src/components/__tests__/SelectMenu.test.jsx
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
import React from 'react';
|
||||||
|
import { cleanup, fireEvent, waitForElement, screen } from '@testing-library/react';
|
||||||
|
import '@testing-library/jest-dom/extend-expect';
|
||||||
|
import { customRender,customRenderCAS } from '../../customRender';
|
||||||
|
import {SelectMenu} from '../SelectMenu';
|
||||||
|
import { Select } from '@material-ui/core';
|
||||||
|
|
||||||
|
beforeAll(() => {
|
||||||
|
delete window.location;
|
||||||
|
window.location = { replace: jest.fn() };
|
||||||
|
});
|
||||||
|
|
||||||
|
afterAll(() => {
|
||||||
|
window.location = location;
|
||||||
|
});
|
||||||
|
|
||||||
|
test('not render component for student', async () => {
|
||||||
|
customRender(<SelectMenu/>);
|
||||||
|
expect(screen.queryByText(/przedmioty/i)).not.toBeInTheDocument();
|
||||||
|
});
|
||||||
|
|
||||||
|
test('not render component for deanery', async () => {
|
||||||
|
customRenderCAS(<SelectMenu/>);
|
||||||
|
expect(screen.queryByText(/przedmioty/i)).not.toBeInTheDocument();
|
||||||
|
});
|
@ -18,12 +18,21 @@ test('renders component', async () => {
|
|||||||
expect(screen.getByText(/plan na plan/i)).toBeInTheDocument();
|
expect(screen.getByText(/plan na plan/i)).toBeInTheDocument();
|
||||||
});
|
});
|
||||||
|
|
||||||
// test('calculate results after user types value', async () => {
|
test('input should display default placeholder for student', async () => {
|
||||||
// const { getByLabelText, getByText, debug } = customRender(<Topbar handleTransfer={() => {}} />);
|
const { getByPlaceholderText, getByText, debug } = customRender(<Topbar handleTransfer={() => {}} />);
|
||||||
// const input = getByLabelText('xd');
|
const input = getByPlaceholderText('Wyszukaj przedmioty...');
|
||||||
// fireEvent.change(input, { target: { value: '122' } });
|
// fireEvent.change(input, { target: { value: '122' } });
|
||||||
// console.log(debug());
|
// console.log(debug());
|
||||||
// const textNode = await waitForElement(() => getByText('asdasdsa'));
|
// const textNode = await waitForElement(() => getByText('asdasdsa'));
|
||||||
// console.log(debug());
|
// console.log(debug());
|
||||||
// expect(textNode).toBeInTheDocument();
|
expect(input).toBeInTheDocument();
|
||||||
// });
|
});
|
||||||
|
|
||||||
|
test('input should display changed value', async () => {
|
||||||
|
const { getByPlaceholderText, getByText, debug } = customRender(<Topbar handleTransfer={() => {}} />);
|
||||||
|
const input = getByPlaceholderText('Wyszukaj przedmioty...');
|
||||||
|
fireEvent.change(input, { target: { value: '122' } });
|
||||||
|
// console.log(debug());
|
||||||
|
// console.log(debug());
|
||||||
|
expect(input.value).toBe("122");
|
||||||
|
});
|
||||||
|
@ -16,3 +16,18 @@ export const customRender = (ui, CASValue = {}, studentsValue = {}, coursesValue
|
|||||||
</SnackbarProvider>,
|
</SnackbarProvider>,
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const customRenderCAS = (ui, CASValue = {}, studentsValue = {}, coursesValue = {}) => {
|
||||||
|
|
||||||
|
const user={authorityRole: "DEANERY", email: "test@test.pl", id: "123"}
|
||||||
|
|
||||||
|
return render(
|
||||||
|
<SnackbarProvider>
|
||||||
|
<CASProvider value={{user}}>
|
||||||
|
<StudentsProvider value={50}>
|
||||||
|
<CoursesProvider value={100}>{ui}</CoursesProvider>
|
||||||
|
</StudentsProvider>
|
||||||
|
</CASProvider>
|
||||||
|
</SnackbarProvider>,
|
||||||
|
);
|
||||||
|
};
|
Loading…
Reference in New Issue
Block a user