Skip to content

Commit f5c54fc

Browse files
test: fix completely broken tests
1 parent 8d84f68 commit f5c54fc

2 files changed

Lines changed: 16 additions & 7 deletions

File tree

plugins/course-apps/ora_settings/Settings.test.jsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,8 +125,11 @@ describe('ORASettings', () => {
125125
});
126126

127127
it('Displays title, helper text and badge when flexible peer grading button is enabled', async () => {
128-
renderComponent();
129128
await mockStore({ apiStatus: 200, enabled: true });
129+
renderComponent();
130+
131+
const checkbox = await screen.getByRole('checkbox', { name: /Flex Peer Grading/ });
132+
expect(checkbox).toBeChecked();
130133

131134
await waitFor(() => {
132135
const label = screen.getByText(messages.enableFlexPeerGradeLabel.defaultMessage);

src/certificates/certificate-signatories/signatory/SignatoryForm.test.jsx

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { render, waitFor } from '@testing-library/react';
1+
import { render, screen, waitFor } from '@testing-library/react';
22
import { Provider } from 'react-redux';
33
import userEvent from '@testing-library/user-event';
44
import { IntlProvider } from '@edx/frontend-platform/i18n';
@@ -30,6 +30,7 @@ const initialState = {
3030
};
3131

3232
const defaultProps = {
33+
index: 0,
3334
...signatoriesMock[0],
3435
showDeleteButton: true,
3536
isEdit: true,
@@ -62,15 +63,20 @@ describe('Signatory Component', () => {
6263
it('handles input change', async () => {
6364
const user = userEvent.setup();
6465
const handleChange = jest.fn();
65-
const { getByPlaceholderText } = renderSignatory({ ...defaultProps, handleChange });
66-
const input = getByPlaceholderText(messages.namePlaceholder.defaultMessage);
66+
renderSignatory({ ...defaultProps, handleChange });
67+
const input = screen.getByPlaceholderText(messages.namePlaceholder.defaultMessage);
6768
const newInputValue = 'Jane Doe';
6869

69-
await user.type(input, newInputValue, { name: 'signatories[0].name' });
70+
expect(handleChange).not.toHaveBeenCalled();
71+
expect(input.value).not.toBe(newInputValue);
72+
await user.type(input, newInputValue);
7073

7174
await waitFor(() => {
72-
expect(handleChange).toHaveBeenCalledWith(expect.anything());
73-
expect(input.value).toBe(newInputValue);
75+
// This is not a great test; handleChange() gets called for each key press:
76+
expect(handleChange).toHaveBeenCalledTimes(newInputValue.length);
77+
// And the input value never actually changes because it's a controlled component
78+
// and we pass the name in as a prop, which hasn't changed.
79+
// expect(input.value).toBe(newInputValue);
7480
});
7581
});
7682

0 commit comments

Comments
 (0)