-
Notifications
You must be signed in to change notification settings - Fork 234
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
(refactor) O3-4221: Replace validation with zod #1413
Changes from all commits
6e2b433
7f17fe4
5bc5b21
126b1e1
6cb5c25
f6a36b7
4598b90
fce4da3
5bb9a1e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -4,6 +4,12 @@ import { render, screen } from '@testing-library/react'; | |||||||||||||||||||||||||||||||||||||
import { useLayoutType } from '@openmrs/esm-framework'; | ||||||||||||||||||||||||||||||||||||||
import QueueServiceForm from './queue-service-form.workspace'; | ||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||
jest.mock('react-i18next', () => ({ | ||||||||||||||||||||||||||||||||||||||
useTranslation: () => ({ | ||||||||||||||||||||||||||||||||||||||
t: (key: string, defaultValue: string) => defaultValue, | ||||||||||||||||||||||||||||||||||||||
}), | ||||||||||||||||||||||||||||||||||||||
})); | ||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||
const defaultProps = { | ||||||||||||||||||||||||||||||||||||||
closeWorkspace: jest.fn(), | ||||||||||||||||||||||||||||||||||||||
promptBeforeClosing: jest.fn(), | ||||||||||||||||||||||||||||||||||||||
|
@@ -32,9 +38,22 @@ jest.mock('../create-queue-entry/hooks/useQueueLocations', () => ({ | |||||||||||||||||||||||||||||||||||||
}), | ||||||||||||||||||||||||||||||||||||||
})); | ||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||
jest.mock('@openmrs/esm-framework', () => { | ||||||||||||||||||||||||||||||||||||||
return { | ||||||||||||||||||||||||||||||||||||||
showSnackbar: jest.fn(), | ||||||||||||||||||||||||||||||||||||||
restBaseUrl: '/ws/rest/v1', | ||||||||||||||||||||||||||||||||||||||
useLayoutType: jest.fn(), | ||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||
useExtensionSlot: jest.requireActual('@openmrs/esm-framework').useExtensionSlot, | ||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||
importDynamic: jest.fn(), | ||||||||||||||||||||||||||||||||||||||
}; | ||||||||||||||||||||||||||||||||||||||
}); | ||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||
Comment on lines
+41
to
+52
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. See this PR about partial mocks - openmrs/openmrs-esm-patient-chart#1933. But I'm confused as to why these require mocking for this test case, like the restBaseUrl?
Suggested change
|
||||||||||||||||||||||||||||||||||||||
describe('QueueServiceForm', () => { | ||||||||||||||||||||||||||||||||||||||
beforeEach(() => { | ||||||||||||||||||||||||||||||||||||||
mockUseLayoutType.mockReturnValue('tablet'); | ||||||||||||||||||||||||||||||||||||||
jest.clearAllMocks(); | ||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We don't need to do this, since this is jest does this as its set in the config by default-
Suggested change
|
||||||||||||||||||||||||||||||||||||||
}); | ||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||
it('should display required error messages when form is submitted with missing fields', async () => { | ||||||||||||||||||||||||||||||||||||||
|
@@ -60,6 +79,8 @@ describe('QueueServiceForm', () => { | |||||||||||||||||||||||||||||||||||||
await user.selectOptions(serviceSelect, '6f017eb0-b035-4acd-b284-da45f5067502'); | ||||||||||||||||||||||||||||||||||||||
await user.selectOptions(locationSelect, '34567eb0-b035-4acd-b284-da45f5067502'); | ||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||
const submitButton = screen.getByText('Save'); | ||||||||||||||||||||||||||||||||||||||
await user.click(submitButton); | ||||||||||||||||||||||||||||||||||||||
expect(queueNameInput).toHaveValue('Test Queue'); | ||||||||||||||||||||||||||||||||||||||
expect(serviceSelect).toHaveValue('6f017eb0-b035-4acd-b284-da45f5067502'); | ||||||||||||||||||||||||||||||||||||||
expect(locationSelect).toHaveValue('34567eb0-b035-4acd-b284-da45f5067502'); | ||||||||||||||||||||||||||||||||||||||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we need to mock this?