Newer
Older
import toJson from 'enzyme-to-json'
import React from 'react'
import {
createMockEcolyoStore,
mockGlobalState,
} from '../../../../tests/__mocks__/store'
jest.mock('cozy-ui/transpiled/react/I18n', () => ({
useI18n: jest.fn(() => ({
t: (str: string) => str,
})),
}))
describe('StepAddress component', () => {
it('should be rendered correctly', () => {
const wrapper = mount(
<Provider store={store}>
<StepAddress
onChange={mockHandleChange}
/>
</Provider>
)
expect(toJson(wrapper)).toMatchSnapshot()
})
it('should change address value', () => {
const wrapper = mount(
<Provider store={store}>
<StepAddress
onChange={mockHandleChange}
/>
</Provider>
)
wrapper.find('#address').first().simulate('change')
expect(mockHandleChange).toHaveBeenCalledWith('address', '')
})
it('should change zipCode value', () => {
const wrapper = mount(
<Provider store={store}>
<StepAddress
onChange={mockHandleChange}
/>
</Provider>
)
wrapper.find('#zipCode').first().simulate('change')
expect(mockHandleChange).toHaveBeenCalledWith('zipCode', '', 5)
})
it('should have an existing zipCode value', () => {
const wrapper = mount(
<Provider store={store}>
<StepAddress
sgeState={{ ...mockGlobalState.sgeConnect, zipCode: 69200 }}
onChange={mockHandleChange}
/>
</Provider>
)
expect(wrapper.find('#zipCode').first().props().value).toBe(69200)
})
it('should change city value', () => {
const wrapper = mount(
<Provider store={store}>
<StepAddress
onChange={mockHandleChange}
/>
</Provider>
)
wrapper.find('#city').first().simulate('change')
expect(mockHandleChange).toHaveBeenCalledWith('city', '')
})
})