diff --git a/.jshintrc b/.jshintrc index 0d02f22..4a2f904 100644 --- a/.jshintrc +++ b/.jshintrc @@ -4,7 +4,6 @@ "eqnull": true, "immed": true, "latedef": "nofunc", - "mocha" : true, "newcap": true, "noarg": true, "node": true, diff --git a/Makefile b/Makefile index 2f60726..d3786b5 100644 --- a/Makefile +++ b/Makefile @@ -4,11 +4,12 @@ lint: ./node_modules/.bin/jshint *.js lib test test: - ./node_modules/.bin/mocha \ - --recursive \ - --node-option no-experimental-fetch \ - --require should \ - --require test/replay \ - --require isomorphic-fetch - -.PHONY: check lint test + node --test \ + $(TEST_OPTS) \ + --require ./test/replay/index.js + +test-cov: TEST_OPTS := --experimental-test-coverage +test-cov: test + +.PHONY: check lint test test-cov + diff --git a/package.json b/package.json index 5b90ce4..53d7e91 100644 --- a/package.json +++ b/package.json @@ -21,11 +21,10 @@ "limiter-component": "~1" }, "devDependencies": { + "@pirxpilot/jshint": "^3.1.0", "@pirxpilot/replay": "^2.2.1", - "isomorphic-fetch": "^3.0.0", - "jshint": "~2", - "mocha": "~10", - "should": "~13" + "chai": "~4", + "node-fetch": "~2" }, "scripts": { "test": "make check" diff --git a/test/geocode.js b/test/geocode.js index c2140d2..7103659 100644 --- a/test/geocode.js +++ b/test/geocode.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const furkotGeocode = require('../lib/geocode'); /* global AbortController */ @@ -78,8 +79,7 @@ describe('furkot-geocode node module', function () { geocode.options.should.have.property('reverse').with.length(1); }); - it('timeout', async function () { - this.slow(200); + it('timeout', { timeout: 200 }, async function () { const service = timeService(100); const geocode = furkotGeocode({ forward: [ @@ -88,12 +88,13 @@ describe('furkot-geocode node module', function () { reverse: [], timeout: 50 }); - return geocode({}).should.be.rejectedWith({ cause: Symbol.for('timeout') }); + return geocode({}) + .then(() => should.fail('exception expected')) + .catch(err => err.should.have.property('cause', Symbol.for('timeout'))); }); - it('abort', async function () { - this.slow(200); + it('abort', { timeout: 200 }, async function () { const service = timeService(100); const geocode = furkotGeocode({ forward: [ @@ -104,7 +105,9 @@ describe('furkot-geocode node module', function () { const ac = new AbortController(); const p = geocode({}, { signal: ac.signal }); ac.abort(); - return p.should.be.rejectedWith({ name: 'AbortError' }); + return p + .then(() => should.fail('exception expected')) + .catch(err => err.should.have.property('name', 'AbortError')); }); diff --git a/test/replay/index.js b/test/replay/index.js index ef5a324..e393fc3 100644 --- a/test/replay/index.js +++ b/test/replay/index.js @@ -1,3 +1,12 @@ +require('chai').should(); + +const legacyFetch = require('node-fetch'); + +globalThis.fetch = legacyFetch; +globalThis.Response = legacyFetch.Response; +globalThis.Headers = legacyFetch.Headers; +globalThis.Request = legacyFetch.Request; + const Replay = require('@pirxpilot/replay'); Replay.fixtures = __dirname; diff --git a/test/service/geocodio/index.js b/test/service/geocodio/index.js index f7e568a..3095600 100644 --- a/test/service/geocodio/index.js +++ b/test/service/geocodio/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const geocodio = require('../../../lib/service/geocodio'); describe('geocodio geocoding', function () { @@ -15,7 +16,7 @@ describe('geocodio geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(2); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-87.12502, 39.52365], address: 'Brazil, IN', normal: 'Brazil,IN,US', @@ -43,7 +44,7 @@ describe('geocodio geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(8); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-111.400596, 45.284265], address: '50 Big Sky Resort Rd, Big Sky, MT', normal: '50 Big Sky Resort Rd,Big Sky,MT,US', diff --git a/test/service/graphhopper/index.js b/test/service/graphhopper/index.js index 9dcd5f2..60e718c 100644 --- a/test/service/graphhopper/index.js +++ b/test/service/graphhopper/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const graphhopper = require('../../../lib/service/graphhopper'); describe('graphhopper geocoding', function () { @@ -17,7 +18,7 @@ describe('graphhopper geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-46.8359735, -23.5370962], type: 'residential', street: 'Rua Cafelândia', @@ -38,7 +39,7 @@ describe('graphhopper geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(4); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [18.65868924925842, 54.351528200000004], place: 'SS Sołdek', type: 'museum', @@ -61,7 +62,7 @@ describe('graphhopper geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(5); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-73.1745473, 42.4750847], type: 'peak', country: 'USA', @@ -69,7 +70,7 @@ describe('graphhopper geocoding', function () { address: 'United States', normal: 'US' }); - result.places[1].should.deepEqual({ + result.places[1].should.deep.equal({ ll: [-69.2728254, 44.8350646], type: 'dam', country: 'USA', @@ -77,7 +78,7 @@ describe('graphhopper geocoding', function () { address: 'United States', normal: 'US' }); - result.places[2].should.deepEqual({ + result.places[2].should.deep.equal({ ll: [-71.086670478147, 42.36274665], type: 'construction', house: '325', @@ -89,7 +90,7 @@ describe('graphhopper geocoding', function () { address: '325 Main Street, Cambridge, MA', normal: '325 Main Street,Cambridge,MA,US' }); - result.places[3].should.deepEqual({ + result.places[3].should.deep.equal({ ll: [-71.6192199, 42.5524712], type: 'dam', country: 'USA', @@ -97,7 +98,7 @@ describe('graphhopper geocoding', function () { address: 'United States', normal: 'US' }); - result.places[4].should.deepEqual({ + result.places[4].should.deep.equal({ ll: [-10.6756677, 6.5080848], type: 'hamlet', province: 'Montserrado County', @@ -116,7 +117,7 @@ describe('graphhopper geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(5); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [14.5268016, -22.6791826], place: 'Beryl\'s Restaurant', type: 'restaurant', @@ -137,7 +138,7 @@ describe('graphhopper geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(5); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-111.40065600201527, 45.284264], type: 'yes', street: 'Black Eagle', @@ -147,7 +148,7 @@ describe('graphhopper geocoding', function () { address: 'Black Eagle, MT', normal: 'Black Eagle,,MT,US' }); - result.places[1].should.deepEqual({ + result.places[1].should.deep.equal({ ll: [-111.4011158, 45.2839783], type: 'sports_centre', house: '50', @@ -159,7 +160,7 @@ describe('graphhopper geocoding', function () { address: '50 Big Sky Resort Road, Big Sky, MT', normal: '50 Big Sky Resort Road,Big Sky,MT,US' }); - result.places[2].should.deepEqual({ + result.places[2].should.deep.equal({ ll: [-111.40110501870444, 45.284622], type: 'yes', street: 'Black Eagle', @@ -169,7 +170,7 @@ describe('graphhopper geocoding', function () { address: 'Black Eagle, MT', normal: 'Black Eagle,,MT,US' }); - result.places[3].should.deepEqual({ + result.places[3].should.deep.equal({ ll: [-111.4015212, 45.2842756], type: 'bicycle_rental', street: 'Mountain to Meadow', @@ -180,7 +181,7 @@ describe('graphhopper geocoding', function () { address: 'Mountain to Meadow, Big Sky, MT', normal: 'Mountain to Meadow,Big Sky,MT,US' }); - result.places[4].should.deepEqual({ + result.places[4].should.deep.equal({ ll: [-111.40158763890292, 45.284196300000005], type: 'yes', street: 'Mountain to Meadow', diff --git a/test/service/hogfish/index.js b/test/service/hogfish/index.js index f49bae0..ac62a32 100644 --- a/test/service/hogfish/index.js +++ b/test/service/hogfish/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const hogfish = require('../../../lib/service/hogfish'); describe('hogfish geocoding', function () { @@ -29,7 +30,7 @@ describe('hogfish geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-104.86063, 39.59278], place: 'Murphy Express', url: 'https://www.pure-gas.org/station?station_id=40499', @@ -61,7 +62,7 @@ describe('hogfish geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-104.879164, 39.591416], place: 'Hyatt House Denver Tech Center', street: '9280 E Costilla Ave', diff --git a/test/service/index.js b/test/service/index.js index 7452b11..010f499 100644 --- a/test/service/index.js +++ b/test/service/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const service = require('../../lib/service'); describe('geocoding service', function () { @@ -29,8 +30,7 @@ describe('geocoding service', function () { }); }); -it('abort', async function () { - this.slow(200); +it('abort', { timeout: 200 }, async function () { const { abort, geocode } = service({ name: 'test', prepareRequest: () => ({}), @@ -39,10 +39,11 @@ it('abort', async function () { const query = {}; for (let queryId = 0; queryId < 3; queryId++) { abortAfter(queryId); - await geocode('forward', queryId, query).should.be.fulfilledWith(undefined); + const r = await geocode('forward', queryId, query); + should.not.exist(r); } - let result = await geocode('forward', 'after 3 aborts', query); + const result = await geocode('forward', 'after 3 aborts', query); should.not.exist(result); function abortAfter(queryId) { diff --git a/test/service/locationiq/index.js b/test/service/locationiq/index.js index 1b09306..f774352 100644 --- a/test/service/locationiq/index.js +++ b/test/service/locationiq/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const locationiq = require('../../../lib/service/locationiq'); describe('locationiq geocoding', function () { @@ -17,7 +18,7 @@ describe('locationiq geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-46.8359735, -23.5370962], type: 'road', address: 'Rua Cafelândia, Carapicuíba, São Paulo, Brazil', @@ -38,7 +39,7 @@ describe('locationiq geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [18.658631239705393, 54.35145095], place: 'SS Sołdek', type: 'museum', @@ -64,7 +65,7 @@ describe('locationiq geocoding', function () { const result = await geocode('forward', 10, query); should.exist(result); result.should.have.property('places').with.length(8); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ place: 'Hill Country Barbecue Market', type: 'restaurant', ll: [-73.9904326, 40.7442736], @@ -76,7 +77,7 @@ describe('locationiq geocoding', function () { province: 'NY', country: 'USA' }); - result.places[1].should.deepEqual({ + result.places[1].should.deep.equal({ place: 'Mapzen', type: 'disused', ll: [-73.9903515, 40.7442363], @@ -88,7 +89,7 @@ describe('locationiq geocoding', function () { province: 'NY', country: 'USA' }); - result.places[2].should.deepEqual({ + result.places[2].should.deep.equal({ place: 'Samsung Accelerator', type: 'company', ll: [-73.9903727, 40.7442104], @@ -110,7 +111,7 @@ describe('locationiq geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [14.5268016, -22.6791826], place: 'Beryl\'s Restaurant', type: 'restaurant', @@ -136,7 +137,7 @@ describe('locationiq geocoding', function () { const result = await geocode('forward', 10, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ type: 'house_number', ll: [-104.999354, 39.676536], address: '2200 South Jason Street, Denver, CO', diff --git a/test/service/maptiler/index.js b/test/service/maptiler/index.js index 7f72152..6d6044d 100644 --- a/test/service/maptiler/index.js +++ b/test/service/maptiler/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const maptiler = require('../../../lib/service/maptiler'); describe('maptiler geocoding', function () { @@ -17,7 +18,7 @@ describe('maptiler geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(5); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-46.83655746281147, -23.537200177660463], type: 'street', place: 'Rua Cafelândia', @@ -25,7 +26,7 @@ describe('maptiler geocoding', function () { address: 'Brazil', normal: 'BR' }); - result.places[1].should.deepEqual({ + result.places[1].should.deep.equal({ ll: [-46.895270850509405, -23.61090479385711], type: 'street', place: 'Rua Cafelândia', @@ -43,7 +44,7 @@ describe('maptiler geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(5); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-122.28275321424007, 37.84177777704476], type: 'place', place: 'Golden Gate', @@ -61,7 +62,7 @@ describe('maptiler geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(5); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [14.526541957636255, -22.679326596603442], type: 'street', place: 'Woermann Street', diff --git a/test/service/opencage/index.js b/test/service/opencage/index.js index 87a153c..68f2c6b 100644 --- a/test/service/opencage/index.js +++ b/test/service/opencage/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const opencage = require('../../../lib/service/opencage'); describe('opencage geocoding', function () { @@ -17,7 +18,7 @@ describe('opencage geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(2); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-46.8359735, -23.5370962], type: 'road', place: 'Rua Cafelândia', @@ -29,7 +30,7 @@ describe('opencage geocoding', function () { province: 'São Paulo', country: 'Brazil' }); - result.places[1].should.deepEqual({ + result.places[1].should.deep.equal({ ll: [-46.835, -23.52272], type: 'city', address: 'Carapicuíba, São Paulo, Brazil', @@ -50,7 +51,7 @@ describe('opencage geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [18.6586312, 54.351451], place: 'SS Sołdek', type: 'museum', @@ -72,7 +73,7 @@ describe('opencage geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [14.5268016, -22.6791826], place: 'Beryl\'s Restaurant', type: 'restaurant', @@ -93,7 +94,7 @@ describe('opencage geocoding', function () { const result = await geocode('forward', 10, query); should.exist(result); result.should.have.property('places').with.length(3); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ type: 'building', ll: [-104.999354, 39.676536], address: '2200 South Jason Street, Denver, CO', diff --git a/test/service/pelias/index.js b/test/service/pelias/index.js index 42e9e96..72c2c30 100644 --- a/test/service/pelias/index.js +++ b/test/service/pelias/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const pelias = require('../../../lib/service/pelias'); describe('pelias geocoding', function () { @@ -20,7 +21,7 @@ describe('pelias geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-46.836557, -23.5372], type: 'street', address: 'Rua Cafelândia, Carapicuíba, Sao Paulo, Brazil', @@ -42,7 +43,7 @@ describe('pelias geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(2); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [18.658675, 54.351453], place: 'SS Sołdek', url: 'https://www.openstreetmap.org/way/125199669', @@ -65,7 +66,7 @@ describe('pelias geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(4); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-109.608784, 38.612304], place: 'Arches National Park', url: 'https://www.openstreetmap.org/relation/5868384', @@ -76,7 +77,7 @@ describe('pelias geocoding', function () { address: 'Utah, USA', normal: 'UT,US' }); - result.places[1].should.deepEqual({ + result.places[1].should.deep.equal({ ll: [-109.61995, 38.616497], place: 'Arches National Park Visitor Center', url: 'https://www.openstreetmap.org/way/130058023', @@ -87,7 +88,7 @@ describe('pelias geocoding', function () { address: 'Utah, USA', normal: 'UT,US' }); - result.places[2].should.deepEqual({ + result.places[2].should.deep.equal({ ll: [125.23645, 6.815029], place: 'Pedro A. Arches National High School', url: 'https://www.openstreetmap.org/way/961674317', @@ -98,7 +99,7 @@ describe('pelias geocoding', function () { address: 'Davao del Sur, Philippines', normal: 'Davao del Sur,PH' }); - result.places[3].should.deepEqual({ + result.places[3].should.deep.equal({ ll: [-109.548641, 38.561166], place: 'Quality Suites Moab Near Arches National Park', url: 'https://www.openstreetmap.org/way/130513576', @@ -122,7 +123,7 @@ describe('pelias geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(10); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [14.526802, -22.679183], place: 'Beryl\'s Restaurant', url: 'https://www.openstreetmap.org/node/4488973891', @@ -144,7 +145,7 @@ describe('pelias geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(10); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-111.968051, 33.319324], place: 'Z\'Tejas', url: 'https://www.openstreetmap.org/node/10238187804', @@ -168,7 +169,7 @@ describe('pelias geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(10); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-111.967228, 33.31982], type: 'street', address: 'West Ray Road, Chandler, AZ', @@ -189,7 +190,7 @@ describe('pelias geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-40.308722, 23.992882], place: 'North Pacific Ocean', url: 'https://spelunker.whosonfirst.org/id/404528711/', @@ -207,7 +208,7 @@ describe('pelias geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(6); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-118.983976, 37.63619], type: 'venue', address: '3253 Meridian, Mammoth Lakes, CA', @@ -221,7 +222,7 @@ describe('pelias geocoding', function () { province: 'CA', country: 'USA' }); - result.places[1].should.deepEqual({ + result.places[1].should.deep.equal({ ll: [-118.983976, 37.63619], type: 'address', address: '3253 Meridian, Mammoth Lakes, CA', diff --git a/test/service/positionstack/index.js b/test/service/positionstack/index.js index 327024a..ed7a032 100644 --- a/test/service/positionstack/index.js +++ b/test/service/positionstack/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const positionstack = require('../../../lib/service/positionstack'); describe('positionstack geocoding', function () { @@ -17,7 +18,7 @@ describe('positionstack geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-46.830942, -23.532918], type: 'locality', town: 'Carapicuíba', @@ -37,7 +38,7 @@ describe('positionstack geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(10); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-122.478861, 37.822118], type: 'venue', town: 'San Francisco', @@ -57,7 +58,7 @@ describe('positionstack geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(10); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [-49.542449, -11.928923], type: 'country', country: 'Brazil', @@ -75,7 +76,7 @@ describe('positionstack geocoding', function () { const result = await geocode('reverse', 1, query); should.exist(result); result.should.have.property('places').with.length(10); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [14.526802, -22.679183], type: 'venue', province: 'Erongo', diff --git a/test/service/synchronous/index.js b/test/service/synchronous/index.js index f61e700..acd0078 100644 --- a/test/service/synchronous/index.js +++ b/test/service/synchronous/index.js @@ -1,4 +1,5 @@ -const should = require('should'); +const { describe, it } = require('node:test'); +const should = require('chai').should(); const synchronous = require('../../../lib/service/synchronous'); describe('synchronous geocoding', function () { @@ -25,7 +26,7 @@ describe('synchronous geocoding', function () { const result = await geocode('forward', 1, query); should.exist(result); result.should.have.property('places').with.length(1); - result.places[0].should.deepEqual({ + result.places[0].should.deep.equal({ ll: [18.658663, 54.351444], place: 'SS Sołdek', address: '',