Spaces:
Paused
Paused
File size: 1,913 Bytes
9307755 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
'use strict'
/* globals it */
const bent = require('../')
const assert = require('assert')
const tsame = require('tsame')
const qs = require('querystring')
const zlib = require('zlib')
const test = it
const same = (x, y) => assert.ok(tsame(x, y))
const baseurl = 'https://echo-server.mikeal.now.sh/src'
const u = path => baseurl + path
if (!process.browser) {
test('accept header', async () => {
let request = bent('json')
let json = await request(u('/info.js'))
same(json.headers['accept-encoding'], 'br, gzip, deflate')
request = bent('json', { 'Accept-Encoding': 'test' })
json = await request(u('/info.js'))
same(json.headers['accept-encoding'], 'test')
})
test('brotli', async () => {
const request = bent('string', baseurl)
const base64 = zlib.brotliCompressSync('ok').toString('base64')
const headers = 'content-encoding:br'
const str = await request(`/echo.js?${qs.stringify({ base64, headers })}`)
same(str, 'ok')
})
test('gzip', async () => {
const request = bent('string', baseurl)
const base64 = zlib.gzipSync('ok').toString('base64')
const headers = 'content-encoding:gzip'
const str = await request(`/echo.js?${qs.stringify({ base64, headers })}`)
same(str, 'ok')
})
test('deflate', async () => {
const request = bent('string', baseurl)
const base64 = zlib.deflateSync('ok').toString('base64')
const headers = 'content-encoding:deflate'
const str = await request(`/echo.js?${qs.stringify({ base64, headers })}`)
same(str, 'ok')
})
test('unknown', async () => {
const request = bent('buffer', baseurl)
const base64 = zlib.gzipSync('untouched').toString('base64')
const headers = 'content-encoding:myown'
const buffer = await request(`/echo.js?${qs.stringify({ base64, headers })}`)
const str = zlib.gunzipSync(buffer).toString('utf8')
same(str, 'untouched')
})
}
|