node.js - 如何在 mocha-chai 测试中检查数组的所有元素是否具有子属性?
问题描述
我正在尝试测试来自服务器的响应。假设响应是一个数组,其元素具有一组属性,对应的值是具有其他属性的对象。
例如:
{
"array": [
{
"porp1": {
"subprop11": "a",
"subprop12": [1,2]
},
"prop2": "c",
},
{
"porp1": {
"subprop11": "h",
"subprop12": [3,2]
},
"prop2": "a",
}
]
}
我想检查数组的所有元素是否具有属性和子属性。对于第一级属性,我设法使用chai-things
:
const chai = require('chai');
chai.use(require('chai-things'));
....
res.body['array'].should.all.have.property('prop1');
res.body['array'].should.all.have.property("prop2");
如何检查元素是否具有子属性"subprop11"
和“subprop12”?
解决方案
像这样的东西似乎有效
res.body['array'].should.all.have.nested.property('prop1.subprop11');
推荐阅读
- typo3 - 如何在调度程序命令中生成前端 URI (TYPO3 9)
- android - Android - 将图像放在 ImageView 内而不跨越边界
- python - 在 Django 中发送电子邮件会引发协议异常不支持的地址系列
- python - 磁力计原始数据到恒星的方位角和高度
- javascript - 为什么我收到以下 React Native 警告:Can't perform a React state update on an unmounted component
- ilmerge - 什么导致 ilmerge 错误代码 -2146232576?
- r - 层次聚类——图上的聚类数
- jquery - Bootstrap 4 Menu:关闭顶部菜单项时关闭所有弹出菜单
- postgresql - Postgres NATURAL 作为属性表示为“自然”
- css - 为什么我的简单 CSS 滚动捕捉不起作用?