我想验证邮递员中的嵌套JSON模式。
这是代码。
const testSchema = {
"name": [
{
"first_name": "Alpha",
"last_name": "Bravo"
},
{
"first_name": "Charlie",
"last_name": "Delta"
},
],
"age": "23",
"color": "black"
};
const showData = {
"required": ["name", "age"],
"properties": {
"name": [
{
"required": ["first_name"]
}
],
},
};
pm.test("Nested Schema Test", function () {
pm.expect(tv4.validate(testSchema, showData)).to.be.true;
});
当前,此代码以 true 返回测试。
我无法测试“名称” 数组对象的键。
即使通过此操作
"required": ["fst_nae"] //wrong key name
它返回true。
答案 0 :(得分:0)
我可以通过以下方式轻松进行检查:
pm.test("your name", function () {
pm.expect(testSchema.name[0].first_name && testSchema.name[1].first_name
).to.eql('Alpha' && 'Charlie')
});
,您就成功验证了这些字段 或使用此期望来组织您选择的代码
答案 1 :(得分:0)
微小的验证程序,即tv4.validate
的库中有问题。另一种选择是使用AJV
(您可以在github上搜索它)。