diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-08-14 05:01:11 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-08-14 05:02:09 +0200 |
commit | 363723fc84f7b8477592e0105aeb331ec9a017af (patch) | |
tree | 29f92724f34131bac64d6a318dd7e30612e631c7 /node_modules/stream-http/test | |
parent | 5634e77ad96bfe1818f6b6ee70b7379652e5487f (diff) |
node_modules
Diffstat (limited to 'node_modules/stream-http/test')
-rw-r--r-- | node_modules/stream-http/test/browser/headers.js | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/node_modules/stream-http/test/browser/headers.js b/node_modules/stream-http/test/browser/headers.js index aee0f7b14..9d0c77c5c 100644 --- a/node_modules/stream-http/test/browser/headers.js +++ b/node_modules/stream-http/test/browser/headers.js @@ -93,6 +93,7 @@ var browserVersion = browser.major var browserMinorVersion = browser.minor || 0 // The content-type header is broken when 'prefer-streaming' or 'allow-wrong-content-type' // is passed in browsers that rely on xhr.overrideMimeType(), namely older chrome, safari 6-10.0, and the stock Android browser +// Note that Safari 10.0 on iOS 10.3 doesn't need to override the mime type, so the content-type is preserved. var wrongMimeType = ((browserName === 'Chrome' && browserVersion <= 42) || ((browserName === 'Safari' || browserName === 'Mobile Safari') && browserVersion >= 6 && (browserVersion < 10 || (browserVersion == 10 && browserMinorVersion == 0))) || (browserName === 'Android Browser')) @@ -102,9 +103,13 @@ test('content-type response header with forced streaming', function (t) { path: '/testHeaders', mode: 'prefer-streaming' }, function (res) { - if (wrongMimeType) - t.equal(res.headers['content-type'], 'text/plain; charset=x-user-defined', 'content-type overridden') - else + if (wrongMimeType) { + // allow both the 'wrong' and correct mime type, since sometimes it's impossible to tell which to expect + // from the browser version alone (e.g. Safari 10.0 on iOS 10.2 vs iOS 10.3) + var contentType = res.headers['content-type'] + var correct = (contentType === 'text/plain; charset=x-user-defined') || (contentType === 'application/json') + t.ok(correct, 'content-type either preserved or overridden') + } else t.equal(res.headers['content-type'], 'application/json', 'content-type preserved') t.end() }) |