diff --git a/test/fixtures/bvg-journey.js b/test/fixtures/bvg-journey.js index d66fe6c0..28efc8ff 100644 --- a/test/fixtures/bvg-journey.js +++ b/test/fixtures/bvg-journey.js @@ -31,10 +31,10 @@ module.exports = { regional: false } }, - arrival: null, + arrival: '2019-08-18T14:16:00+02:00', plannedArrival: '2019-08-18T14:16:00+02:00', arrivalDelay: null, - departure: null, + departure: '2019-08-18T14:06:00+02:00', plannedDeparture: '2019-08-18T14:06:00+02:00', departureDelay: null, public: true, diff --git a/test/fixtures/bvg-radar.js b/test/fixtures/bvg-radar.js index d1857e2a..9bd8995c 100644 --- a/test/fixtures/bvg-radar.js +++ b/test/fixtures/bvg-radar.js @@ -50,7 +50,7 @@ module.exports = [ arrivalDelay: null, arrivalPlatform: null, plannedArrivalPlatform: null, - departure: null, + departure: '2019-08-19T20:26:00+02:00', plannedDeparture: '2019-08-19T20:26:00+02:00', departureDelay: null, departurePlatform: null, @@ -1930,7 +1930,7 @@ module.exports = [ arrivalDelay: null, arrivalPlatform: null, plannedArrivalPlatform: null, - departure: null, + departure: '2019-08-19T20:25:00+02:00', plannedDeparture: '2019-08-19T20:25:00+02:00', departureDelay: null, departurePlatform: null, diff --git a/test/fixtures/vbb-departures.js b/test/fixtures/vbb-departures.js index cc1c3047..f5f4aa00 100644 --- a/test/fixtures/vbb-departures.js +++ b/test/fixtures/vbb-departures.js @@ -427,7 +427,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:31:00+02:00', plannedArrival: '2019-08-19T20:31:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -459,7 +459,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:33:00+02:00', plannedArrival: '2019-08-19T20:33:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -491,7 +491,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:35:00+02:00', plannedArrival: '2019-08-19T20:35:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -523,7 +523,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:36:00+02:00', plannedArrival: '2019-08-19T20:36:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -555,7 +555,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:38:00+02:00', plannedArrival: '2019-08-19T20:38:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -587,7 +587,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:40:00+02:00', plannedArrival: '2019-08-19T20:40:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -619,7 +619,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:41:00+02:00', plannedArrival: '2019-08-19T20:41:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -651,7 +651,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:42:00+02:00', plannedArrival: '2019-08-19T20:42:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1089,7 +1089,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:32:00+02:00', plannedArrival: '2019-08-19T20:32:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1121,7 +1121,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:34:00+02:00', plannedArrival: '2019-08-19T20:34:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1153,7 +1153,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:35:00+02:00', plannedArrival: '2019-08-19T20:35:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1185,7 +1185,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:37:00+02:00', plannedArrival: '2019-08-19T20:37:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1217,7 +1217,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:38:00+02:00', plannedArrival: '2019-08-19T20:38:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1249,7 +1249,7 @@ module.exports = [ regional: true } }, - arrival: null, + arrival: '2019-08-19T20:40:00+02:00', plannedArrival: '2019-08-19T20:40:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1281,7 +1281,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:41:00+02:00', plannedArrival: '2019-08-19T20:41:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1313,7 +1313,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:43:00+02:00', plannedArrival: '2019-08-19T20:43:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1345,7 +1345,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:45:00+02:00', plannedArrival: '2019-08-19T20:45:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1377,7 +1377,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:46:00+02:00', plannedArrival: '2019-08-19T20:46:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1409,7 +1409,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:47:00+02:00', plannedArrival: '2019-08-19T20:47:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1847,7 +1847,7 @@ module.exports = [ regional: true } }, - arrival: null, + arrival: '2019-08-19T20:32:00+02:00', plannedArrival: '2019-08-19T20:32:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1880,7 +1880,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:34:00+02:00', plannedArrival: '2019-08-19T20:34:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1913,7 +1913,7 @@ module.exports = [ regional: true } }, - arrival: null, + arrival: '2019-08-19T20:36:00+02:00', plannedArrival: '2019-08-19T20:36:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1946,7 +1946,7 @@ module.exports = [ regional: true } }, - arrival: null, + arrival: '2019-08-19T20:39:00+02:00', plannedArrival: '2019-08-19T20:39:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -1979,7 +1979,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:42:00+02:00', plannedArrival: '2019-08-19T20:42:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2011,7 +2011,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:44:00+02:00', plannedArrival: '2019-08-19T20:44:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2043,7 +2043,7 @@ module.exports = [ regional: true } }, - arrival: null, + arrival: '2019-08-19T20:46:00+02:00', plannedArrival: '2019-08-19T20:46:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2075,7 +2075,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:48:00+02:00', plannedArrival: '2019-08-19T20:48:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2107,7 +2107,7 @@ module.exports = [ regional: true } }, - arrival: null, + arrival: '2019-08-19T20:50:00+02:00', plannedArrival: '2019-08-19T20:50:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2139,7 +2139,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:52:00+02:00', plannedArrival: '2019-08-19T20:52:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2171,7 +2171,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:54:00+02:00', plannedArrival: '2019-08-19T20:54:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2203,7 +2203,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:57:00+02:00', plannedArrival: '2019-08-19T20:57:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2235,7 +2235,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T20:59:00+02:00', plannedArrival: '2019-08-19T20:59:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2267,7 +2267,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T21:01:00+02:00', plannedArrival: '2019-08-19T21:01:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2299,7 +2299,7 @@ module.exports = [ regional: false } }, - arrival: null, + arrival: '2019-08-19T21:05:00+02:00', plannedArrival: '2019-08-19T21:05:00+02:00', arrivalDelay: null, arrivalPlatform: null, @@ -2331,7 +2331,7 @@ module.exports = [ regional: true } }, - arrival: null, + arrival: '2019-08-19T21:07:00+02:00', plannedArrival: '2019-08-19T21:07:00+02:00', arrivalDelay: null, arrivalPlatform: null, diff --git a/test/lib/validators.js b/test/lib/validators.js index d867b7fc..83121a09 100644 --- a/test/lib/validators.js +++ b/test/lib/validators.js @@ -123,6 +123,12 @@ const createValidateStopover = (cfg) => { val.date(val, s.plannedDeparture, name + '.plannedDeparture') assertValidWhen(s.plannedDeparture, cfg.when, name + '.plannedDeparture') } + if (is(s.plannedArrival) && !is(s.arrival)) { + a.fail(name + ' has .plannedArrival but not .arrival') + } + if (is(s.plannedDeparture) && !is(s.departure)) { + a.fail(name + ' has .plannedDeparture but not .departure') + } if (is(s.arrivalDelay)) { const msg = name + '.arrivalDelay must be a number' @@ -157,6 +163,12 @@ const createValidateStopover = (cfg) => { a.strictEqual(typeof s.plannedDeparturePlatform, 'string', msg + 'be a string') a.ok(s.plannedDeparturePlatform, msg + 'not be empty') } + if (is(s.plannedArrivalPlatform) && !is(s.arrivalPlatform)) { + a.fail(name + ' has .plannedArrivalPlatform but not .arrivalPlatform') + } + if (is(s.plannedDeparturePlatform) && !is(s.departurePlatform)) { + a.fail(name + ' has .plannedDeparturePlatform but not .departurePlatform') + } anyOf(['stop', 'station'], val, s.stop, name + '.stop') }