From 0e8582f24e6903d9079a7d92e9b4d831cb5b5f17 Mon Sep 17 00:00:00 2001 From: Szymon Marczak <36894700+szmarczak@users.noreply.github.com> Date: Tue, 12 May 2020 19:42:34 +0200 Subject: [PATCH] Test `responseType` set to `undefined` Fixes #1252 --- source/as-promise/core.ts | 6 ++++++ source/core/index.ts | 1 + test/response-parse.ts | 6 ++++++ 3 files changed, 13 insertions(+) diff --git a/source/as-promise/core.ts b/source/as-promise/core.ts index 566ab5dee..b698de622 100644 --- a/source/as-promise/core.ts +++ b/source/as-promise/core.ts @@ -57,6 +57,12 @@ export default class PromisableRequest extends Request { assert.any([is.boolean, is.undefined], options.resolveBodyOnly); assert.any([is.boolean, is.undefined], options.methodRewriting); assert.any([is.boolean, is.undefined], options.isStream); + assert.any([is.string, is.undefined], options.responseType); + + // `options.responseType` + if (options.responseType === undefined) { + options.responseType = 'text'; + } // `options.retry` const {retry} = options; diff --git a/source/core/index.ts b/source/core/index.ts index a48bddec1..ad22b4686 100644 --- a/source/core/index.ts +++ b/source/core/index.ts @@ -624,6 +624,7 @@ export default class Request extends Duplex implements RequestEvents { assert.any([is.boolean, is.undefined], options.http2); assert.any([is.boolean, is.undefined], options.allowGetBody); assert.any([is.boolean, is.undefined], options.rejectUnauthorized); + assert.any([is.string, is.undefined], options.localAddress); // `options.method` if (is.string(options.method)) { diff --git a/test/response-parse.ts b/test/response-parse.ts index b32f2ab5b..d0756e12d 100644 --- a/test/response-parse.ts +++ b/test/response-parse.ts @@ -44,6 +44,12 @@ test('Text response', withServer, async (t, server, got) => { t.is((await got({responseType: 'text'})).body, jsonResponse); }); +test('Text response #2', withServer, async (t, server, got) => { + server.get('/', defaultHandler); + + t.is((await got({responseType: undefined})).body, jsonResponse); +}); + test('JSON response - promise.json()', withServer, async (t, server, got) => { server.get('/', defaultHandler);