Skip to content
This repository was archived by the owner on Dec 19, 2024. It is now read-only.

Commit 5d179b3

Browse files
committed
Add stupid benchmarks per feature
Ref #65 First shot as today gives ``` ❯ node benchmarks.js customProperties takes 0.20704s calc takes 0.03314s customMedia takes 0.01792s mediaQueriesRange takes 0.00871s customSelectors takes 0.00889s colorRebeccapurple takes 0.07094s colorHwb takes 0.07437s colorGray takes 0.09796s colorHexAlpha takes 0.07138s colorFunction takes 0.11102s fontVariant takes 0.00786s filter takes 0.08778s rem takes 0.01469s autoprefixer takes 1.04424s ``
1 parent 517795f commit 5d179b3

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

benchmarks.js

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
var cssnext = require("./")
2+
var t = require("microtime")
3+
var assign = require("object-assign")
4+
5+
var input = require("fs").readFileSync("./test/fixtures/cases/example.css")
6+
7+
// test each features
8+
var keys = Object.keys(cssnext.features)
9+
var allOff = {}
10+
11+
keys.forEach(function(k) {
12+
allOff[k] = false
13+
})
14+
15+
keys.forEach(function(k) {
16+
var enable = assign({}, allOff)
17+
enable[k] = true
18+
var start = t.now()
19+
cssnext(input, {features: enable})
20+
var stop = t.now()
21+
22+
console.log(k + " takes " + ((stop - start) / 100000) + "s") //, enable)
23+
})

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@
6060
"browserify": "^8.1.1",
6161
"jscs": "^1.6.2",
6262
"jshint": "^2.5.6",
63+
"microtime": "^1.2.0",
6364
"tape": "^3.0.0"
6465
},
6566
"scripts": {

0 commit comments

Comments
 (0)