mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-04-24 05:06:02 +08:00
Add more tests.
This commit is contained in:
4
types/hapi/v17/test/index.test.d.ts
vendored
4
types/hapi/v17/test/index.test.d.ts
vendored
@@ -19,12 +19,14 @@ export * from './request/query';
|
||||
export * from './response/continue';
|
||||
export * from './response/error';
|
||||
export * from './response/redirect';
|
||||
export * from './response/reply';
|
||||
export * from './response/response';
|
||||
export * from './response/response-events';
|
||||
|
||||
/** ROUTE */
|
||||
export * from './route/adding-routes';
|
||||
export * from './route/config';
|
||||
export * from './route/handler';
|
||||
export * from './route/route-options-pre';
|
||||
|
||||
/** SERVER */
|
||||
export * from './server/server-app';
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// https://github.com/hapijs/hapi/blob/master/API.md#-servereventevents
|
||||
// https://github.com/hapijs/hapi/blob/master/API.md#-requestevents
|
||||
import {
|
||||
Lifecycle,
|
||||
Request,
|
||||
RequestExtPointFunction,
|
||||
ResponseToolkit,
|
||||
RouteOptions,
|
||||
Server,
|
||||
@@ -23,7 +23,7 @@ const serverRoute: ServerRoute = {
|
||||
}
|
||||
};
|
||||
|
||||
const onRequest: RequestExtPointFunction = function (request: Request, h: ResponseToolkit) {
|
||||
const onRequest: Lifecycle.Method = function (request: Request, h: ResponseToolkit) {
|
||||
|
||||
/*
|
||||
* Server events
|
||||
|
||||
31
types/hapi/v17/test/response/response-events.ts
Normal file
31
types/hapi/v17/test/response/response-events.ts
Normal file
@@ -0,0 +1,31 @@
|
||||
// https://github.com/hapijs/hapi/blob/master/API.md#-responseevents
|
||||
import {Request, ResponseToolkit, Server, ServerOptions, ServerRoute, ResponseObject} from "hapi";
|
||||
import * as Crypto from "crypto";
|
||||
|
||||
const preResponse = function (request: Request, h: ResponseToolkit) {
|
||||
|
||||
const response:ResponseObject = request.response;
|
||||
// if (response.isBoom) {
|
||||
// return null;
|
||||
// }
|
||||
|
||||
const hash = Crypto.createHash('sha1');
|
||||
response.events.on('peek', (chunk:any) => {
|
||||
hash.update(chunk);
|
||||
});
|
||||
|
||||
response.events.once('finish', () => {
|
||||
console.log(hash.digest('hex'));
|
||||
});
|
||||
|
||||
return h.continue;
|
||||
};
|
||||
|
||||
const server = new Server({
|
||||
port: 8000,
|
||||
});
|
||||
|
||||
server.ext('onPreResponse', preResponse);
|
||||
|
||||
server.start();
|
||||
console.log('Server started at: ' + server.info.uri);
|
||||
@@ -6,7 +6,7 @@ const options: ServerOptions = {
|
||||
};
|
||||
|
||||
const serverRoutes: ServerRoute[] = [
|
||||
// verbose notation
|
||||
// Detailed notation
|
||||
{
|
||||
path: '/test1',
|
||||
method: 'GET',
|
||||
@@ -17,7 +17,7 @@ const serverRoutes: ServerRoute[] = [
|
||||
return response;
|
||||
}
|
||||
},
|
||||
// chained notation
|
||||
// Chained notation
|
||||
{
|
||||
path: '/test2',
|
||||
method: 'GET',
|
||||
42
types/hapi/v17/test/route/route-options-pre.ts
Normal file
42
types/hapi/v17/test/route/route-options-pre.ts
Normal file
@@ -0,0 +1,42 @@
|
||||
// https://github.com/hapijs/hapi/blob/master/API.md#-routeoptionspre
|
||||
import {Server, Request, ResponseToolkit} from "hapi";
|
||||
|
||||
const server = new Server({
|
||||
port: 8000,
|
||||
});
|
||||
|
||||
const pre1 = function(request: Request, h: ResponseToolkit) {
|
||||
return 'Hello';
|
||||
};
|
||||
|
||||
const pre2 = function(request: Request, h: ResponseToolkit) {
|
||||
return 'World';
|
||||
};
|
||||
|
||||
const pre3 = function(request: Request, h: ResponseToolkit) {
|
||||
return request.pre.m1 + ' ' + request.pre.m2;
|
||||
};
|
||||
|
||||
server.route({
|
||||
method: 'GET',
|
||||
path: '/',
|
||||
config: {
|
||||
pre: [
|
||||
[
|
||||
// m1 and m2 executed in parallel
|
||||
{ method: pre1, assign: 'm1' },
|
||||
{ method: pre2, assign: 'm2' }
|
||||
],
|
||||
{ method: pre3, assign: 'm3' },
|
||||
],
|
||||
handler: function (request: Request, h: ResponseToolkit) {
|
||||
return request.pre.m3 + '!\n';
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
server.start();
|
||||
|
||||
server.events.on('start', () => {
|
||||
console.log('Server started at: ' + server.info.uri);
|
||||
});
|
||||
Reference in New Issue
Block a user