From 03c0476f46d5a4bad0ff66907c54795037602ce4 Mon Sep 17 00:00:00 2001 From: evlist Date: Tue, 7 Feb 2023 16:47:26 +0100 Subject: [PATCH] Removing tests which hadn't been updated since React (shame on me). --- src/db/gpx.test.ts | 86 -------- src/db/lib.test.ts | 299 -------------------------- src/db/rte.test.ts | 47 ---- src/db/rtept.test.ts | 58 ----- src/db/trk.test.ts | 47 ---- src/db/trkpt.test.ts | 79 ------- src/db/trkseg.test.ts | 40 ---- src/db/wpt.test.ts | 58 ----- src/lib/gpx.test.ts | 33 --- src/lib/ids.test.ts | 120 ----------- src/workers/dispatcher-main.test.js | 37 ---- src/workers/dispatcher-worker.test.js | 33 --- 12 files changed, 937 deletions(-) delete mode 100644 src/db/gpx.test.ts delete mode 100644 src/db/lib.test.ts delete mode 100644 src/db/rte.test.ts delete mode 100644 src/db/rtept.test.ts delete mode 100644 src/db/trk.test.ts delete mode 100644 src/db/trkpt.test.ts delete mode 100644 src/db/trkseg.test.ts delete mode 100644 src/db/wpt.test.ts delete mode 100644 src/lib/gpx.test.ts delete mode 100644 src/lib/ids.test.ts delete mode 100644 src/workers/dispatcher-main.test.js delete mode 100644 src/workers/dispatcher-worker.test.js diff --git a/src/db/gpx.test.ts b/src/db/gpx.test.ts deleted file mode 100644 index d74211d..0000000 --- a/src/db/gpx.test.ts +++ /dev/null @@ -1,86 +0,0 @@ -import { initDb } from '.'; -import { existsGpx, putNewGpx } from './gpx'; -declare global { - var db: any; - var dbReady: boolean; -} - -const originalDb = globalThis.db; -const originalDateNow = globalThis.Date.now; - -describe('The gpx module', () => { - beforeEach(() => { - globalThis.db = { put: jest.fn() }; - globalThis.Date.now = () => 0; - }); - afterEach(() => { - globalThis.db = originalDb; - globalThis.Date.now = originalDateNow; - }); - test('db.put() a new Gpx when required', async () => { - await putNewGpx({ gpx: 0 }); - expect(globalThis.db.put).toBeCalledWith({ - _id: 'gpx/0000000000000000', - _rev: undefined, - doc: { - $: { - creator: 'dyomedea version 0.000002', - version: '1.1', - xmlns: 'http://www.topografix.com/GPX/1/1', - 'xmlns:dyo': 'http://xmlns.dyomedea.com/', - 'xmlns:gpxtpx': - 'http://www.garmin.com/xmlschemas/TrackPointExtension/v1', - 'xmlns:gpxx': 'http://www.garmin.com/xmlschemas/GpxExtensions/v3', - 'xmlns:wptx1': - 'http://www.garmin.com/xmlschemas/WaypointExtension/v1', - 'xmlns:xsi': 'http://www.w3.org/2001/XMLSchema-instance', - 'xsi:schemaLocation': - 'http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www8.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/WaypointExtension/v1 http://www8.garmin.com/xmlschemas/WaypointExtensionv1.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd', - }, - extensions: undefined, - metadata: { - author: undefined, - bounds: undefined, - copyright: undefined, - desc: undefined, - extensions: undefined, - keywords: undefined, - link: undefined, - name: undefined, - time: '1970-01-01T00:00:00.000Z', - }, - rte: undefined, - trk: undefined, - wpt: undefined, - }, - type: 'gpx', - }); - }); - test('db.put() generates an id if needed', async () => { - const id = await putNewGpx(); - expect(id).toEqual({ gpx: 4320000000000000 }); - }); -}); - -describe('The gpx module with a real db', () => { - beforeEach(async () => { - await initDb({}); - globalThis.Date.now = () => 0; - }); - afterEach(async () => { - await db.destroy(); - db = undefined; - globalThis.Date.now = originalDateNow; - }); - - test("existsGpx returns false if the GPX doesn't exist", async () => { - const exists = await existsGpx({ gpx: 1 }); - expect(exists).toBeFalsy(); - }); - test('existsGpx returns false if the GPX exists', async () => { - const id = { gpx: 1 }; - await putNewGpx(id); - const exists = await existsGpx(id); - expect(exists).toBeTruthy(); - }); -}); diff --git a/src/db/lib.test.ts b/src/db/lib.test.ts deleted file mode 100644 index 2d8d58f..0000000 --- a/src/db/lib.test.ts +++ /dev/null @@ -1,299 +0,0 @@ -import { initDb } from '.'; -import uri from '../lib/ids'; -import { getDocsByType, getFamily } from './lib'; -import { putNewRte } from './rte'; -import { putNewRtept } from './rtept'; -import { putNewTrk } from './trk'; -import { putNewTrkpt } from './trkpt'; -import { putNewTrkseg } from './trkseg'; -import { putNewWpt } from './wpt'; - -declare global { - var db: any; -} - -const originalDateNow = globalThis.Date.now; - -describe('getFamily', () => { - beforeEach(async () => { - await initDb({}); - globalThis.Date.now = () => 0; - }); - afterEach(async () => { - await db.destroy(); - db = undefined; - globalThis.Date.now = originalDateNow; - }); - test('returns two rows after a gpx and a track have been inserted.', async () => { - await putNewTrk(); - const allDocs: any = await getFamily('gpx/'); - expect(allDocs).toMatchInlineSnapshot(` -Object { - "offset": 0, - "rows": Array [ - Object { - "id": "gpx/4320000000000000", - "key": "gpx/4320000000000000", - "value": Object { - "rev": "1-49baa096ec0c89962f2cafd3ff50b80b", - }, - }, - Object { - "id": "gpx/4320000000000000/3trk/000000", - "key": "gpx/4320000000000000/3trk/000000", - "value": Object { - "rev": "1-4c114f3ae0073151e4082ff1d220c2a4", - }, - }, - ], - "total_rows": 4, -} -`); - }); - test('also returns the docs if required.', async () => { - await putNewTrk(); - const allDocs: any = await getFamily('gpx/', { - include_docs: true, - }); - expect(allDocs).toMatchInlineSnapshot(` -Object { - "offset": 0, - "rows": Array [ - Object { - "doc": Object { - "_id": "gpx/4320000000000000", - "_rev": "1-49baa096ec0c89962f2cafd3ff50b80b", - "doc": Object { - "$": Object { - "creator": "dyomedea version 0.000002", - "version": "1.1", - "xmlns": "http://www.topografix.com/GPX/1/1", - "xmlns:dyo": "http://xmlns.dyomedea.com/", - "xmlns:gpxtpx": "http://www.garmin.com/xmlschemas/TrackPointExtension/v1", - "xmlns:gpxx": "http://www.garmin.com/xmlschemas/GpxExtensions/v3", - "xmlns:wptx1": "http://www.garmin.com/xmlschemas/WaypointExtension/v1", - "xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance", - "xsi:schemaLocation": "http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www8.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/WaypointExtension/v1 http://www8.garmin.com/xmlschemas/WaypointExtensionv1.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd", - }, - "metadata": Object { - "time": "1970-01-01T00:00:00.000Z", - }, - }, - "type": "gpx", - }, - "id": "gpx/4320000000000000", - "key": "gpx/4320000000000000", - "value": Object { - "rev": "1-49baa096ec0c89962f2cafd3ff50b80b", - }, - }, - Object { - "doc": Object { - "_id": "gpx/4320000000000000/3trk/000000", - "_rev": "1-4c114f3ae0073151e4082ff1d220c2a4", - "doc": Object { - "number": 0, - }, - "type": "trk", - }, - "id": "gpx/4320000000000000/3trk/000000", - "key": "gpx/4320000000000000/3trk/000000", - "value": Object { - "rev": "1-4c114f3ae0073151e4082ff1d220c2a4", - }, - }, - ], - "total_rows": 4, -} -`); - }); - test('returns three rows after a gpx and a track segment have been inserted.', async () => { - await putNewTrkseg(); - const allDocs: any = await getFamily('gpx/'); - expect(allDocs).toMatchInlineSnapshot(` -Object { - "offset": 0, - "rows": Array [ - Object { - "id": "gpx/4320000000000000", - "key": "gpx/4320000000000000", - "value": Object { - "rev": "1-49baa096ec0c89962f2cafd3ff50b80b", - }, - }, - Object { - "id": "gpx/4320000000000000/3trk/000000", - "key": "gpx/4320000000000000/3trk/000000", - "value": Object { - "rev": "1-4c114f3ae0073151e4082ff1d220c2a4", - }, - }, - Object { - "id": "gpx/4320000000000000/3trk/000000/000000", - "key": "gpx/4320000000000000/3trk/000000/000000", - "value": Object { - "rev": "1-68d7de0569de570229ea9f9e1a0b13cb", - }, - }, - ], - "total_rows": 5, -} -`); - }); - test('returns four rows after a gpx and a track point have been inserted.', async () => { - await putNewTrkpt(); - const allDocs: any = await getFamily('gpx/'); - expect(allDocs).toMatchInlineSnapshot(` -Object { - "offset": 0, - "rows": Array [ - Object { - "id": "gpx/4320000000000000", - "key": "gpx/4320000000000000", - "value": Object { - "rev": "1-49baa096ec0c89962f2cafd3ff50b80b", - }, - }, - Object { - "id": "gpx/4320000000000000/3trk/000000", - "key": "gpx/4320000000000000/3trk/000000", - "value": Object { - "rev": "1-4c114f3ae0073151e4082ff1d220c2a4", - }, - }, - Object { - "id": "gpx/4320000000000000/3trk/000000/000000", - "key": "gpx/4320000000000000/3trk/000000/000000", - "value": Object { - "rev": "1-68d7de0569de570229ea9f9e1a0b13cb", - }, - }, - Object { - "id": "gpx/4320000000000000/3trk/000000/000000/000000", - "key": "gpx/4320000000000000/3trk/000000/000000/000000", - "value": Object { - "rev": "1-7d917d1f3505fe0e3092161694904b53", - }, - }, - ], - "total_rows": 6, -} -`); - }); - - test('returns two rows after a gpx and a waypoint have been inserted.', async () => { - await putNewWpt(); - const allDocs: any = await getFamily('gpx/'); - expect(allDocs).toMatchInlineSnapshot(` -Object { - "offset": 0, - "rows": Array [ - Object { - "id": "gpx/4320000000000000", - "key": "gpx/4320000000000000", - "value": Object { - "rev": "1-49baa096ec0c89962f2cafd3ff50b80b", - }, - }, - Object { - "id": "gpx/4320000000000000/1wpt/000000", - "key": "gpx/4320000000000000/1wpt/000000", - "value": Object { - "rev": "1-c6793365fd0dd56236ab8734a41c7ae7", - }, - }, - ], - "total_rows": 4, -} -`); - }); - - test('returns two rows after a gpx and a route have been inserted.', async () => { - await putNewRte(); - const allDocs: any = await getFamily('gpx/'); - expect(allDocs).toMatchInlineSnapshot(` -Object { - "offset": 0, - "rows": Array [ - Object { - "id": "gpx/4320000000000000", - "key": "gpx/4320000000000000", - "value": Object { - "rev": "1-49baa096ec0c89962f2cafd3ff50b80b", - }, - }, - Object { - "id": "gpx/4320000000000000/2rte/000000", - "key": "gpx/4320000000000000/2rte/000000", - "value": Object { - "rev": "1-2ca14f512a9c83f5a239389e580befce", - }, - }, - ], - "total_rows": 4, -} -`); - }); - - test('returns three rows after a gpx and a route point have been inserted.', async () => { - await putNewRtept(); - const allDocs: any = await getFamily('gpx/'); - expect(allDocs).toMatchInlineSnapshot(` -Object { - "offset": 0, - "rows": Array [ - Object { - "id": "gpx/4320000000000000", - "key": "gpx/4320000000000000", - "value": Object { - "rev": "1-49baa096ec0c89962f2cafd3ff50b80b", - }, - }, - Object { - "id": "gpx/4320000000000000/2rte/000000", - "key": "gpx/4320000000000000/2rte/000000", - "value": Object { - "rev": "1-2ca14f512a9c83f5a239389e580befce", - }, - }, - Object { - "id": "gpx/4320000000000000/2rte/000000/000000", - "key": "gpx/4320000000000000/2rte/000000/000000", - "value": Object { - "rev": "1-0f4064d20f6bfac3888a7758851fbac5", - }, - }, - ], - "total_rows": 5, -} -`); - }); -}); - -describe('getDocsByType', () => { - beforeEach(async () => { - await initDb({}); - globalThis.Date.now = () => 0; - }); - afterEach(async () => { - await db.destroy(); - db = undefined; - globalThis.Date.now = originalDateNow; - }); - test('gets the rte amongst other docs', async () => { - await putNewRtept(); - const rtes = await getDocsByType('rte'); - expect(rtes).toMatchInlineSnapshot(` -Array [ - Object { - "_id": "gpx/4320000000000000/2rte/000000", - "_rev": "1-2ca14f512a9c83f5a239389e580befce", - "doc": Object { - "number": 0, - }, - "type": "rte", - }, -] -`); - }); -}); diff --git a/src/db/rte.test.ts b/src/db/rte.test.ts deleted file mode 100644 index 473a6f9..0000000 --- a/src/db/rte.test.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { putNewRte } from './rte'; - -declare global { - var db: any; - var dbReady: boolean; -} - -const originalDb = globalThis.db; -const originalDateNow = globalThis.Date.now; - -describe('The rte module', () => { - beforeEach(() => { - globalThis.db = { put: jest.fn() }; - globalThis.Date.now = () => 0; - }); - afterEach(() => { - globalThis.db = originalDb; - globalThis.Date.now = originalDateNow; - }); - test('db.put() a new rte when required', async () => { - putNewRte({ gpx: 4320000000000000, rte: 25 }); - await expect(globalThis.db.put).toBeCalledWith({ - _id: 'gpx/4320000000000000/2rte/000025', - _rev: undefined, - doc: { - cmt: undefined, - desc: undefined, - extensions: undefined, - link: undefined, - name: undefined, - number: 0, - rtept: undefined, - src: undefined, - type: undefined, - }, - type: 'rte', - }); - }); - test('db.put() generates an id for the trk if needed', async () => { - const id = await putNewRte({ gpx: 0 }); - expect(id).toEqual({ gpx: 0, rte: 0 }); - }); - test('db.put() generates ids for both gpx and trk if needed', async () => { - const id = await putNewRte(); - expect(id).toEqual({ gpx: 4320000000000000, rte: 0 }); - }); -}); diff --git a/src/db/rtept.test.ts b/src/db/rtept.test.ts deleted file mode 100644 index 4e993fb..0000000 --- a/src/db/rtept.test.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { putNewRtept } from './rtept'; - -declare global { - var db: any; - var dbReady: boolean; -} - -const originalDb = globalThis.db; -const originalDateNow = globalThis.Date.now; - -describe('The rtept module', () => { - beforeEach(() => { - globalThis.db = { put: jest.fn() }; - globalThis.Date.now = () => 0; - }); - afterEach(() => { - globalThis.db = originalDb; - globalThis.Date.now = originalDateNow; - }); - test('db.put() a new rtept when required', async () => { - putNewRtept({ gpx: 0, rte: 0, rtept: 0 }); - await expect(globalThis.db.put).toBeCalledWith({ - _id: 'gpx/0000000000000000/2rte/000000/000000', - _rev: undefined, - doc: { - $: { lat: 0, lon: 0 }, - ageofdgpsdata: undefined, - cmt: undefined, - desc: undefined, - dgpsid: undefined, - ele: undefined, - extensions: undefined, - fix: undefined, - geoidheight: undefined, - hdop: undefined, - link: undefined, - magvar: undefined, - name: undefined, - pdop: undefined, - sat: undefined, - src: undefined, - sym: undefined, - time: undefined, - type: undefined, - vdop: undefined, - }, - type: 'rtept', - }); - }); - test('db.put() generates an id for the rtept if needed', async () => { - const id = await putNewRtept({ gpx: 0 }); - expect(id).toEqual({ gpx: 0, rte: 0, rtept: 0 }); - }); - test('db.put() generates ids for both gpx and rte if needed', async () => { - const id = await putNewRtept(); - expect(id).toEqual({ gpx: 4320000000000000, rte: 0, rtept: 0 }); - }); -}); diff --git a/src/db/trk.test.ts b/src/db/trk.test.ts deleted file mode 100644 index 02cdc61..0000000 --- a/src/db/trk.test.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { putNewTrk } from './trk'; - -declare global { - var db: any; - var dbReady: boolean; -} - -const originalDb = globalThis.db; -const originalDateNow = globalThis.Date.now; - -describe('The trk module', () => { - beforeEach(() => { - globalThis.db = { put: jest.fn() }; - globalThis.Date.now = () => 0; - }); - afterEach(() => { - globalThis.db = originalDb; - globalThis.Date.now = originalDateNow; - }); - test('db.put() a new trk when required', async () => { - putNewTrk({ gpx: 1, trk: 2 }); - await expect(globalThis.db.put).toBeCalledWith({ - _id: 'gpx/0000000000000001/3trk/000002', - _rev: undefined, - doc: { - cmt: undefined, - desc: undefined, - extensions: undefined, - link: undefined, - name: undefined, - number: 0, - src: undefined, - trkseg: undefined, - type: undefined, - }, - type: 'trk', - }); - }); - test('db.put() generates an id for the trk if needed', async () => { - const id = await putNewTrk({ gpx: 2 }); - expect(id).toEqual({ gpx: 2, trk: 0}); - }); - test('db.put() generates ids for both gpx and trk if needed', async () => { - const id = await putNewTrk(); - expect(id).toEqual({ gpx: 4320000000000000, trk: 0}); - }); -}); diff --git a/src/db/trkpt.test.ts b/src/db/trkpt.test.ts deleted file mode 100644 index b4cfb0f..0000000 --- a/src/db/trkpt.test.ts +++ /dev/null @@ -1,79 +0,0 @@ -import { putNewTrkpt } from './trkpt'; - -declare global { - var db: any; - var dbReady: boolean; -} - -const originalDb = globalThis.db; -const originalDateNow = globalThis.Date.now; - -describe('The trkpt module', () => { - beforeEach(() => { - globalThis.db = { put: jest.fn() }; - globalThis.Date.now = () => 0; - }); - afterEach(() => { - globalThis.db = originalDb; - globalThis.Date.now = originalDateNow; - }); - test('db.put() a new trkpt when required', async () => { - putNewTrkpt({ - gpx: 1, - trk: 2, - trkseg: 3, - trkpt: 4, - }); - await expect(globalThis.db.put).toBeCalledWith({ - _id: 'gpx/0000000000000001/3trk/000002/000003/000004', - _rev: undefined, - doc: { - $: { lat: 0, lon: 0 }, - ageofdgpsdata: undefined, - cmt: undefined, - desc: undefined, - dgpsid: undefined, - ele: undefined, - extensions: { - 'dyo:accuracy': undefined, - 'dyo:batterylevel': undefined, - 'dyo:course': undefined, - 'dyo:speed': undefined, - 'dyo:useragent': undefined, - }, - fix: undefined, - geoidheight: undefined, - hdop: undefined, - link: undefined, - magvar: undefined, - name: undefined, - pdop: undefined, - sat: undefined, - src: undefined, - sym: undefined, - time: undefined, - type: undefined, - vdop: undefined, - }, - type: 'trkpt', - }); - }); - test('db.put() generates an id for the trk if needed', async () => { - const id = await putNewTrkpt({ gpx: 5 }); - expect(id).toEqual({ - gpx: 5, - trk: 0, - trkseg: 0, - trkpt: 0, - }); - }); - test('db.put() generates ids for both gpx and trk if needed', async () => { - const id = await putNewTrkpt(); - expect(id).toEqual({ - gpx: 4320000000000000, - trk: 0, - trkseg: 0, - trkpt: 0, - }); - }); -}); diff --git a/src/db/trkseg.test.ts b/src/db/trkseg.test.ts deleted file mode 100644 index ca82725..0000000 --- a/src/db/trkseg.test.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { putNewTrkseg } from './trkseg'; - -declare global { - var db: any; - var dbReady: boolean; -} - -const originalDb = globalThis.db; -const originalDateNow = globalThis.Date.now; - -describe('The trkseg module', () => { - beforeEach(() => { - globalThis.db = { put: jest.fn() }; - globalThis.Date.now = () => 0; - }); - afterEach(() => { - globalThis.db = originalDb; - globalThis.Date.now = originalDateNow; - }); - test('db.put() a new trk when required', async () => { - putNewTrkseg({ gpx: 1234567890123456, trk: 123456, trkseg: 5 }); - await expect(globalThis.db.put).toBeCalledWith({ - _id: 'gpx/1234567890123456/3trk/123456/000005', - _rev: undefined, - doc: { - trkpt: undefined, - extensions: undefined, - }, - type: 'trkseg', - }); - }); - test('db.put() generates an id for the trk if needed', async () => { - const id = await putNewTrkseg({ gpx: 1 }); - expect(id).toEqual({ gpx: 1, trk: 0, trkseg: 0 }); - }); - test('db.put() generates ids for both gpx and trk if needed', async () => { - const id = await putNewTrkseg(); - expect(id).toEqual({ gpx: 4320000000000000, trk: 0, trkseg: 0 }); - }); -}); diff --git a/src/db/wpt.test.ts b/src/db/wpt.test.ts deleted file mode 100644 index 998c373..0000000 --- a/src/db/wpt.test.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { putNewWpt } from './wpt'; - -declare global { - var db: any; - var dbReady: boolean; -} - -const originalDb = globalThis.db; -const originalDateNow = globalThis.Date.now; - -describe('The wpt module', () => { - beforeEach(() => { - globalThis.db = { put: jest.fn() }; - globalThis.Date.now = () => 0; - }); - afterEach(() => { - globalThis.db = originalDb; - globalThis.Date.now = originalDateNow; - }); - test('db.put() a new wpt when required', async () => { - putNewWpt({ gpx: 1, wpt: 2 }); - await expect(globalThis.db.put).toBeCalledWith({ - _id: 'gpx/0000000000000001/1wpt/000002', - _rev: undefined, - doc: { - $: { lat: 0, lon: 0 }, - ageofdgpsdata: undefined, - cmt: undefined, - desc: undefined, - dgpsid: undefined, - ele: undefined, - extensions: undefined, - fix: undefined, - geoidheight: undefined, - hdop: undefined, - link: undefined, - magvar: undefined, - name: undefined, - pdop: undefined, - sat: undefined, - src: undefined, - sym: undefined, - time: undefined, - type: undefined, - vdop: undefined, - }, - type: 'wpt', - }); - }); - test('db.put() generates an id for the wpt if needed', async () => { - const id = await putNewWpt({ gpx: 1 }); - expect(id).toEqual({ gpx: 1, wpt: 0 }); - }); - test('db.put() generates ids for both gpx and trk if needed', async () => { - const id = await putNewWpt(); - expect(id).toEqual({ gpx: 4320000000000000, wpt: 0 }); - }); -}); diff --git a/src/lib/gpx.test.ts b/src/lib/gpx.test.ts deleted file mode 100644 index ca8ce20..0000000 --- a/src/lib/gpx.test.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { assert } from 'console'; -import { findStartTime } from './gpx'; - -describe('findStartTime', () => { - test('to be undefined for a string', () => { - const start = findStartTime(''); - expect(start).toBeUndefined(); - }); - test('to be undefined for an object without time key', () => { - const start = findStartTime({ foo: 'foo', bar: 'bar' }); - expect(start).toBeUndefined(); - }); - test('to be the time value for an object with a time key', () => { - const start = findStartTime({ foo: 'foo', time: 'bar' }); - expect(start).toEqual('bar'); - }); - test('to be the lowest time value for an object with several time keys', () => { - const start = findStartTime({ - foo: { time: 'foo' }, - time: 'bar', - bar: { time: 'a' }, - }); - expect(start).toEqual('a'); - }); - test('to be the lowest time value for an array with several objects with time keys', () => { - const start = findStartTime({ - foos: [{ time: 'foo' }, { time: '0' }], - time: 'bar', - bar: { time: 'a' }, - }); - expect(start).toEqual('0'); - }); -}); diff --git a/src/lib/ids.test.ts b/src/lib/ids.test.ts deleted file mode 100644 index 785c81a..0000000 --- a/src/lib/ids.test.ts +++ /dev/null @@ -1,120 +0,0 @@ -import { route } from './docuri'; -import uri from './ids'; - -describe('Checking some DocURI features', () => { - test(', basic route', () => { - const gpx = route('gpx/:id'); - expect(gpx({ id: 10 })).toBe('gpx/10'); - }); - test(', basic route (vice-versa', () => { - const gpx = route('gpx/:id'); - expect(gpx('gpx/10')).toMatchObject({ id: '10' }); - }); -}); - -describe('Checking a multilevel route', () => { - test(', using the two levels', () => { - const gpx = route('gpx/:gpx/3trk/:trk'); - expect(gpx({ gpx: 10, trk: 0 })).toBe('gpx/10/3trk/0'); - }); - test(', using the two levels (vive-versa)', () => { - const gpx = route('gpx/:gpx/3trk/:trk'); - expect(gpx('gpx/10/3trk/0')).toMatchObject({ gpx: '10', trk: '0' }); - }); -}); - -describe('Checking a multilevel route with optional part', () => { - test(', using the two levels', () => { - const gpx = route('gpx/:gpx(/3trk/:trk)'); - expect(gpx({ gpx: 10, trk: 0 })).toBe('gpx/10/3trk/0'); - }); - test(', using the two levels (vive-versa)', () => { - const gpx = route('gpx/:gpx(/3trk/:trk)'); - expect(gpx('gpx/10/3trk/0')).toMatchObject({ gpx: '10', trk: '0' }); - }); - test(', using only one level', () => { - const gpx = route('gpx/:gpx(/3trk/:trk)'); - expect(gpx({ gpx: 10 })).toBe('gpx/10/3trk/'); //Unfortunately ! - }); - test(', using only one level (vive-versa)', () => { - const gpx = route('gpx/:gpx(/3trk/:trk)'); - expect(gpx('gpx/10')).toMatchObject({ gpx: '10' }); - }); -}); - -describe('Checking gpx ids', () => { - const id = { - gpx: 1234567890123456, - }; - const key = 'gpx/1234567890123456'; - test(', vice', () => { - const gpx = uri('gpx', id); - expect(gpx).toBe(key); - }); - test(', and versa', () => { - const gpx = uri('gpx', key); - expect(gpx).toMatchObject(id); - }); -}); - -describe('Checking trk ids', () => { - const id = { - gpx: 1234567890123456, - trk: 123456, - }; - const key = 'gpx/1234567890123456/3trk/123456'; - test(', vice', () => { - const rte = uri('trk', id); - expect(rte).toBe(key); - }); - test(', and versa', () => { - const rte = uri('trk', key); - expect(rte).toMatchObject(id); - }); -}); - -describe('Checking trkseg ids', () => { - const id = { - gpx: 111, - trk: 0, - trkseg: 3, - }; - const key = 'gpx/0000000000000111/3trk/000000/000003'; - test(', vice', () => { - const rte = uri('trkseg', id); - expect(rte).toBe(key); - }); - test(', and versa', () => { - const rte = uri('trkseg', key); - expect(rte).toMatchObject(id); - }); -}); - -describe('Checking trkpt ids', () => { - const id = { - gpx: 25, - trk: 8, - trkseg: 0, - trkpt: 155, - }; - const key = 'gpx/0000000000000025/3trk/000008/000000/000155'; - test(', vice', () => { - const rte = uri('trkpt', id); - expect(rte).toBe(key); - }); - test(', and versa', () => { - const rte = uri('trkpt', key); - expect(rte).toMatchObject(id); - }); -}); - -describe('Checking settings id', () => { - test(', vice', () => { - const rte = uri('settings', {}); - expect(rte).toBe('settings'); - }); - test(', and versa', () => { - const rte = uri('settings', 'settings'); - expect(rte).toMatchObject({}); - }); -}); diff --git a/src/workers/dispatcher-main.test.js b/src/workers/dispatcher-main.test.js deleted file mode 100644 index fac3fe6..0000000 --- a/src/workers/dispatcher-main.test.js +++ /dev/null @@ -1,37 +0,0 @@ -import dispatch, { init, worker } from './dispatcher-main'; - -jest.mock('./get-worker', () => ({ - getWorker: () => ({ - port: { - postMessage: jest.fn(), - }, - }), -})); - -describe('The dispatcher-main', () => { - beforeEach(() => { - init(); - }); - test('should create a new shared web worker', () => { - expect(worker).toBeDefined(); - }); - test('should create a onmessage function', () => { - expect(worker.port.onmessage).toBeDefined(); - }); - test('should return a promise if no callback is provided', () => { - expect(dispatch('ping')).toBeInstanceOf(Promise); - }); - test('should forward the message', () => { - dispatch('ping'); - expect(worker.port.postMessage).toBeCalledWith({ id: 0, payload: 'ping' }); - }); - test('should return the response', () => { - var response; - const callback = (error, success) => { - response = success; - }; - dispatch('ping', callback); - worker.port.onmessage({ data: { id: 0, payload: 'pong' } }); - expect(response).toEqual('pong'); - }); -}); diff --git a/src/workers/dispatcher-worker.test.js b/src/workers/dispatcher-worker.test.js deleted file mode 100644 index 7db3e71..0000000 --- a/src/workers/dispatcher-worker.test.js +++ /dev/null @@ -1,33 +0,0 @@ -import worker from './dispatcher-worker'; - -jest.mock('../db', () => ({ - initDb: () => 'called initDb', -})); - -describe('The dispatcher-worker ', () => { - let port; - beforeEach(() => { - port = { - postMessage: jest.fn(), - }; - worker.onconnect({ ports: [port] }); - }); - test('creates a onmessage function', () => { - expect(port.onmessage).toBeDefined(); - expect(port.postMessage).not.toBeCalled(); - }); - test('receives a ping and sends back an unknownAction', async () => { - await port.onmessage({ data: { id: 5, payload: { action: 'ping' } } }); - expect(port.postMessage).toBeCalledWith({ - id: 5, - payload: 'unknownAction', - }); - }); - test('calls initDb when required', async () => { - await port.onmessage({ data: { id: 5, payload: { action: 'initDb' } } }); - expect(port.postMessage).toBeCalledWith({ - id: 5, - payload: 'called initDb', - }); - }); -});