const simplify = j => j.legs.map(l => { return { origin: l.origin, destination: l.destination, departure: l.plannedDeparture || l.departure, arrival: l.plannedArrival || l.arrival, line: l.line, }; }); const testRefreshJourney = async (cfg) => { const { test: t, fetchJourneys, refreshJourney, validate, fromId, toId, when, } = cfg; const modelRes = await fetchJourneys(fromId, toId, { results: 1, departure: when, stopovers: false, }); validate(t, modelRes, 'journeysResult', 'modelRes'); const [model] = modelRes.journeys; // todo: move to journeys validator? t.equal(typeof model.refreshToken, 'string'); t.ok(model.refreshToken); const refreshedRes = await refreshJourney(model.refreshToken, { stopovers: false, }); validate(t, refreshedRes, 'refreshJourneyResult', 'refreshedRes'); const refreshed = refreshedRes.journey; t.same(simplify(refreshed), simplify(model)); }; export { testRefreshJourney, };