const testDeparturesInDirection = async (cfg) => { const { test: t, fetchDepartures, fetchTrip, id, directionIds, when, validate, } = cfg; const res = await fetchDepartures(id, { direction: directionIds[0], when, }); const {departures: deps} = res; validate(t, res, 'departuresResponse', 'res'); for (let i = 0; i < deps.length; i++) { const dep = deps[i]; const name = `deps[${i}]`; const line = dep.line && dep.line.name; const {trip} = await fetchTrip(dep.tripId, line, { when, stopovers: true, }); t.ok(trip.stopovers.some(st => st.stop.station && directionIds.includes(st.stop.station.id) || directionIds.includes(st.stop.id), ), `trip ${dep.tripId} of ${name} has no stopover at ${directionIds.join('/')}`); } }; export { testDeparturesInDirection, };