如何测试componentDIdMount中的Condition是否使用Jest而不会出现类型错误?

问题描述

我正在尝试使用条件语句测试具有"type": "FeatureCollection","features": [ { "type": "Feature","properties": { "Name": "E2","Description": "E2 postcode district" },"geometry": { "type": "Polygon","coordinates": [ [ [ -0.043850,51.531790 ],[ -0.043240,51.531550 ],[ -0.042770,51.531530 ],[ -0.041630,51.531100 ],[ -0.041500,51.530730 ],51.530700 ],[ -0.041420,51.530570 ],[ -0.040890,51.530150 ],[ -0.040870,51.530130 ],[ -0.040460,51.529650 ],51.529580 ],[ -0.040520,51.529410 ],方法的React组件。我对componentDidMount方法的测试很容易通过。我只是想覆盖这种情况。

这是要测试的实际文件中的条件。

componentDidMount

这是对const GRANT_WRITER_ROLE = 19; componentDidMount() { const { token } = this.props; const permissionData = new PermissionsUtility(token); const { permissions } = permissionData; const allEntityIds = []; const grantWriterEntityIds = []; permissions.sort().forEach((org) => { const [entityId,orgIdentifier,roleId] = org.split(':'); allEntityIds.push(entityId); if (parseInt(roleId) === GRANT_WRITER_ROLE) { const [orgId,programId,subOrgId] = orgIdentifier.split('_'); grantWriterEntityIds.push({ hideOrgId: orgId,hideProgramId: programId,hideSubOrgId: subOrgId,}); } }); }的测试,我正在测试以查看我从componentDidMount返回的roleId是否等于promise

GRANT_WRITER_ROLE
执行此命令时,我得到一个describe('Test ComponentDidMount',() => { it('it executes componentDidMount',() => { const wrapper = shallow( < _Grants { ...props } />); wrapper.instance().componentDidMount(); }); it('it tests permissions',() => { const PermissionsUtility = jest .fn() .mockImplementationOnce(() => Promise.resolve([{ roleId: 19 }])); PermissionsUtility.forEach((utiltiy) => { const [{roleId}] = utiltiy; expect(roleId).toBe(GRANT_WRITER_ROLE); }) }) })
TypeError

我认为错误在于我正在执行的承诺中吗?

如何为TypeError: PermissionsUtility.forEach is not a function 240 | .mockImplementationOnce(() => Promise.resolve([{roleId: 19}])); 241 | > 242 | PermissionsUtility.forEach((utiltiy) => { | ^ 243 | const [{roleId}] = utiltiy; 244 | expect(roleId).toBe(GRANT_WRITER_ROLE); 245 | })条件编写测试?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...