Files
Veyra/apps/mobile/tests/money.test.ts
T
Blizzard 92329ddce2
Checks / verify (push) Failing after 9m52s
feat: 完成模拟交易闭环、App 与 A 股行情接入
统一单入口 Go 工程与前端依赖目录,增加后台供应商配置、候选审核、计划预算、成交冲正、持仓复盘和站内通知。接入策略版本、Python 回测、可配置 A 股公开行情及 zap 文件轮转日志,补充迁移、契约与验证。
2026-10-08 22:58:52 +08:00

14 lines
734 B
TypeScript

import {test} from "node:test"
import assert from "node:assert/strict"
import {formatMoney,validInitialCash} from "../src/lib/money.ts"
test("cash formatting preserves cents without floating point",()=>{
assert.equal(formatMoney("100000.01"),"100,000.01")
assert.equal(formatMoney("9007199254740993.09"),"9,007,199,254,740,993.09")
assert.equal(formatMoney(null),"未知")
assert.equal(formatMoney("invalid"),"数据异常")
})
test("initial cash validates decimal limits exactly",()=>{
for(const value of ["0.01","100000.01","1000000000.00"])assert.equal(validInitialCash(value),true,value)
for(const value of ["0","0.00","-1","1e4","1.001","1000000000.01","",".1"," 10"]){assert.equal(validInitialCash(value),false,value)}
})