aboutsummaryrefslogtreecommitdiff
path: root/node_modules/stream-http/test
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2017-08-14 05:01:11 +0200
committerFlorian Dold <florian.dold@gmail.com>2017-08-14 05:02:09 +0200
commit363723fc84f7b8477592e0105aeb331ec9a017af (patch)
tree29f92724f34131bac64d6a318dd7e30612e631c7 /node_modules/stream-http/test
parent5634e77ad96bfe1818f6b6ee70b7379652e5487f (diff)
node_modules
Diffstat (limited to 'node_modules/stream-http/test')
-rw-r--r--node_modules/stream-http/test/browser/headers.js11
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()
})