fatsify核心功能示例测试!!!
This commit is contained in:
124
node_modules/fastify/test/same-shape.test.js
generated
vendored
Normal file
124
node_modules/fastify/test/same-shape.test.js
generated
vendored
Normal file
@@ -0,0 +1,124 @@
|
||||
'use strict'
|
||||
|
||||
const { test } = require('node:test')
|
||||
const fastify = require('..')
|
||||
|
||||
test('same shape on Request', async (t) => {
|
||||
t.plan(1)
|
||||
|
||||
const app = fastify()
|
||||
|
||||
let request
|
||||
|
||||
app.decorateRequest('user')
|
||||
|
||||
app.addHook('preHandler', (req, reply, done) => {
|
||||
if (request) {
|
||||
req.user = 'User'
|
||||
}
|
||||
done()
|
||||
})
|
||||
|
||||
app.get('/', (req, reply) => {
|
||||
if (request) {
|
||||
t.assert.deepStrictEqual(request, req)
|
||||
}
|
||||
|
||||
request = req
|
||||
|
||||
return 'hello world'
|
||||
})
|
||||
|
||||
await app.inject('/')
|
||||
await app.inject('/')
|
||||
})
|
||||
|
||||
test('same shape on Request when object', async (t) => {
|
||||
t.plan(1)
|
||||
|
||||
const app = fastify()
|
||||
|
||||
let request
|
||||
|
||||
app.decorateRequest('object', null)
|
||||
|
||||
app.addHook('preHandler', (req, reply, done) => {
|
||||
if (request) {
|
||||
req.object = {}
|
||||
}
|
||||
done()
|
||||
})
|
||||
|
||||
app.get('/', (req, reply) => {
|
||||
if (request) {
|
||||
t.assert.deepStrictEqual(request, req)
|
||||
}
|
||||
|
||||
request = req
|
||||
|
||||
return 'hello world'
|
||||
})
|
||||
|
||||
await app.inject('/')
|
||||
await app.inject('/')
|
||||
})
|
||||
|
||||
test('same shape on Reply', async (t) => {
|
||||
t.plan(1)
|
||||
|
||||
const app = fastify()
|
||||
|
||||
let _reply
|
||||
|
||||
app.decorateReply('user')
|
||||
|
||||
app.addHook('preHandler', (req, reply, done) => {
|
||||
if (_reply) {
|
||||
reply.user = 'User'
|
||||
}
|
||||
done()
|
||||
})
|
||||
|
||||
app.get('/', (req, reply) => {
|
||||
if (_reply) {
|
||||
t.assert.deepStrictEqual(_reply, reply)
|
||||
}
|
||||
|
||||
_reply = reply
|
||||
|
||||
return 'hello world'
|
||||
})
|
||||
|
||||
await app.inject('/')
|
||||
await app.inject('/')
|
||||
})
|
||||
|
||||
test('same shape on Reply when object', async (t) => {
|
||||
t.plan(1)
|
||||
|
||||
const app = fastify()
|
||||
|
||||
let _reply
|
||||
|
||||
app.decorateReply('object', null)
|
||||
|
||||
app.addHook('preHandler', (req, reply, done) => {
|
||||
if (_reply) {
|
||||
reply.object = {}
|
||||
}
|
||||
done()
|
||||
})
|
||||
|
||||
app.get('/', (req, reply) => {
|
||||
if (_reply) {
|
||||
t.assert.deepStrictEqual(_reply, reply)
|
||||
}
|
||||
|
||||
_reply = reply
|
||||
|
||||
return 'hello world'
|
||||
})
|
||||
|
||||
await app.inject('/')
|
||||
await app.inject('/')
|
||||
})
|
||||
Reference in New Issue
Block a user