GuDingZiChan/frontend/scripts/test-return-scan-state.ts
WuYongJie 0dc3c09315 feat(资产与打印): 提交近期借还盘点与打印助手源码
- 提交借用单缺失异常处理、扫码借还搜索与站内消息快捷处理源码
- 提交盘点范围、多终端打印、组织同步与认证模式相关源码
- 提交 .NET/Node 打印助手及版本清单源码
2026-03-27 20:18:31 +08:00

30 lines
1.1 KiB
TypeScript

import assert from 'node:assert/strict'
import { canSubmitReturnScan, hasSelectedReturnRecord } from '../src/views/borrow/returnScanState.ts'
assert.equal(hasSelectedReturnRecord(null), false, '未选归还记录时不应允许提交')
assert.equal(hasSelectedReturnRecord(Number.NaN), false, '无效归还记录编号不应允许提交')
assert.equal(hasSelectedReturnRecord(101), true, '选中归还记录后应识别为有效选择')
assert.equal(
canSubmitReturnScan({ hasBorrowRecordInfo: true, selectedBorrowRecordId: 101, loading: false }),
true,
'已读取资产且已选归还记录时,应允许确认入库'
)
assert.equal(
canSubmitReturnScan({ hasBorrowRecordInfo: true, selectedBorrowRecordId: null, loading: false }),
false,
'未选归还记录时不应允许提交'
)
assert.equal(
canSubmitReturnScan({ hasBorrowRecordInfo: false, selectedBorrowRecordId: 101, loading: false }),
false,
'未读取资产时不应允许提交'
)
assert.equal(
canSubmitReturnScan({ hasBorrowRecordInfo: true, selectedBorrowRecordId: 101, loading: true }),
false,
'提交中不应重复点击'
)
console.log('return scan state tests: ok')