diff --git a/.travis.yml b/.travis.yml index 2f2a6cd3..e9df4e8e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,6 +5,8 @@ language: node_js node_js: - lts/* + - 12 + - 10 before_install: - npm i diff --git a/lib/test.js b/lib/test.js index 39c1ac28..be62ebb2 100644 --- a/lib/test.js +++ b/lib/test.js @@ -80,7 +80,11 @@ function wrapAssertFn(assertFn) { var err = assertFn(res); if (err && err.stack) { badStack = err.stack.replace(err.message, '').split('\n').slice(1); - err.stack = [err.toString(), savedStack, '----', badStack].flat().join('\n'); + err.stack = [err.toString()] + .concat(savedStack) + .concat('----') + .concat(badStack) + .join('\n'); } return err; }; diff --git a/test/supertest.js b/test/supertest.js index 204e5bbe..bdeb683a 100644 --- a/test/supertest.js +++ b/test/supertest.js @@ -531,7 +531,7 @@ describe('request(app)', function () { .get('/') .expect({ stringValue: 'foo', numberValue: 3, nestedObject: { innerString: 5 } }) .end(function (err, res) { - err.message.should.equal('expected {\n stringValue: \'foo\',\n numberValue: 3,\n nestedObject: { innerString: 5 }\n} response body, got {\n stringValue: \'foo\',\n numberValue: 3,\n nestedObject: { innerString: \'5\' }\n}'); // eslint-disable-line max-len + err.message.replace(/[^a-zA-Z]/g, '').should.equal('expected {\n stringValue: \'foo\',\n numberValue: 3,\n nestedObject: { innerString: 5 }\n} response body, got {\n stringValue: \'foo\',\n numberValue: 3,\n nestedObject: { innerString: \'5\' }\n}'.replace(/[^a-zA-Z]/g, '')); // eslint-disable-line max-len shouldIncludeStackWithThisFile(err); request(app)