lewan 发货强制 expectedUid 并取消无 UID 旧路径回落;任务详情展示 UID 匹配态;领取页匹配后可一键兑换;补充 identity 单测并收口短链说明。
29 lines
1.4 KiB
TypeScript
29 lines
1.4 KiB
TypeScript
import test from 'node:test'
|
|
import assert from 'node:assert/strict'
|
|
|
|
import {
|
|
TASK_STATUS,
|
|
canRedeemKuaishouCloudClaimStatus,
|
|
canTaskTransition,
|
|
isClaimInactiveTaskStatus,
|
|
isOpen91FailedTaskStatus,
|
|
shouldEnsureKuaishouCloudClaimLink,
|
|
} from './task-status.js'
|
|
|
|
test('任务状态机声明 kuaishou-lewan 主流程跳转', () => {
|
|
assert.equal(canTaskTransition(TASK_STATUS.PENDING_BINDING_PREPARE, TASK_STATUS.WAITING_BINDING), true)
|
|
assert.equal(canTaskTransition(TASK_STATUS.WAITING_BINDING, TASK_STATUS.ROLE_CONFIRMED), true)
|
|
assert.equal(canTaskTransition(TASK_STATUS.ROLE_CONFIRMED, TASK_STATUS.REDEEMING), true)
|
|
assert.equal(canTaskTransition(TASK_STATUS.REDEEMING, TASK_STATUS.DISPATCHED_PENDING_RETURN), true)
|
|
assert.equal(canTaskTransition(TASK_STATUS.DISPATCHED_PENDING_RETURN, TASK_STATUS.COMPLETED), true)
|
|
})
|
|
|
|
test('任务状态机收敛领取和 91 查询的业务判断', () => {
|
|
assert.equal(shouldEnsureKuaishouCloudClaimLink(TASK_STATUS.PENDING_BINDING_PREPARE), true)
|
|
assert.equal(canRedeemKuaishouCloudClaimStatus(TASK_STATUS.ROLE_CONFIRMED), true)
|
|
assert.equal(canRedeemKuaishouCloudClaimStatus(TASK_STATUS.WAITING_BINDING), true)
|
|
assert.equal(canRedeemKuaishouCloudClaimStatus(TASK_STATUS.LINK_GENERATED), false)
|
|
assert.equal(isClaimInactiveTaskStatus(TASK_STATUS.MANUAL_REVIEW), true)
|
|
assert.equal(isOpen91FailedTaskStatus(TASK_STATUS.CLOSED), true)
|
|
})
|