提交
This commit is contained in:
1 parent
cdaa0ac273
commit
b7cd657f32
32 files changed
+2885
-1936
No files matched your search
@@ -0,0 +1,38 @@
|
||||
import assert from 'node:assert/strict'
|
||||
import {
|
||||
resolvePaymentPreset,
|
||||
getActiveSampleCount,
|
||||
isInstallmentPayMode,
|
||||
isPayModeValidForSampleCount
|
||||
} from '../src/utils/protocol-payment-presets'
|
||||
|
||||
const fq1 = resolvePaymentPreset(1, 'fq')!
|
||||
assert.equal(fq1.contractAmount, 25880)
|
||||
assert.deepEqual(fq1.installmentAmounts, [6480, 3880, 3880, 3880, 3880, 3880])
|
||||
assert.equal(
|
||||
fq1.installmentAmounts!.reduce((s, v) => s + v, 0),
|
||||
fq1.contractAmount
|
||||
)
|
||||
|
||||
const djfq2 = resolvePaymentPreset(2, 'djfq')!
|
||||
assert.equal(djfq2.contractAmount, 41000)
|
||||
assert.equal(djfq2.installmentCount, 4)
|
||||
assert.deepEqual(djfq2.installmentAmounts, [29360, 3880, 3880, 3880])
|
||||
assert.equal(
|
||||
djfq2.installmentAmounts!.reduce((s, v) => s + v, 0),
|
||||
djfq2.contractAmount
|
||||
)
|
||||
|
||||
assert.equal(getActiveSampleCount([{ sampleStatus: 'ycj' }]), 1)
|
||||
assert.equal(getActiveSampleCount([{ sampleStatus: 'ycj' }, { sampleStatus: 'yzf' }]), 1)
|
||||
assert.equal(
|
||||
getActiveSampleCount([{ sampleStatus: 'ycj' }, { sampleStatus: 'ycj' }]),
|
||||
2
|
||||
)
|
||||
|
||||
assert.equal(isInstallmentPayMode('djfq'), true)
|
||||
assert.equal(isInstallmentPayMode('dj'), false)
|
||||
assert.equal(isPayModeValidForSampleCount('djfq', 1), false)
|
||||
assert.equal(isPayModeValidForSampleCount('djfq', 2), true)
|
||||
|
||||
console.log('protocol-payment-presets: OK')
|
||||
Reference in new issue
Block a user