'use strict' const testArrivals = async (cfg) => { const {test: t, res, validate} = cfg const ids = cfg.ids || (cfg.id ? [cfg.id] : []) const {arrivals: arrs} = res validate(t, res, 'arrivalsResponse', 'res') for (let i = 0; i < arrs.length; i++) { let stop = arrs[i].stop let name = `res.arrivals[${i}].stop` if (stop.station) { stop = stop.station name += '.station' } t.ok( ids.includes(stop.id) || (stop.station && ids.includes(stop.station.id)), name + '.id is invalid', ) } // todo: move into arrivals validator t.same(arrs, arrs.sort((a, b) => t.when > b.when), 'res.arrivals must be sorted by .when') } module.exports = testArrivals