mirror of
https://github.com/TBEDP/datavjs.git
synced 2025-12-08 19:45:52 +00:00
108 lines
4.2 KiB
JavaScript
108 lines
4.2 KiB
JavaScript
module("Tree");
|
|
|
|
test("prototype.createCanvas", function () {
|
|
var tree = new DataV.Tree("chart");
|
|
|
|
var source = { "name": "flare", "children": [
|
|
{ "name": "analytics", "children": [
|
|
{ "name": "cluster", "children": [
|
|
{"name": "AgglomerativeCluster", "size": 3938},
|
|
{"name": "CommunityStructure", "size": 3812},
|
|
{"name": "HierarchicalCluster", "size": 6714},
|
|
{"name": "MergeEdge", "size": 743}]
|
|
}]}]};
|
|
|
|
equal(tree.defaults.width, 2000, "width should get 2000");
|
|
equal(tree.defaults.height, 760, "height should get 2000");
|
|
equal(tree.defaults.deep, 180, "deep should get 180");
|
|
equal(tree.defaults.radius, 10, "radius should get 10");
|
|
|
|
|
|
tree.createCanvas();
|
|
|
|
equal(typeof tree.canvas, "object", "canvas should be an object");
|
|
equal(tree.canvas.width, 2000, "canvas width should be 2000");
|
|
equal(tree.canvas.height, 760, "canvas height should be 760");
|
|
});
|
|
|
|
test("prototype.setSource", function () {
|
|
var tree = new DataV.Tree("chart");
|
|
|
|
var source = { "name": "flare", "children": [
|
|
{ "name": "analytics", "children": [
|
|
{ "name": "cluster", "children": [
|
|
{"name": "AgglomerativeCluster", "size": 3938},
|
|
{"name": "CommunityStructure", "size": 3812},
|
|
{"name": "HierarchicalCluster", "size": 6714},
|
|
{"name": "MergeEdge", "size": 743}]
|
|
}]}]};
|
|
|
|
tree.setSource(source);
|
|
|
|
equal(typeof tree.rawData, "object", "rawData should be an object");
|
|
equal(tree.rawData, source, "rawData should be equal with source");
|
|
equal(tree.source, source, "tree.source should be equal with source");
|
|
|
|
var resource = { "name": "flare", "children": [{ "name": "analytics", "size": 743}]};
|
|
|
|
equal(typeof tree.remapSource(resource), "object", "tree.remapSource(resource) should be an object");
|
|
equal(tree.remapSource(resource), resource, "tree.remapSource(resource) be equal with resource");
|
|
});
|
|
|
|
test("prototype.layout", function () {
|
|
var tree = new DataV.Tree("chart");
|
|
|
|
var source = { "name": "flare", "children": [
|
|
{ "name": "analytics", "children": [
|
|
{ "name": "cluster", "children": [
|
|
{"name": "AgglomerativeCluster", "size": 3938},
|
|
{"name": "CommunityStructure", "size": 3812},
|
|
{"name": "HierarchicalCluster", "size": 6714},
|
|
{"name": "MergeEdge", "size": 743}]
|
|
}]}]};
|
|
|
|
tree.setSource(source);
|
|
tree.layout();
|
|
|
|
equal(typeof tree.nodes, "object", "tree.nodes should be an object");
|
|
equal(tree.nodes.length, 7, "nodes length should be 7");
|
|
equal(tree.nodes[0].name, "flare", "nodes[0]'s name should be flare");
|
|
equal(tree.nodes[0].children.length, 1, "nodes[0]'s name should be flare");
|
|
equal(tree.nodes[0].name, "flare", "nodes[0]'s name should be flare");
|
|
equal(tree.treeDepth, 3, "TreeDepth should be 3");
|
|
});
|
|
|
|
test("prototype.generatePaths", function () {
|
|
var tree = new DataV.Tree("chart");
|
|
|
|
var source = { "name": "flare", "children": [
|
|
{ "name": "analytics" }] };
|
|
|
|
tree.setSource(source);
|
|
tree.layout();
|
|
tree.generatePaths();
|
|
|
|
equal(typeof tree.nodes, "object", "tree.nodes should be an object");
|
|
equal(tree.nodes.length, 2, "nodes length should be 2");
|
|
equal(tree.nodes[0].name, "flare", "nodes[0]'s name should be flare");
|
|
equal(tree.nodes[0].children.length, 1, "num of nodes[0]'s children should be 1");
|
|
equal(tree.treeDepth, 1, "TreeDepth should be 1");
|
|
equal(tree.link_paths.length, 1, "the num of link should be 1");
|
|
equal(tree.circle_paths.length, 2, "the num of link should be 1");
|
|
equal(tree.text_paths.length, 2, "the num of link should be 1");
|
|
|
|
var source2 = { "name": "flare"};
|
|
tree.setSource(source2);
|
|
tree.layout();
|
|
tree.generatePaths();
|
|
|
|
equal(typeof tree.nodes, "object", "tree.nodes should be an object");
|
|
equal(tree.nodes.length, 1, "nodes length should be 1");
|
|
equal(tree.nodes[0].name, "flare", "nodes[0]'s name should be flare");
|
|
equal(tree.nodes[0].children, undefined, "nodes[0]'s children should be undefined");
|
|
equal(tree.treeDepth, 0, "TreeDepth should be 0");
|
|
equal(tree.link_paths.length, 0, "the num of link should be 0");
|
|
equal(tree.circle_paths.length, 1, "the num of link should be 1");
|
|
equal(tree.text_paths.length, 1, "the num of link should be 1");
|
|
});
|