blob: 3efe1a22992c06e612d359d51e1a98809b8a3a21 [file]
var vows = require("vows"),
load = require("../load"),
assert = require("../assert");
var suite = vows.describe("d3.layout.hierarchy");
suite.addBatch({
"hierarchy": {
topic: load("layout/treemap").expression("d3.layout.treemap"), // hierarchy is abstract, so test a subclass
"doesn't overwrite the value of a node that has an empty children array": function(hierarchy) {
var h = hierarchy(),
nodes = h.sticky(true).nodes({value: 1, children: []});
assert.equal(nodes[0].value, 1);
h.nodes(nodes[0]);
assert.equal(nodes[0].value, 1);
},
"a valueless node that has an empty children array gets a value of 0": function(hierarchy) {
var h = hierarchy(),
nodes = h.sticky(true).nodes({children: []});
assert.equal(nodes[0].value, 0);
h.nodes(nodes[0]);
assert.equal(nodes[0].value, 0);
},
"removes the children array for a node that has no children": function(hierarchy) {
var h = hierarchy(),
nodes = h.children(function() { return null; }).nodes({children: [{}]});
assert.equal(nodes[0].value, 0);
assert.isUndefined(nodes[0].children);
}
}
});
suite.export(module);