blob: 320edccfceaffd4a32ac293c1cfedf18d2baf778 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
var fs = require('fs'),
jsdom = require('jsdom'),
addScript = require('./test_util').addScript;
function dump_nodes(window) {
var nodes = window.force.nodes();
for(var i = 0 ; i < nodes.length; ++i) {
console.log('nodes[' + nodes[i].id + '/' + nodes[i].type + '].[xy] = (' + nodes[i].x + ',' + nodes[i].y + ')');
}
}
function dump_graphviz(force) {
var i;
var nodes = force.nodes();
var links = force.links();
var q = function(s) {
if (s.search(' ') == -1) {
return s;
}
return '"' + s + '"';
};
console.log('digraph {');
for (i = 0 ; i < nodes.length; ++i) {
if (nodes[i].type == 'bubble') {
console.log(' BUBBLE;');
} else {
console.log(' ' + q(nodes[i].name) + ';');
}
}
for (i = 0 ; i < links.length; ++i) {
var link = links[i];
console.log(' ' + q(link.__src.name) + ' -> ' + q(link.__dst.name) + ' [label=' + link.name + '];');
}
console.log('}');
}
function run_tests(settings) {
var document = jsdom.jsdom('<html><body></body></html>');
var window = document.parentWindow;
window.console.log = console.log; // slightly evil
window.process = process; // more evil
window.is_node = true;
if (settings.created) {
settings.created(undefined, window);
}
debugger
addScript(window, '../src/external/require.js')
.load_next('../src/app.js')
.done(function () {
console.log('test harness: starting script loading with requirejs');
window.require.config(window.rhizi_require_config);
window.requirejs(['main'], function(main) {
console.log('test harness: main loaded');
main.main();
if (settings.done) {
settings.done(undefined, window);
}
process.quit();
});
});
//window.setInterval(function() { console.log('.'); return true; }, 100);
}
function reset(window) {
window.require('rz_core').graph.clear();
}
function nodes(window) {
return window.require('rz_core').force.nodes().map(function (n) {
return n.name;
});
}
function links(window) {
return window.require('rz_core').force.links().map(function (l) {
debugger;
return [l.__src.name, l.__dst.name, l.name];
});
}
exports.run_tests = run_tests;
exports.dump_graphviz = dump_graphviz;
exports.reset = reset;
exports.links = links;
exports.nodes = nodes;
|