mirror of
https://github.com/public-transport/db-vendo-client.git
synced 2025-02-22 22:59:35 +02:00
reproduce #301: leg of an overnight journey completely within the next day ✅
Co-Authored-By: Jannis R <mail@jannisr.de>
This commit is contained in:
parent
eec06ba81a
commit
8a17401693
3 changed files with 5360 additions and 0 deletions
47
test/db-journey-overnight.js
Normal file
47
test/db-journey-overnight.js
Normal file
|
@ -0,0 +1,47 @@
|
|||
// todo: use import assertions once they're supported by Node.js & ESLint
|
||||
// https://github.com/tc39/proposal-import-assertions
|
||||
import {createRequire} from 'module'
|
||||
const require = createRequire(import.meta.url)
|
||||
|
||||
import tap from 'tap'
|
||||
|
||||
import {createClient} from '../index.js'
|
||||
import {profile as rawProfile} from '../p/db/index.js'
|
||||
const res0 = require('./fixtures/db-journey-overnight-0.json')
|
||||
const expected0 = require('./fixtures/db-journey-overnight-0.expected.json')
|
||||
|
||||
const client = createClient(rawProfile, 'public-transport/hafas-client:test')
|
||||
const {profile} = client
|
||||
|
||||
const baseOpt = {
|
||||
results: null,
|
||||
via: null,
|
||||
stopovers: false,
|
||||
transfers: -1,
|
||||
transferTime: 0,
|
||||
accessibility: 'none',
|
||||
bike: false,
|
||||
walkingSpeed: 'normal',
|
||||
startWithWalking: true,
|
||||
tickets: true,
|
||||
polylines: true,
|
||||
remarks: true,
|
||||
scheduledDays: false,
|
||||
products: {},
|
||||
}
|
||||
|
||||
tap.test('parses a journey across day with correct timestamps', (t) => {
|
||||
const opt = {
|
||||
...baseOpt,
|
||||
results: 4,
|
||||
stopovers: true,
|
||||
departure: '2023-11-13T22:00:00+01:00',
|
||||
}
|
||||
|
||||
const common = profile.parseCommon({profile, opt, res: res0})
|
||||
const ctx = {profile, opt, common, res: res0}
|
||||
const journey = profile.parseJourney(ctx, res0.outConL[16])
|
||||
|
||||
t.same(journey, expected0)
|
||||
t.end()
|
||||
})
|
198
test/fixtures/db-journey-overnight-0.expected.json
vendored
Normal file
198
test/fixtures/db-journey-overnight-0.expected.json
vendored
Normal file
|
@ -0,0 +1,198 @@
|
|||
{
|
||||
"type": "journey",
|
||||
"legs": [
|
||||
{
|
||||
"origin": {
|
||||
"type": "stop",
|
||||
"id": "8000193",
|
||||
"name": "Kassel Hbf",
|
||||
"location": {
|
||||
"type": "location",
|
||||
"id": "8000193",
|
||||
"latitude": 51.31832,
|
||||
"longitude": 9.489903
|
||||
},
|
||||
"products": {
|
||||
"nationalExpress": false,
|
||||
"national": false,
|
||||
"regionalExpress": false,
|
||||
"regional": true,
|
||||
"suburban": true,
|
||||
"bus": true,
|
||||
"ferry": false,
|
||||
"subway": false,
|
||||
"tram": true,
|
||||
"taxi": false
|
||||
}
|
||||
},
|
||||
"destination": {
|
||||
"type": "stop",
|
||||
"id": "8003200",
|
||||
"name": "Kassel-Wilhelmshöhe",
|
||||
"location": {
|
||||
"type": "location",
|
||||
"id": "8003200",
|
||||
"latitude": 51.312998,
|
||||
"longitude": 9.446845
|
||||
},
|
||||
"products": {
|
||||
"nationalExpress": true,
|
||||
"national": true,
|
||||
"regionalExpress": true,
|
||||
"regional": true,
|
||||
"suburban": true,
|
||||
"bus": true,
|
||||
"ferry": false,
|
||||
"subway": false,
|
||||
"tram": true,
|
||||
"taxi": false
|
||||
}
|
||||
},
|
||||
"departure": "2023-11-13T22:14:00+01:00",
|
||||
"plannedDeparture": "2023-11-13T22:14:00+01:00",
|
||||
"departureDelay": null,
|
||||
"arrival": "2023-11-13T22:21:00+01:00",
|
||||
"plannedArrival": "2023-11-13T22:21:00+01:00",
|
||||
"arrivalDelay": null,
|
||||
"public": true,
|
||||
"walking": true,
|
||||
"distance": null,
|
||||
"transfer": true
|
||||
},
|
||||
{
|
||||
"origin": {
|
||||
"type": "stop",
|
||||
"id": "8003200",
|
||||
"name": "Kassel-Wilhelmshöhe",
|
||||
"location": {
|
||||
"type": "location",
|
||||
"id": "8003200",
|
||||
"latitude": 51.312998,
|
||||
"longitude": 9.446845
|
||||
},
|
||||
"products": {
|
||||
"nationalExpress": true,
|
||||
"national": true,
|
||||
"regionalExpress": true,
|
||||
"regional": true,
|
||||
"suburban": true,
|
||||
"bus": true,
|
||||
"ferry": false,
|
||||
"subway": false,
|
||||
"tram": true,
|
||||
"taxi": false
|
||||
}
|
||||
},
|
||||
"destination": {
|
||||
"type": "stop",
|
||||
"id": "8000147",
|
||||
"name": "Hamburg-Harburg",
|
||||
"location": {
|
||||
"type": "location",
|
||||
"id": "8000147",
|
||||
"latitude": 0,
|
||||
"longitude": 0
|
||||
},
|
||||
"products": {
|
||||
"nationalExpress": true,
|
||||
"national": true,
|
||||
"regionalExpress": true,
|
||||
"regional": true,
|
||||
"suburban": true,
|
||||
"bus": true,
|
||||
"ferry": false,
|
||||
"subway": false,
|
||||
"tram": false,
|
||||
"taxi": false
|
||||
}
|
||||
},
|
||||
"departure": "2023-11-13T22:21:00+01:00",
|
||||
"plannedDeparture": "2023-11-13T22:21:00+01:00",
|
||||
"departureDelay": null,
|
||||
"arrival": "2023-11-14T01:22:00+01:00",
|
||||
"plannedArrival": "2023-11-14T01:22:00+01:00",
|
||||
"arrivalDelay": null,
|
||||
"reachable": true,
|
||||
"tripId": "1|202739|0|80|-1",
|
||||
"line": {
|
||||
"type": "line",
|
||||
"id": "ice-592",
|
||||
"fahrtNr": null,
|
||||
"name": "ICE 592",
|
||||
"public": true,
|
||||
"productName": "ICE"
|
||||
},
|
||||
"direction": null,
|
||||
"arrivalPlatform": null,
|
||||
"plannedArrivalPlatform": null,
|
||||
"arrivalPrognosisType": null,
|
||||
"departurePlatform": "1",
|
||||
"plannedDeparturePlatform": "1",
|
||||
"departurePrognosisType": null
|
||||
},
|
||||
{
|
||||
"origin": {
|
||||
"type": "stop",
|
||||
"id": "8000147",
|
||||
"name": "Hamburg-Harburg",
|
||||
"location": {
|
||||
"type": "location",
|
||||
"id": "8000147",
|
||||
"latitude": 0,
|
||||
"longitude": 0
|
||||
},
|
||||
"products": {
|
||||
"nationalExpress": true,
|
||||
"national": true,
|
||||
"regionalExpress": true,
|
||||
"regional": true,
|
||||
"suburban": true,
|
||||
"bus": true,
|
||||
"ferry": false,
|
||||
"subway": false,
|
||||
"tram": false,
|
||||
"taxi": false
|
||||
}
|
||||
},
|
||||
"destination": {
|
||||
"type": "stop",
|
||||
"id": "8002549",
|
||||
"name": "Hamburg Hbf",
|
||||
"location": {
|
||||
"type": "location",
|
||||
"id": "8002549",
|
||||
"latitude": 0,
|
||||
"longitude": 0
|
||||
},
|
||||
"products": {
|
||||
"nationalExpress": true,
|
||||
"national": true,
|
||||
"regionalExpress": true,
|
||||
"regional": true,
|
||||
"suburban": true,
|
||||
"bus": true,
|
||||
"ferry": false,
|
||||
"subway": true,
|
||||
"tram": false,
|
||||
"taxi": false
|
||||
}
|
||||
},
|
||||
"departure": "2023-11-14T01:22:00+01:00",
|
||||
"plannedDeparture": "2023-11-14T01:22:00+01:00",
|
||||
"departureDelay": null,
|
||||
"arrival": "2023-11-14T01:42:00+01:00",
|
||||
"plannedArrival": "2023-11-14T01:42:00+01:00",
|
||||
"arrivalDelay": null,
|
||||
"public": true,
|
||||
"walking": true,
|
||||
"distance": null,
|
||||
"transfer": true
|
||||
}
|
||||
],
|
||||
"refreshToken": "D$A=1@O=Kassel Hbf@L=8000193@a=0@$A=1@O=Kassel-Wilhelmshöhe@L=8003200@a=0@$202311132214$202311132221$$$1$$$$$$§T$A=1@O=Kassel-Wilhelmshöhe@L=8003200@a=0@$A=1@O=Hamburg-Harburg@L=8000147@a=0@$202311132221$202311140122$ICE 592$$1$$$$$$§D$A=1@O=Hamburg-Harburg@L=8000147@a=0@$A=1@O=Hamburg Hbf@L=8002549@a=0@$202311140122$202311140142$$$1$$$$$$",
|
||||
"price": {
|
||||
"amount": 55.9,
|
||||
"currency": "EUR",
|
||||
"hint": null
|
||||
}
|
||||
}
|
5115
test/fixtures/db-journey-overnight-0.json
vendored
Normal file
5115
test/fixtures/db-journey-overnight-0.json
vendored
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Reference in a new issue