58 lines
1.3 KiB
JavaScript
58 lines
1.3 KiB
JavaScript
|
|
/* eslint-disable no-unused-expressions */
|
|||
|
|
var bench = require('nanobench')
|
|||
|
|
var acornsrc = require('fs').readFileSync(require.resolve('acorn'))
|
|||
|
|
var lodashsrc = require('fs').readFileSync(require.resolve('lodash'))
|
|||
|
|
var jquerysrc = require('fs').readFileSync(require.resolve('jquery'))
|
|||
|
|
var threesrc = require('fs').readFileSync(require.resolve('three'))
|
|||
|
|
var find = require('../')
|
|||
|
|
|
|||
|
|
// Optimize.
|
|||
|
|
for (var i = 0; i < 5; i++) find(acornsrc).properties
|
|||
|
|
|
|||
|
|
// Has very few undeclared identifiers
|
|||
|
|
bench('acorn × 1', function (b) {
|
|||
|
|
b.start()
|
|||
|
|
find(acornsrc).properties
|
|||
|
|
b.end()
|
|||
|
|
})
|
|||
|
|
bench('acorn × 5', function (b) {
|
|||
|
|
b.start()
|
|||
|
|
for (var i = 0; i < 5; i++) find(acornsrc).properties
|
|||
|
|
b.end()
|
|||
|
|
})
|
|||
|
|
|
|||
|
|
bench('lodash × 1', function (b) {
|
|||
|
|
b.start()
|
|||
|
|
find(lodashsrc).properties
|
|||
|
|
b.end()
|
|||
|
|
})
|
|||
|
|
bench('lodash × 5', function (b) {
|
|||
|
|
b.start()
|
|||
|
|
for (var i = 0; i < 5; i++) find(lodashsrc).properties
|
|||
|
|
b.end()
|
|||
|
|
})
|
|||
|
|
|
|||
|
|
// Has more undeclared identifiers and properties
|
|||
|
|
bench('jquery × 1', function (b) {
|
|||
|
|
b.start()
|
|||
|
|
find(jquerysrc).properties
|
|||
|
|
b.end()
|
|||
|
|
})
|
|||
|
|
bench('jquery × 5', function (b) {
|
|||
|
|
b.start()
|
|||
|
|
for (var i = 0; i < 5; i++) find(jquerysrc).properties
|
|||
|
|
b.end()
|
|||
|
|
})
|
|||
|
|
|
|||
|
|
// is very large
|
|||
|
|
bench('three × 1', function (b) {
|
|||
|
|
b.start()
|
|||
|
|
find(threesrc).identifiers
|
|||
|
|
b.end()
|
|||
|
|
})
|
|||
|
|
bench('three × 5', function (b) {
|
|||
|
|
b.start()
|
|||
|
|
for (var i = 0; i < 5; i++) find(threesrc).identifiers
|
|||
|
|
b.end()
|
|||
|
|
})
|