%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/home/infra/BACKUP-FUSIONINVENTORY/lib/lazy.js-0.5.1/spec/
Upload File :
Create Path :
Current File : //proc/self/root/home/infra/BACKUP-FUSIONINVENTORY/lib/lazy.js-0.5.1/spec/node_benchmark.min.js

var Benchmark=require("../site/lib/benchmark.js");var ComparisonSuite=require("./support/comparison_suite.js");var Lazy=require("../lazy.js");var _=require("../site/lib/lodash.js");Benchmark.options.maxTime=1;String.prototype.padLeft=function(width,delimiter){var padding=width-this.length;if(padding<=0){return this}return this+new Array(padding+1).join(delimiter||" ")};String.prototype.repeat=function(count){return"".padLeft(count,this)};function readValue(object,keys){var value=Lazy(keys.split(".")).reduce(function(obj,key){return obj[key]},object);return typeof value==="number"&&Math.floor(value)!==value?value.toFixed(3):value}var size=parseInt(process.argv[2],10);if(!size){console.log("You must specify a size.");process.exit()}var type=process.argv[3];var input=function getArrayForType(type){var map;switch(type){case"mostdupe":map=function(x){return Math.floor(x*Math.sqrt(size))+1};break;case"halfdupe":map=function(x){return Math.floor(x*size/2)+1};break;case"mostuniq":map=function(x){return Math.floor(x*size)+1};break;default:console.log("You must specify a type: 'mostdupe', 'halfdupe', or 'mostuniq'.");process.exit()}return Lazy.generate(Math.random).map(map).take(size).toArray()}(type);var suite=new ComparisonSuite({reporter:{onRunning:function(test){console.log("Running test '"+test.label+"'.")},onTestResults:function(tests){console.log("\nResults:\n");var results=Lazy(tests).sortBy(function(test){return test.hz}).reverse();var columns=["label","hz","count","cycles","stats.rme","stats.deviation"];var columnWidths=Lazy(columns).map(function(columnName){return[columnName,results.map(function(result){return readValue(result,columnName)}).map(String).pluck("length").concat([columnName.length]).max()]}).toObject();var header=Lazy(columns).map(function(column){return column.padLeft(columnWidths[column])}).join(" | ");console.log(header);console.log("-".repeat(header.length));results.each(function(result){console.log(Lazy(columns).map(function(column){return String(readValue(result,column)).padLeft(columnWidths[column])}).join(" | "))})}}});suite.add("uniq",{tests:{"Lazy.js (no cache)":function(array){Lazy(array).uniq().eachNoCache(function(e){})},"Lazy.js (array cache)":function(array){Lazy(array).uniq().eachArrayCache(function(e){})},"Lazy.js (set cache)":function(array){Lazy(array).uniq().eachSetCache(function(e){})},"Lo-Dash":function(array){_.each(_.uniq(array),function(e){})}},inputs:{array:[input]}});console.log("Running benchmarks...");suite.run();

Zerion Mini Shell 1.0