mirror of
https://github.com/public-transport/db-vendo-client.git
synced 2025-04-20 23:23:56 +03:00
* Removed Proxy and local address code * replaced node crypto with web crypto * Replaced require with static imports * removed commented out imports * import db-hafas-stations on demand * trying to handle undefined envs * Less optimistic variable handling * cleanup * Small browser docs addition * Linting * No async in new Promise * Bumped eslint to v9 and ecmaScript to 2025 * removed duplicated eslint config * Bumped minimal node version to node 18 * Added node 24 * using math.random instead of webcrypto and reintroduced randomizeUserAgent * Oh no node 24 is actually not released yet * removed temp debug file
30 lines
970 B
JavaScript
30 lines
970 B
JavaScript
// todo: use import assertions once they're supported by Node.js & ESLint
|
|
// https://github.com/tc39/proposal-import-assertions
|
|
|
|
import tap from 'tap';
|
|
|
|
import {createClient} from '../index.js';
|
|
import {profile as rawProfile} from '../p/dbnav/index.js';
|
|
import res from './fixtures/dbnav-departures.json' with { type: 'json' };
|
|
import {dbnavDepartures as expected} from './fixtures/dbnav-departures.js';
|
|
|
|
const client = createClient(rawProfile, 'public-transport/hafas-client:test', {enrichStations: false});
|
|
const {profile} = client;
|
|
|
|
const opt = {
|
|
direction: null,
|
|
duration: 10,
|
|
linesOfStops: true,
|
|
remarks: true,
|
|
stopovers: true,
|
|
includeRelatedStations: true,
|
|
when: '2019-08-19T20:30:00+02:00',
|
|
products: {},
|
|
};
|
|
|
|
tap.test('parses a dbnav departure correctly', (t) => {
|
|
const ctx = {profile, opt, common: null, res};
|
|
const departures = res.bahnhofstafelAbfahrtPositionen.map(d => profile.parseDeparture(ctx, d));
|
|
t.same(departures, expected);
|
|
t.end();
|
|
});
|