diff node_modules/socket.io/benchmarks/encode.bench.js @ 69:333afcfd3f3a

added node_modules to project and fixed path to chronometer also added deps to installer script
author tzara <rc-web@kiben.net>
date Sat, 26 Oct 2013 14:12:50 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/node_modules/socket.io/benchmarks/encode.bench.js	Sat Oct 26 14:12:50 2013 +0100
@@ -0,0 +1,90 @@
+
+/**
+ * Module dependencies.
+ */
+
+var benchmark = require('benchmark')
+  , colors = require('colors')
+  , io = require('../')
+  , parser = io.parser
+  , suite = new benchmark.Suite('Encode packet');
+
+suite.add('string', function () {
+  parser.encodePacket({
+      type: 'json'
+    , endpoint: ''
+    , data: '2'
+  });
+});
+
+suite.add('event', function () {
+  parser.encodePacket({
+      type: 'event'
+    , name: 'woot'
+    , endpoint: ''
+    , args: []
+  });
+});
+
+suite.add('event+ack', function () {
+  parser.encodePacket({
+      type: 'json'
+    , id: 1
+    , ack: 'data'
+    , endpoint: ''
+    , data: { a: 'b' }
+  });
+});
+
+suite.add('event+data', function () {
+  parser.encodePacket({
+      type: 'event'
+    , name: 'edwald'
+    , endpoint: ''
+    , args: [{a: 'b'}, 2, '3']
+  });
+});
+
+suite.add('heartbeat', function () {
+  parser.encodePacket({
+      type: 'heartbeat'
+    , endpoint: ''
+  })
+});
+
+suite.add('error', function () {
+  parser.encodePacket({
+      type: 'error'
+    , reason: 'unauthorized'
+    , advice: 'reconnect'
+    , endpoint: ''
+  })
+})
+
+suite.add('payload', function () {
+  parser.encodePayload([
+      parser.encodePacket({ type: 'message', data: '5', endpoint: '' })
+    , parser.encodePacket({ type: 'message', data: '53d', endpoint: '' })
+    , parser.encodePacket({ type: 'message', data: 'foobar', endpoint: '' })
+    , parser.encodePacket({ type: 'message', data: 'foobarbaz', endpoint: '' })
+    , parser.encodePacket({ type: 'message', data: 'foobarbazfoobarbaz', endpoint: '' })
+    , parser.encodePacket({ type: 'message', data: 'foobarbaz', endpoint: '' })
+    , parser.encodePacket({ type: 'message', data: 'foobar', endpoint: '' })
+  ]);
+});
+
+suite.on('cycle', function (bench, details) {
+  console.log('\n' + suite.name.grey, details.name.white.bold);
+  console.log([
+      details.hz.toFixed(2).cyan + ' ops/sec'.grey
+    , details.count.toString().white + ' times executed'.grey
+    , 'benchmark took '.grey + details.times.elapsed.toString().white + ' sec.'.grey
+    , 
+  ].join(', '.grey));
+});
+
+if (!module.parent) {
+  suite.run();
+} else {
+  module.exports = suite;
+}