mirror of
https://github.com/public-transport/db-vendo-client.git
synced 2025-02-23 15:19:35 +02:00
basic parser tests
This commit is contained in:
parent
9a89cd0dc8
commit
bff7384f06
10 changed files with 10144 additions and 0 deletions
40
test/bvg-journey.js
Normal file
40
test/bvg-journey.js
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
'use strict'
|
||||||
|
|
||||||
|
const tapePromise = require('tape-promise').default
|
||||||
|
const tape = require('tape')
|
||||||
|
|
||||||
|
const createClient = require('..')
|
||||||
|
const rawProfile = require('../p/bvg')
|
||||||
|
const raw = require('./fixtures/bvg-journey.json')
|
||||||
|
const expected = require('./fixtures/bvg-journey.js')
|
||||||
|
|
||||||
|
const test = tapePromise(tape)
|
||||||
|
const client = createClient(rawProfile, 'public-transport/hafas-client:test')
|
||||||
|
const {profile} = client
|
||||||
|
|
||||||
|
const opt = {
|
||||||
|
results: null,
|
||||||
|
via: null,
|
||||||
|
stopovers: true,
|
||||||
|
transfers: -1,
|
||||||
|
transferTime: 0,
|
||||||
|
accessibility: 'none',
|
||||||
|
bike: false,
|
||||||
|
tickets: true,
|
||||||
|
polylines: true,
|
||||||
|
remarks: true,
|
||||||
|
walkingSpeed: 'normal',
|
||||||
|
startWithWalking: true,
|
||||||
|
scheduledDays: true,
|
||||||
|
departure: '2019-08-18T14:03:50+02:00',
|
||||||
|
products: {}
|
||||||
|
}
|
||||||
|
|
||||||
|
test('parses a journey correctly (BVG)', (t) => {
|
||||||
|
const common = profile.parseCommon(profile, opt, raw)
|
||||||
|
const parseJourney = profile.parseJourney(profile, opt, common)
|
||||||
|
const journey = parseJourney(common.outConL[0])
|
||||||
|
|
||||||
|
t.deepEqual(journey, expected)
|
||||||
|
t.end()
|
||||||
|
})
|
32
test/bvg-radar.js
Normal file
32
test/bvg-radar.js
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
'use strict'
|
||||||
|
|
||||||
|
const tapePromise = require('tape-promise').default
|
||||||
|
const tape = require('tape')
|
||||||
|
|
||||||
|
const createClient = require('..')
|
||||||
|
const rawProfile = require('../p/bvg')
|
||||||
|
const raw = require('./fixtures/bvg-radar.json')
|
||||||
|
const expected = require('./fixtures/bvg-radar.js')
|
||||||
|
|
||||||
|
const test = tapePromise(tape)
|
||||||
|
const client = createClient(rawProfile, 'public-transport/hafas-client:test')
|
||||||
|
const {profile} = client
|
||||||
|
|
||||||
|
const opt = {
|
||||||
|
results: 256,
|
||||||
|
duration: 30,
|
||||||
|
frames: 3,
|
||||||
|
products: null,
|
||||||
|
polylines: true,
|
||||||
|
departure: '2019-08-19T21:00:00+02:00',
|
||||||
|
products: {}
|
||||||
|
}
|
||||||
|
|
||||||
|
test('parses a radar() response correctly (BVG)', (t) => {
|
||||||
|
const common = profile.parseCommon(profile, opt, raw)
|
||||||
|
const parseMovement = profile.parseMovement(profile, opt, common)
|
||||||
|
const movements = raw.jnyL.map(parseMovement)
|
||||||
|
|
||||||
|
t.deepEqual(movements, expected)
|
||||||
|
t.end()
|
||||||
|
})
|
1056
test/fixtures/bvg-journey.js
vendored
Normal file
1056
test/fixtures/bvg-journey.js
vendored
Normal file
File diff suppressed because it is too large
Load diff
1233
test/fixtures/bvg-journey.json
vendored
Normal file
1233
test/fixtures/bvg-journey.json
vendored
Normal file
File diff suppressed because it is too large
Load diff
2884
test/fixtures/bvg-radar.js
vendored
Normal file
2884
test/fixtures/bvg-radar.js
vendored
Normal file
File diff suppressed because it is too large
Load diff
1332
test/fixtures/bvg-radar.json
vendored
Normal file
1332
test/fixtures/bvg-radar.json
vendored
Normal file
File diff suppressed because it is too large
Load diff
2185
test/fixtures/vbb-departures.js
vendored
Normal file
2185
test/fixtures/vbb-departures.js
vendored
Normal file
File diff suppressed because it is too large
Load diff
1344
test/fixtures/vbb-departures.json
vendored
Normal file
1344
test/fixtures/vbb-departures.json
vendored
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1,5 +1,9 @@
|
||||||
'use strict'
|
'use strict'
|
||||||
|
|
||||||
|
require('./bvg-journey')
|
||||||
|
require('./vbb-departures')
|
||||||
|
require('./bvg-radar')
|
||||||
|
|
||||||
require('./common')
|
require('./common')
|
||||||
require('./db')
|
require('./db')
|
||||||
require('./vbb')
|
require('./vbb')
|
||||||
|
@ -14,5 +18,6 @@ require('./saarfahrplan')
|
||||||
require('./cfl')
|
require('./cfl')
|
||||||
require('./hvv')
|
require('./hvv')
|
||||||
require('./db-busradar-nrw')
|
require('./db-busradar-nrw')
|
||||||
|
|
||||||
require('./throttle')
|
require('./throttle')
|
||||||
require('./retry')
|
require('./retry')
|
||||||
|
|
33
test/vbb-departures.js
Normal file
33
test/vbb-departures.js
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
'use strict'
|
||||||
|
|
||||||
|
const tapePromise = require('tape-promise').default
|
||||||
|
const tape = require('tape')
|
||||||
|
|
||||||
|
const createClient = require('..')
|
||||||
|
const rawProfile = require('../p/vbb')
|
||||||
|
const raw = require('./fixtures/vbb-departures.json')
|
||||||
|
const expected = require('./fixtures/vbb-departures.js')
|
||||||
|
|
||||||
|
const test = tapePromise(tape)
|
||||||
|
const client = createClient(rawProfile, 'public-transport/hafas-client:test')
|
||||||
|
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: {}
|
||||||
|
}
|
||||||
|
|
||||||
|
test('parses a departure correctly (VBB)', (t) => {
|
||||||
|
const common = profile.parseCommon(profile, opt, raw)
|
||||||
|
const parseDeparture = profile.parseDeparture(profile, opt, common)
|
||||||
|
const departures = raw.jnyL.map(parseDeparture)
|
||||||
|
|
||||||
|
t.deepEqual(departures, expected)
|
||||||
|
t.end()
|
||||||
|
})
|
Loading…
Add table
Reference in a new issue