benchmark.js 763 B

123456789101112131415161718192021222324252627282930313233343536
  1. var css = require('./')
  2. , fs = require('fs')
  3. , read = fs.readFileSync
  4. , str = read('examples/ui.css', 'utf8');
  5. var n = 5000;
  6. var ops = 200;
  7. var t = process.hrtime(t);
  8. var results = [];
  9. while (n--) {
  10. css.stringify(css.parse(str));
  11. if (n % ops == 0) {
  12. t = process.hrtime(t);
  13. var ms = t[1] / 1000 / 1000;
  14. var persec = (ops * (1000 / ms) | 0);
  15. results.push(persec);
  16. process.stdout.write('\r [' + persec + ' ops/s] [' + n + ']');
  17. t = process.hrtime();
  18. }
  19. }
  20. function sum(arr) {
  21. return arr.reduce(function(sum, n){
  22. return sum + n;
  23. });
  24. }
  25. function mean(arr) {
  26. return sum(arr) / arr.length | 0;
  27. }
  28. console.log();
  29. console.log(' avg: %d ops/s', mean(results));
  30. console.log(' size: %d kb', (str.length / 1024).toFixed(2));