db-vendo-client/test/db-journey-tzoffset-0.js

46 lines
1.5 KiB
JavaScript
Raw Permalink Normal View History

2022-05-07 16:17:37 +02:00
// 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)
2022-05-07 16:17:37 +02:00
import tap from 'tap'
2022-05-07 16:17:37 +02:00
import {createClient} from '../index.js'
import {profile as rawProfile} from '../p/db/index.js'
const resDTZOffset0 = require('./fixtures/db-journey-dtzoffset-0.json')
const resATZOffset0 = require('./fixtures/db-journey-atzoffset-0.json')
const client = createClient(rawProfile, 'public-transport/hafas-client:test')
const {profile} = client
const opt = {
stopovers: false,
tickets: false,
polylines: false,
subStops: true,
entrances: true,
remarks: true,
}
// https://github.com/public-transport/hafas-client/issues/237
tap.test('parses a journey whose first leg has a dTZOffset of 0 (#237)', (t) => {
const common = profile.parseCommon({profile, opt, res: resDTZOffset0})
const ctx = {profile, opt, common, res: resDTZOffset0}
const journey = profile.parseJourney(ctx, resDTZOffset0.outConL[0])
const firstLeg = journey.legs[0]
t.notOk(/Z$/.test(firstLeg.departure), 'firstLeg.departure has TZ offset "Z"')
t.end()
})
tap.test('parses a journey whose first leg has a aTZOffset of 0 (#237)', (t) => {
const common = profile.parseCommon({profile, opt, res: resATZOffset0})
const ctx = {profile, opt, common, res: resATZOffset0}
const journey = profile.parseJourney(ctx, resATZOffset0.outConL[0])
const lastLeg = journey.legs[0]
t.notOk(/Z$/.test(lastLeg.departure), 'lastLeg.departure has TZ offset "Z"')
t.end()
})