mirror of
https://github.com/CompassConnections/Compass.git
synced 2026-04-02 05:54:24 -04:00
39 lines
1.1 KiB
TypeScript
39 lines
1.1 KiB
TypeScript
jest.mock('common/geodb')
|
|
|
|
import {AuthedUser} from 'api/helpers/endpoint'
|
|
import {searchLocationEndpoint} from 'api/search-location'
|
|
import * as geodbModules from 'common/geodb'
|
|
|
|
describe('searchLocation', () => {
|
|
beforeEach(() => {
|
|
jest.resetAllMocks()
|
|
})
|
|
afterEach(() => {
|
|
jest.restoreAllMocks()
|
|
})
|
|
|
|
describe('when given valid input', () => {
|
|
it('should return search location', async () => {
|
|
const mockBody = {
|
|
term: 'mockTerm',
|
|
limit: 15,
|
|
}
|
|
const mockAuth = {uid: '321'} as AuthedUser
|
|
const mockReq = {} as any
|
|
const mockReturn = 'Pass'
|
|
|
|
;(geodbModules.geodbFetch as jest.Mock).mockResolvedValue(mockReturn)
|
|
|
|
const result = await searchLocationEndpoint(mockBody, mockAuth, mockReq)
|
|
|
|
expect(result).toBe(mockReturn)
|
|
expect(geodbModules.geodbFetch).toBeCalledTimes(1)
|
|
expect(geodbModules.geodbFetch).toBeCalledWith(
|
|
expect.stringContaining(
|
|
`/cities?namePrefix=${mockBody.term}&limit=${mockBody.limit}&offset=0&sort=-population`,
|
|
),
|
|
)
|
|
})
|
|
})
|
|
})
|