chore: sync submodule state (parent ref update)
Made-with: Cursor
This commit is contained in:
41
frontend/libs/frontend-api-client/client.test.ts
Normal file
41
frontend/libs/frontend-api-client/client.test.ts
Normal file
@@ -0,0 +1,41 @@
|
||||
import { describe, it, expect, vi, beforeEach } from 'vitest'
|
||||
|
||||
const mockGet = vi.fn()
|
||||
vi.mock('axios', () => ({
|
||||
default: {
|
||||
create: () => ({
|
||||
get: mockGet,
|
||||
interceptors: {
|
||||
request: { use: vi.fn(), eject: vi.fn() },
|
||||
response: { use: vi.fn(), eject: vi.fn() },
|
||||
},
|
||||
}),
|
||||
},
|
||||
}))
|
||||
|
||||
describe('createApiClient getSafe', () => {
|
||||
beforeEach(() => {
|
||||
mockGet.mockReset()
|
||||
})
|
||||
|
||||
it('returns { ok: false, data: null } when response status is 404', async () => {
|
||||
const { createApiClient } = await import('./client')
|
||||
mockGet.mockResolvedValue({ status: 404, data: { error: 'Not found' } })
|
||||
|
||||
const client = createApiClient('http://test')
|
||||
const result = await client.getSafe<unknown>('/api/v1/transactions/138/0xabc')
|
||||
|
||||
expect(result).toEqual({ ok: false, data: null })
|
||||
})
|
||||
|
||||
it('returns { ok: true, data } when response status is 200 and body has data', async () => {
|
||||
const { createApiClient } = await import('./client')
|
||||
mockGet.mockResolvedValue({ status: 200, data: { data: { hash: '0x123' } } })
|
||||
|
||||
const client = createApiClient('http://test')
|
||||
const result = await client.getSafe<{ hash: string }>('/api/v1/transactions/138/0x123')
|
||||
|
||||
expect(result.ok).toBe(true)
|
||||
expect(result.data).toEqual({ hash: '0x123' })
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user