it('supports searching with no query parameters', async function () { nock(this.baseUrl) .matchHeader('accept', 'application/json+fhir') .get('/Patient') .times(2) .reply(200, () => readStreamFor('search-results.json')); let response = await this.fhirClient.resourceSearch({ resourceType: 'Patient', }); expect(response.resourceType).to.equal('Bundle'); expect(response.id).to.equal('95a2de95-08c7-418e-b4d0-2dd6fc8cc37e'); response = await this.fhirClient.resourceSearch({ resourceType: 'Patient', searchParams: {}, }); expect(response.resourceType).to.equal('Bundle'); expect(response.id).to.equal('95a2de95-08c7-418e-b4d0-2dd6fc8cc37e'); });
test('retries HTTP 503', function (t) { t.plan(4) nock('http://localhost:8080') .post('/v1/statement') .times(3) .reply(503) const uniqueRequests = new Set() const allRequests = [] lento({ maxRetries: 2 }) .on('_request', (requestOptions) => { uniqueRequests.add(requestOptions) allRequests.push(requestOptions) }) .createRowStream('select 1') .on('data', noop) .on('error', function (err) { t.is(err && err.statusCode, 503) t.is(err && err.message, 'Service Unavailable') t.is(uniqueRequests.size, 1) t.is(allRequests.length, 3) }) })
it('Should send batching of messages', function (done) { nock('https://api.telegram.org') .post('/botfoo/sendMessage') .times(2) .reply(200, { ok: true, result: {} }) winston.add(