update
This commit is contained in:
parent
d9becc67b6
commit
9308795b8b
964 changed files with 104265 additions and 16 deletions
106
node_modules/pino-std-serializers/test/err.test.js
generated
vendored
Normal file
106
node_modules/pino-std-serializers/test/err.test.js
generated
vendored
Normal file
|
@ -0,0 +1,106 @@
|
|||
'use strict'
|
||||
|
||||
var test = require('tap').test
|
||||
const serializer = require('../lib/err')
|
||||
var wrapErrorSerializer = require('../').wrapErrorSerializer
|
||||
|
||||
test('serializes Error objects', function (t) {
|
||||
t.plan(3)
|
||||
var serialized = serializer(Error('foo'))
|
||||
t.is(serialized.type, 'Error')
|
||||
t.is(serialized.message, 'foo')
|
||||
t.match(serialized.stack, /err\.test\.js:/)
|
||||
})
|
||||
|
||||
test('serializes Error objects with extra properties', function (t) {
|
||||
t.plan(5)
|
||||
var err = Error('foo')
|
||||
err.statusCode = 500
|
||||
var serialized = serializer(err)
|
||||
t.is(serialized.type, 'Error')
|
||||
t.is(serialized.message, 'foo')
|
||||
t.ok(serialized.statusCode)
|
||||
t.is(serialized.statusCode, 500)
|
||||
t.match(serialized.stack, /err\.test\.js:/)
|
||||
})
|
||||
|
||||
test('serializes nested errors', function (t) {
|
||||
t.plan(7)
|
||||
var err = Error('foo')
|
||||
err.inner = Error('bar')
|
||||
var serialized = serializer(err)
|
||||
t.is(serialized.type, 'Error')
|
||||
t.is(serialized.message, 'foo')
|
||||
t.match(serialized.stack, /err\.test\.js:/)
|
||||
t.is(serialized.inner.type, 'Error')
|
||||
t.is(serialized.inner.message, 'bar')
|
||||
t.match(serialized.inner.stack, /Error: bar/)
|
||||
t.match(serialized.inner.stack, /err\.test\.js:/)
|
||||
})
|
||||
|
||||
test('prevents infinite recursion', function (t) {
|
||||
t.plan(4)
|
||||
var err = Error('foo')
|
||||
err.inner = err
|
||||
var serialized = serializer(err)
|
||||
t.is(serialized.type, 'Error')
|
||||
t.is(serialized.message, 'foo')
|
||||
t.match(serialized.stack, /err\.test\.js:/)
|
||||
t.notOk(serialized.inner)
|
||||
})
|
||||
|
||||
test('cleans up infinite recursion tracking', function (t) {
|
||||
t.plan(8)
|
||||
var err = Error('foo')
|
||||
var bar = Error('bar')
|
||||
err.inner = bar
|
||||
bar.inner = err
|
||||
|
||||
serializer(err)
|
||||
var serialized = serializer(err)
|
||||
|
||||
t.is(serialized.type, 'Error')
|
||||
t.is(serialized.message, 'foo')
|
||||
t.match(serialized.stack, /err\.test\.js:/)
|
||||
t.ok(serialized.inner)
|
||||
t.is(serialized.inner.type, 'Error')
|
||||
t.is(serialized.inner.message, 'bar')
|
||||
t.match(serialized.inner.stack, /Error: bar/)
|
||||
t.notOk(serialized.inner.inner)
|
||||
})
|
||||
|
||||
test('err.raw is available', function (t) {
|
||||
t.plan(1)
|
||||
const err = Error('foo')
|
||||
const serialized = serializer(err)
|
||||
t.equal(serialized.raw, err)
|
||||
})
|
||||
|
||||
test('pass through anything that is not an Error', function (t) {
|
||||
t.plan(3)
|
||||
|
||||
function check (a) {
|
||||
t.is(serializer(a), a)
|
||||
}
|
||||
|
||||
check('foo')
|
||||
check({ hello: 'world' })
|
||||
check([1, 2])
|
||||
})
|
||||
|
||||
test('can wrap err serializers', function (t) {
|
||||
t.plan(5)
|
||||
var err = Error('foo')
|
||||
err.foo = 'foo'
|
||||
var serializer = wrapErrorSerializer(function (err) {
|
||||
delete err.foo
|
||||
err.bar = 'bar'
|
||||
return err
|
||||
})
|
||||
var serialized = serializer(err)
|
||||
t.is(serialized.type, 'Error')
|
||||
t.is(serialized.message, 'foo')
|
||||
t.match(serialized.stack, /err\.test\.js:/)
|
||||
t.notOk(serialized.foo)
|
||||
t.is(serialized.bar, 'bar')
|
||||
})
|
298
node_modules/pino-std-serializers/test/req.test.js
generated
vendored
Normal file
298
node_modules/pino-std-serializers/test/req.test.js
generated
vendored
Normal file
|
@ -0,0 +1,298 @@
|
|||
'use strict'
|
||||
|
||||
var http = require('http')
|
||||
var test = require('tap').test
|
||||
var serializers = require('../lib/req')
|
||||
var wrapRequestSerializer = require('../').wrapRequestSerializer
|
||||
|
||||
test('maps request', function (t) {
|
||||
t.plan(2)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
var serialized = serializers.mapHttpRequest(req)
|
||||
t.ok(serialized.req)
|
||||
t.ok(serialized.req.method)
|
||||
t.end()
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('does not return excessively long object', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(Object.keys(serialized).length, 6)
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.raw is available', function (t) {
|
||||
t.plan(2)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.foo = 'foo'
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.ok(serialized.raw)
|
||||
t.is(serialized.raw.foo, 'foo')
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.raw will be obtained in from input request raw property if input request raw property is truthy', function (t) {
|
||||
t.plan(2)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.raw = { req: {foo: 'foo'}, res: {} }
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.ok(serialized.raw)
|
||||
t.is(serialized.raw.req.foo, 'foo')
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.id defaults to undefined', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(serialized.id, undefined)
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.id has a non-function value', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(typeof serialized.id === 'function', false)
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.id will be obtained from input request info.id when input request id does not exist', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.info = {id: 'test'}
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(serialized.id, 'test')
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.id has a non-function value with custom id function', function (t) {
|
||||
t.plan(2)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.id = function () { return 42 }
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(typeof serialized.id === 'function', false)
|
||||
t.is(serialized.id, 42)
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.url will be obtained from input request url.path when input request url is an object', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.url = {path: '/test'}
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(serialized.url, '/test')
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.url will be obtained from input request originalUrl when available', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.originalUrl = '/test'
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(serialized.url, '/test')
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('can wrap request serializers', function (t) {
|
||||
t.plan(3)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
var serailizer = wrapRequestSerializer(function (req) {
|
||||
t.ok(req.method)
|
||||
t.is(req.method, 'GET')
|
||||
delete req.method
|
||||
return req
|
||||
})
|
||||
|
||||
function handler (req, res) {
|
||||
var serialized = serailizer(req)
|
||||
t.notOk(serialized.method)
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.remoteAddress will be obtained from request connect.remoteAddress as fallback', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.connection = {remoteAddress: 'http://localhost'}
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(serialized.remoteAddress, 'http://localhost')
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.remoteAddress will be obtained from request info.remoteAddress if available', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.info = {remoteAddress: 'http://localhost'}
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(serialized.remoteAddress, 'http://localhost')
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.remotePort will be obtained from request connect.remotePort as fallback', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.connection = {remotePort: 3000}
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(serialized.remotePort, 3000)
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('req.remotePort will be obtained from request info.remotePort if available', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
req.info = {remotePort: 3000}
|
||||
var serialized = serializers.reqSerializer(req)
|
||||
t.is(serialized.remotePort, 3000)
|
||||
res.end()
|
||||
}
|
||||
})
|
89
node_modules/pino-std-serializers/test/res.test.js
generated
vendored
Normal file
89
node_modules/pino-std-serializers/test/res.test.js
generated
vendored
Normal file
|
@ -0,0 +1,89 @@
|
|||
'use strict'
|
||||
|
||||
var http = require('http')
|
||||
var test = require('tap').test
|
||||
var serializers = require('../lib/res')
|
||||
var wrapResponseSerializer = require('../').wrapResponseSerializer
|
||||
|
||||
test('res.raw is not enumerable', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
var serialized = serializers.resSerializer(res)
|
||||
t.is(serialized.propertyIsEnumerable('raw'), false)
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('res.raw is available', function (t) {
|
||||
t.plan(2)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
res.statusCode = 200
|
||||
var serialized = serializers.resSerializer(res)
|
||||
t.ok(serialized.raw)
|
||||
t.is(serialized.raw.statusCode, 200)
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('can wrap response serializers', function (t) {
|
||||
t.plan(3)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
var serializer = wrapResponseSerializer(function (res) {
|
||||
t.ok(res.statusCode)
|
||||
t.is(res.statusCode, 200)
|
||||
delete res.statusCode
|
||||
return res
|
||||
})
|
||||
|
||||
function handler (req, res) {
|
||||
res.statusCode = 200
|
||||
var serialized = serializer(res)
|
||||
t.notOk(serialized.statusCode)
|
||||
res.end()
|
||||
}
|
||||
})
|
||||
|
||||
test('res.headers is serialized', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var server = http.createServer(handler)
|
||||
server.unref()
|
||||
server.listen(0, () => {
|
||||
http.get(server.address(), () => {})
|
||||
})
|
||||
|
||||
t.tearDown(() => server.close())
|
||||
|
||||
function handler (req, res) {
|
||||
res.setHeader('x-custom', 'y')
|
||||
var serialized = serializers.resSerializer(res)
|
||||
t.is(serialized.headers['x-custom'], 'y')
|
||||
res.end()
|
||||
}
|
||||
})
|
Loading…
Add table
Add a link
Reference in a new issue