我有一个工作函数可以在我的应用中构建一个新的Blob()
_buildBlobForProperties(app): Blob {
return new Blob(
[
JSON.stringify({
name: app.name,
description: app.description,
}),
],
{
type: 'application/json',
}
);
}
我有以下测试:
it('should return properties for update',() => {
const blob: Blob = appService._buildBlobForProperties(app);
expect(blob.text()).toBe(updateBlob.text());
});
这个测试在Jasmin/Karma中运行良好,但是当将测试迁移到jest时,我得到:
TypeError: blob.text is not a function
当我打印返回Blob的内容时
console.log
---> Blob {}
有什么建议吗?
2条答案
按热度按时间9o685dep1#
Jest测试环境对
Blob
对象的支持不是很好,参见issue#2555,我建议你使用blob-polyfill包来全局修补测试环境中的Blob
对象,这样无论testEnvironment是jsdom
还是node
测试环境,你的测试用例都可以通过。service.ts
:service.test.ts
:jest.config.js
:测试结果:
软件包版本:
uqjltbpv2#
您可以测试Blob的调用方式。