amanpay / web /src /api /ledger.test.ts
MHamdan's picture
CI deploy 2550795 (part 2)
c7af659 verified
Raw
History Blame Contribute Delete
758 Bytes
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)
})
})