fix dbweb options possibly being null (#47)

* fix `maxUmstiege` option possibly being `null` for `dbweb` profile

* fix `zwischenhalte` option possibly being `null` for `dbweb` profile

* update `dbweb` integration test fixtures
This commit is contained in:
dabund24 2026-04-26 12:24:27 +02:00 committed by GitHub
parent a2e3a36e20
commit b935802f4e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 2477 additions and 359 deletions

View file

@ -1,5 +1,5 @@
const formatTransfers = (transfers) => { const formatTransfers = (transfers) => {
if (transfers === -1) { // profiles may not accept -1: https://github.com/public-transport/db-vendo-client/issues/5 if (transfers === null || transfers === -1) { // profiles may not accept -1: https://github.com/public-transport/db-vendo-client/issues/5
return undefined; return undefined;
} }
return transfers; return transfers;

View file

@ -18,7 +18,7 @@ const formatJourneysReq = (ctx, from, to, when, outFrwd, journeysRef) => {
abfahrtsHalt: from.lid, abfahrtsHalt: from.lid,
zwischenhalte: opt.via zwischenhalte: opt.via
? [{id: profile.formatLocation(profile, opt.via, 'opt.via').lid}] ? [{id: profile.formatLocation(profile, opt.via, 'opt.via').lid}]
: null, : undefined,
ankunftsHalt: to.lid, ankunftsHalt: to.lid,
produktgattungen: filters, produktgattungen: filters,
bikeCarriage: opt.bike, bikeCarriage: opt.bike,

View file

@ -23,7 +23,7 @@ import {testJourneysWithDetour} from './lib/journeys-with-detour.js';
const isObj = o => o !== null && 'object' === typeof o && !Array.isArray(o); const isObj = o => o !== null && 'object' === typeof o && !Array.isArray(o);
const minute = 60 * 1000; const minute = 60 * 1000;
const T_MOCK = 1747040400 * 1000; // 2025-05-12T08:00:00+01:00 const T_MOCK = 1779714000 * 1000; // 2026-05-25T15:00:00+02:00
const when = createWhen(dbProfile.timezone, dbProfile.locale, T_MOCK); const when = createWhen(dbProfile.timezone, dbProfile.locale, T_MOCK);
const cfg = { const cfg = {
@ -127,7 +127,7 @@ if (!process.env.VCR_OFF) {
}); });
tap.test('refreshJourney valid tickets', async (t) => { tap.test('refreshJourney valid tickets', async (t) => {
const T_MOCK = 1710831600 * 1000; // 2024-03-19T08:00:00+01:00 const T_MOCK = 1779714000 * 1000; // 2026-05-25T15:00:00+02:00
const when = createWhen(dbProfile.timezone, dbProfile.locale, T_MOCK); const when = createWhen(dbProfile.timezone, dbProfile.locale, T_MOCK);
const journeysRes = await client.journeys(berlinHbf, münchenHbf, { const journeysRes = await client.journeys(berlinHbf, münchenHbf, {
@ -261,7 +261,7 @@ if (!process.env.VCR_OFF) {
} }
tap.test('refreshJourney', async (t) => { tap.test('refreshJourney', async (t) => {
const T_MOCK = 1710831600 * 1000; // 2024-03-19T08:00:00+01:00 const T_MOCK = 1779714000 * 1000; // 2026-05-25T15:00:00+02:00
const when = createWhen(dbProfile.timezone, dbProfile.locale, T_MOCK); const when = createWhen(dbProfile.timezone, dbProfile.locale, T_MOCK);
const validate = createValidate({...cfg, when}); const validate = createValidate({...cfg, when});

File diff suppressed because one or more lines are too long