如何在JavaScript中模拟一个大尺寸的文件进行测试?

问题描述 投票:1回答:1

我已经为我的上传组件实现了一个测试用例,它显示错误,如果 file.size 超过1 mb。

有什么办法可以让猴子补丁文件大小与 jest 还是只用js来获得测试失败,而不像这样创建文件?

const file = new File(
  [new Blob(['1'.repeat(1024 * 1024 + 1)], { type: 'image/png' })],
  'darthvader.png'
)
javascript file jest
1个回答
1
投票

你可以简单地使用 Object.defineProperty 来覆盖原来的getter,这是可以配置的。

const file = new File([""], 'darthvader.png');
Object.defineProperty(file, 'size', { value: 1024 * 1024 + 1 })
console.log( file.size ); // 1048577
© www.soinside.com 2019 - 2024. All rights reserved.