mirror of
https://github.com/public-transport/db-vendo-client.git
synced 2025-02-22 14:49:36 +02:00
* parse bahn.de boards * add optional chaining in line.js * unit tests for bahn.de boards * fix product check in line.js for bahn.de boards * add integration tests for bahn.de boards * allow letting hafas decide the amount of vias * split dbweb and dbregioguide profiles; add db profile * commit location-filter.js (forgot that in the last commit) * simplify how db profile works * remove `ezGleis` from coalesce for scheduled platform * un-break parsing of remarks * determine fahrtNr by removing all non-digits * employ enrichStations for board stop property * prevent timeouts in dbweb e2e test from calling `end()` twice * use promises in dbweb e2e tests when waiting for enrichStations to work * replace vias option with stopovers option for dbweb profile; enrich stations when only name is known * change dbweb-departures test covering enrichStation feature for stop and stopovers * remove check for not existing option * move verkehrsmittel.name in front of verkehrsmittel.langText when parsing name in line.js
40 lines
1.1 KiB
JavaScript
40 lines
1.1 KiB
JavaScript
// 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/dbweb/index.js';
|
|
const res = require('./fixtures/dbweb-journey.json');
|
|
import {dbwebJourney as expected} from './fixtures/dbweb-journey.js';
|
|
|
|
const client = createClient(rawProfile, 'public-transport/hafas-client:test', {enrichStations: false});
|
|
const {profile} = client;
|
|
|
|
const opt = {
|
|
results: null,
|
|
via: null,
|
|
stopovers: false,
|
|
transfers: -1,
|
|
transferTime: 0,
|
|
accessibility: 'none',
|
|
bike: false,
|
|
tickets: true,
|
|
polylines: true,
|
|
remarks: true,
|
|
walkingSpeed: 'normal',
|
|
startWithWalking: true,
|
|
scheduledDays: false,
|
|
departure: '2020-04-10T20:33+02:00',
|
|
products: {},
|
|
};
|
|
|
|
tap.test('parses a dbweb journey correctly', (t) => { // TODO DEVI leg
|
|
const ctx = {profile, opt, common: null, res};
|
|
const journey = profile.parseJourney(ctx, res.verbindungen[0]);
|
|
|
|
t.same(journey, expected);
|
|
t.end();
|
|
});
|