cxviz-rawtree
Version:
Raw Tree Visualization
66 lines (55 loc) • 1.37 kB
JavaScript
var test = require('tape')
var format = require('../lib/format')
var data = {
cost: 1000,
childCost: 800,
children: [
{
cost: 100,
childCost: 50,
children: [{ cost: 50, childCost: 0 }]
},
{
cost: 400,
childCost: 0
},
{
cost: 300,
childCost: 0
}
]
}
test('level 1', function(t){
var root = format(data, data.cost)
t.equal(root.totalPct, '100.0')
t.equal(root.selfPct, '20.0')
t.equal(root.childPct, '80.0')
t.equal(root.cost, '1.00ms')
t.equal(root.outerCost, '1.00ms')
t.equal(root.childCost, '800µs')
t.equal(root.selfCost, '200µs')
t.end()
})
test('level 2', function(t) {
var children = data.children
var first = format(children[0], data.cost)
t.equal(first.totalPct, '10.0')
t.equal(first.selfPct, '5.0')
t.equal(first.childPct, '5.0')
var second = format(children[1], data.cost)
t.equal(second.totalPct, '40.0')
t.equal(second.selfPct, '40.0')
t.equal(second.childPct, 0)
var third = format(children[2], data.cost)
t.equal(third.totalPct, '30.0')
t.equal(third.selfPct, '30.0')
t.equal(third.childPct, 0)
t.end()
})
test('level 3', function(t) {
var firstChild = format(data.children[0].children[0], data.cost)
t.equal(firstChild.totalPct, '5.0')
t.equal(firstChild.selfPct, '5.0')
t.equal(firstChild.childPct, 0)
t.end()
})