Подсчет объектов в массиве в объекте во Фрисби
Я начинаю изучать FrisbyJS и пытаюсь сделать некоторые утверждения.
Я получаю JSON, который выглядит так
[
{
"articles": [
{
"article": "123-123002",
"updated": "2016-10-20T14:57:25",
"sourced balance": [],
"balance": "50.00"
},
{
"article": "100-123001",
"updated": "2016-10-20T14:41:36",
"sourced balance": [],
"balance": "10.00"
}
],
"DistrictID": [],
"WarehouseID": "SebastiansWarehouse",
"SourceID": "1234",
"City": "Stockholm",
"WarehouseName": "Sebastians Warehouse",
"WarehouseType": "STORE"
}
]
И я хочу: 1. подсчитать количество объектов статьи 2. проверить, что число X в массиве статей имеет переменную со значением "123-123002"
Как я могу сделать это во Фрисби?
Мой код в настоящее время:
var frisby = require('frisby');
frisby.create('Mekonomen RIF1')
.get('https://10.254.8.67:9443/INTERSHOP/rest/WFS/Mekonomen-MekB2BSE-Site/-/availability/sources/1234/warehouses/SebastiansWarehouse/products/',{ strictSSL: false})
.expectStatus(200)
.expectHeaderContains('content-type', 'application/json')
.expectJSON('?',{
articles: [],
DistrictID: [],
WarehouseID: "SebastiansWarehouse",
SourceID: '1234',
City: "Stockholm",
WarehouseName: "Sebastians Warehouse",
WarehouseType: "STORE"
}
)
.expectJSON('?.articles',{
articles: [],
DistrictID: [],
WarehouseID: "SebastiansWarehouse",
SourceID: '1234',
City: "Stockholm",
WarehouseName: "Sebastians Warehouse",
WarehouseType: "STORE"
}
)
.expectMaxResponseTime(500)
.toss();
1 ответ
Вы можете включить
.afterJSON(json){
//json.articles can be asserted here
//some more assertion on the response
}
который проанализирует ответ и отправит его в качестве аргумента, который может быть утвержден с использованием простых условий JavaScript, операторов, циклов и т. д.