mirror of
https://github.com/TBEDP/datavjs.git
synced 2025-12-08 19:45:52 +00:00
81 lines
3.8 KiB
JavaScript
81 lines
3.8 KiB
JavaScript
module("DataV.Stream")
|
|
//4 new function tickAttr, tickTextAttr, minorTickAttr, domainAttr, others are belong to d3
|
|
//view xamples in ../examples/axis/ to know the usage.
|
|
|
|
var stream = new DataV.Stream(document.createElement("div"),100,100);
|
|
test("Stream", function () {
|
|
equal(stream.type, "Stream", "Type should be Stream");
|
|
equal(stream instanceof DataV.Chart, true, "instanceof Chart");
|
|
equal(stream instanceof DataV.Stream, true, "instanceof Stream");
|
|
equal(typeof stream.getType, "function", "getTheme should be function");
|
|
});
|
|
|
|
test("setSource", function () {
|
|
stream.setSource([[1,2]]);
|
|
equal(stream.rawData.length, 1, "setSource no columnName ok");
|
|
equal(stream.rowName, undefined, "setSource no columnName ok");
|
|
equal(stream.columnName, undefined, "setSource no columnName ok");
|
|
equal(stream.source.length, 1, "setSource no columnName ok");
|
|
equal(stream.rowName, undefined, "setSource no columnName ok");
|
|
|
|
stream.setSource([[1,2],[3,4]]);
|
|
equal(stream.rawData.length, 2, "setSource no columnName ok");
|
|
equal(stream.rowName, undefined, "setSource no columnName ok");
|
|
equal(stream.columnName, undefined, "setSource no columnName ok");
|
|
equal(stream.source.length, 2, "setSource no columnName ok");
|
|
|
|
stream.setSource([["a","b"],[1,2]]);
|
|
equal(stream.rawData.length, 2, "setSource with columnName ok");
|
|
equal(stream.rowName, undefined, "setSource no rowName ok");
|
|
equal(stream.columnName.length, 2, "setSource with columnName ok");
|
|
equal(stream.columnName[0], "a", "setSource with columnName ok");
|
|
equal(stream.source.length, 1, "setSource with columnName ok");
|
|
|
|
stream.setSource([["a",1],["b",2]]);
|
|
equal(stream.rawData.length, 2, "setSource with rowName ok");
|
|
equal(stream.rowName.length, 2, "setSource with rowName ok");
|
|
equal(stream.rowName[0], "a", "setSource with rowName ok");
|
|
equal(stream.columnName, undefined, "setSource no columnName ok");
|
|
equal(stream.source.length, 2, "setSource with rowName ok");
|
|
|
|
stream.setSource([[,"a","b"],["c",1,2],["d",3,4]]);
|
|
equal(stream.rawData.length, 3, "setSource with rowName ok");
|
|
equal(stream.rowName.length, 2, "setSource with rowName ok");
|
|
equal(stream.rowName[0], "c", "setSource with rowName ok");
|
|
equal(stream.columnName.length, 2, "setSource with columnName ok");
|
|
equal(stream.columnName[0], "a", "setSource with columnName ok");
|
|
equal(stream.source.length, 2, "setSource with rowName ok");
|
|
|
|
stream.setOptions({columnNameUsed: true});
|
|
stream.setSource([[1,2,3],[4,5,6],[7,8,9]]);
|
|
equal(stream.rawData.length, 3, "setSource with forced columnNameUsed ok");
|
|
equal(stream.rowName, undefined, "");
|
|
equal(stream.columnName.length, 3, "");
|
|
equal(stream.columnName[2], 3, "");
|
|
equal(stream.source.length, 2, "");
|
|
|
|
stream.setOptions({columnNameUsed: "auto", rowNameUsed: true});
|
|
stream.setSource([[1,2,3],[4,5,6],[7,8,9]]);
|
|
equal(stream.rawData.length, 3, "setSource with forced rowNameUsed ok");
|
|
equal(stream.rowName.length, 3, "");
|
|
equal(stream.rowName[2], 7, "");
|
|
equal(stream.columnName, undefined, "");
|
|
equal(stream.source.length, 3, "");
|
|
|
|
stream.setOptions({columnNameUsed: true, rowNameUsed: true});
|
|
stream.setSource([[1,2,3],[4,5,6],[7,8,9]]);
|
|
equal(stream.rawData.length, 3, "setSource with forced rowNameUsed and columnNameUsed ok");
|
|
equal(stream.rowName.length, 2, "");
|
|
equal(stream.rowName[1], 7, "");
|
|
equal(stream.columnName.length, 2, "");
|
|
equal(stream.columnName[1], 3, "");
|
|
equal(stream.source.length, 2, "");
|
|
|
|
stream.setOptions({columnNameUsed: "auto", rowNameUsed: "auto"});
|
|
raises(function(){
|
|
stream.setSource([[,2,3],[4,5,6],[7,8,9]]);
|
|
}, "setSource can not judge column or row situation, throw an error");
|
|
});
|
|
|
|
|