【发布时间】:2017-04-24 22:08:44
【问题描述】:
我有两个对象,我想使用 Jest 测试递归相等性。这很简单:
test('should be recursively equal', () => {
const test = { x: 0, y: 0 }
const expected = { x: 0, y: 0 }
expect(test).toEqual(expected)
})
但是在某些情况下会出现问题;如您所知,JavaScript 计算浮点数非常糟糕,因此有时测试会变成以下内容:
test('should be recursively equal', () => {
const test = { x: 0.00000000001, y: 0 }
const expected = { x: 0, y: 0 }
expect(test).toEqual(expected)
})
而且它不再起作用了。 Jest 提供了toBeCloseTo 测试,它接受一个数字和一个精度作为参数,但我想知道是否存在递归等式的等价物(类似于toEqualCloseTo)。
【问题讨论】:
标签: javascript object testing numbers jestjs