Files

6 lines
625 B
TypeScript

import { test } from 'node:test'
import { strict as assert } from 'node:assert'
import { unwrap, nextStatus } from '../src/contract.ts'
test('HTTP 200 envelopes still reject unauthenticated and forbidden operations',()=>{assert.equal(unwrap({code:200,msg:'ok',data:3}),3); for(let code of [401,403,409]) assert.throws(()=>unwrap({code,msg:'拒绝',data:null}), /拒绝/)})
test('task actions follow pending accepted completed sequence',()=>{assert.equal(nextStatus('pending'),'accepted');assert.equal(nextStatus('accepted'),'completed');assert.equal(nextStatus('completed'),null);assert.equal(nextStatus('cancelled'),null)})