File size: 758 Bytes
c7af659 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | import { describe, it, expect } from 'vitest'
import { formatMinor, isStepUpRequired } from './ledger'
import { ApiRequestError } from './client'
describe('D3 ledger client', () => {
it('formats integer minor units as SAR major units', () => {
expect(formatMinor(2550)).toBe('25.50 SAR')
expect(formatMinor(1)).toBe('0.01 SAR')
expect(formatMinor(100000)).toBe('1,000.00 SAR')
})
it('detects the 422 step_up_required challenge', () => {
const e = new ApiRequestError({ status: 422, message: 'step_up_required' })
expect(isStepUpRequired(e)).toBe(true)
expect(isStepUpRequired(new ApiRequestError({ status: 422, message: 'insufficient_funds' }))).toBe(false)
expect(isStepUpRequired(new Error('nope'))).toBe(false)
})
})
|