File: chat-websocket/node_modules/express/node_modules/connect/node_modules/formidable/benchmark/bench-multipart-parser.js

Recommend this page to a friend!
  Classes of Igor Escobar   Terminal Crossword   chat-websocket/node_modules/express/node_modules/connect/node_modules/formidable/benchmark/bench-multipart-parser.js   Download  
File: chat-websocket/node_modules/express/node_modules/connect/node_modules/formidable/benchmark/bench-multipart-parser.js
Role: Example script
Content type: text/plain
Description: Example script
Class: Terminal Crossword
Generate a crosswords board on a text console
Author: By
Last change:
Date: 2 years ago
Size: 1,640 bytes
 

Contents

Class file image Download
require('../test/common'); var multipartParser = require('../lib/multipart_parser'), MultipartParser = multipartParser.MultipartParser, parser = new MultipartParser(), Buffer = require('buffer').Buffer, boundary = '-----------------------------168072824752491622650073', mb = 100, buffer = createMultipartBuffer(boundary, mb * 1024 * 1024), callbacks = { partBegin: -1, partEnd: -1, headerField: -1, headerValue: -1, partData: -1, end: -1, }; parser.initWithBoundary(boundary); parser.onHeaderField = function() { callbacks.headerField++; }; parser.onHeaderValue = function() { callbacks.headerValue++; }; parser.onPartBegin = function() { callbacks.partBegin++; }; parser.onPartData = function() { callbacks.partData++; }; parser.onPartEnd = function() { callbacks.partEnd++; }; parser.onEnd = function() { callbacks.end++; }; var start = +new Date(), nparsed = parser.write(buffer), duration = +new Date - start, mbPerSec = (mb / (duration / 1000)).toFixed(2); console.log(mbPerSec+' mb/sec'); assert.equal(nparsed, buffer.length); function createMultipartBuffer(boundary, size) { var head = '--'+boundary+'\r\n' + 'content-disposition: form-data; name="field1"\r\n' + '\r\n' , tail = '\r\n--'+boundary+'--\r\n' , buffer = new Buffer(size); buffer.write(head, 'ascii', 0); buffer.write(tail, 'ascii', buffer.length - tail.length); return buffer; } process.on('exit', function() { for (var k in callbacks) { assert.equal(0, callbacks[k], k+' count off by '+callbacks[k]); } });