Typescript 如何编写此去盎司函数的测试?

Typescript 如何编写此去盎司函数的测试?,typescript,testing,Typescript,Testing,这里使用的测试库是,它基于和 我在测试这个debounce函数时遇到了困难,因为我是测试新手,似乎无法真正掌握要测试的内容。我试图测试结果变量是否会在去盎司期间后更新,但我尝试的任何操作似乎都不起作用(同步/等待,承诺,超时,你可以说出来) 以下是经过的,但我知道这是一个假阳性,因为expect可以是经过的任何值 去盎司: export function debounce(func: { (...args: unknown[]): void }, wait: number) { let

这里使用的测试库是,它基于和

我在测试这个
debounce
函数时遇到了困难,因为我是测试新手,似乎无法真正掌握要测试的内容。我试图测试
结果
变量是否会在
去盎司
期间后更新,但我尝试的任何操作似乎都不起作用(
同步/等待
承诺
超时
,你可以说出来)

以下是经过的,但我知道这是一个假阳性,因为expect可以是经过的任何值

去盎司:

export function debounce(func: { (...args: unknown[]): void }, wait: number) {
    let timeout: NodeJS.Timeout
  
    return function executedFunction(...args: unknown[]) {
        const later = () => {
            clearTimeout(timeout)
            func(...args)
        }
        
        clearTimeout(timeout)
        timeout = setTimeout(later, wait)
    }
}
测试:

import { expect } from '@open-wc/testing'

import { debounce } from './utils'

describe('debounce()', () => {
    it('Executes callback after wait period.', (done) => {
        const waitTime = 250
        let result = false

        debounce(() => {
            result = true
            expect(result).to.equal(true)
        }, waitTime)

        setTimeout(done, waitTime * 2)
    })
})

任何帮助都将不胜感激