You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					84 lines
				
				1.8 KiB
			
		
		
			
		
	
	
					84 lines
				
				1.8 KiB
			| 
											3 years ago
										 | const http = require('http') | ||
|  | 
 | ||
|  | const Benchmark = require('benchmark') | ||
|  | const suite = new Benchmark.Suite() | ||
|  | const Request = require('../lib/request') | ||
|  | const parseURL = require('../lib/parseURL') | ||
|  | 
 | ||
|  | const mockReq = { | ||
|  |   url: 'http://localhost', | ||
|  |   method: 'GET', | ||
|  |   headers: { | ||
|  |     foo: 'bar', | ||
|  |     'content-type': 'html', | ||
|  |     accepts: 'json', | ||
|  |     authorization: 'granted' | ||
|  |   } | ||
|  | } | ||
|  | const mockCustomReq = { | ||
|  |   url: 'http://localhost', | ||
|  |   method: 'GET', | ||
|  |   headers: { | ||
|  |     foo: 'bar', | ||
|  |     'content-type': 'html', | ||
|  |     accepts: 'json', | ||
|  |     authorization: 'granted' | ||
|  |   }, | ||
|  |   Request: http.IncomingMessage | ||
|  | } | ||
|  | const mockReqCookies = { | ||
|  |   url: 'http://localhost', | ||
|  |   method: 'GET', | ||
|  |   cookies: { foo: 'bar', grass: 'àìùòlé' }, | ||
|  |   headers: { | ||
|  |     foo: 'bar', | ||
|  |     'content-type': 'html', | ||
|  |     accepts: 'json', | ||
|  |     authorization: 'granted' | ||
|  |   } | ||
|  | } | ||
|  | const mockReqCookiesPayload = { | ||
|  |   url: 'http://localhost', | ||
|  |   method: 'GET', | ||
|  |   headers: { | ||
|  |     foo: 'bar', | ||
|  |     'content-type': 'html', | ||
|  |     accepts: 'json', | ||
|  |     authorization: 'granted' | ||
|  |   }, | ||
|  |   payload: { | ||
|  |     foo: { bar: 'fiz' }, | ||
|  |     bim: { bar: { boom: 'paf' } } | ||
|  |   } | ||
|  | } | ||
|  | 
 | ||
|  | suite.add('Request', function () { | ||
|  |   new Request(mockReq) | ||
|  | }) | ||
|  |   .add('Custom Request', function () { | ||
|  |     new Request.CustomRequest(mockCustomReq) | ||
|  |   }) | ||
|  |   .add('Request With Cookies', function () { | ||
|  |     new Request(mockReqCookies) | ||
|  |   }) | ||
|  |   .add('Request With Cookies n payload', function () { | ||
|  |     new Request(mockReqCookiesPayload) | ||
|  |   }) | ||
|  |   .add('ParseUrl', function () { | ||
|  |     parseURL('http://example.com:8080/hello') | ||
|  |   }) | ||
|  |   .add('ParseUrl and query', function () { | ||
|  |     parseURL('http://example.com:8080/hello', { | ||
|  |       foo: 'bar', | ||
|  |       message: 'OK', | ||
|  |       xs: ['foo', 'bar'] | ||
|  |     }) | ||
|  |   }) | ||
|  |   .on('cycle', function (event) { | ||
|  |     console.log(String(event.target)) | ||
|  |   }) | ||
|  |   .on('complete', function () { | ||
|  |     console.log('Fastest is: ' + this.filter('fastest').map('name')) | ||
|  |   }) | ||
|  |   .run() |