*
* @author konigsberg@google.com (Robert Konigsberg)
*/
-var FormatsTestCase = TestCase("formats");
-FormatsTestCase.prototype.setUp = function() {
- document.body.innerHTML = "<div id='graph'></div>";
-};
+import Dygraph from '../../src/dygraph';
-FormatsTestCase.prototype.tearDown = function() {
-};
+describe("formats", function() {
-FormatsTestCase.prototype.dataString =
+cleanupAfterEach();
+
+var dataString =
"X,Y\n" +
"0,-1\n" +
"1,0\n" +
"2,1\n" +
"3,0\n";
-FormatsTestCase.prototype.dataArray =
+var dataArray =
[[0,-1],
[1,0],
[2,1],
[3,0]];
+var BASE_OPTS = {labels: ['X', 'Y']};
-FormatsTestCase.prototype.testCsv = function() {
- var data = this.dataString;
+it('testCsv', function() {
+ var data = dataString;
var graph = document.getElementById("graph");
var g = new Dygraph(graph, data, {});
- this.assertData(g);
-};
+ assertData(g);
+});
-FormatsTestCase.prototype.testArray = function() {
- var data = this.dataArray;
+it('testArray', function() {
+ var data = dataArray;
var graph = document.getElementById("graph");
- var g = new Dygraph(graph, data, {});
- this.assertData(g);
-};
+ var g = new Dygraph(graph, data, BASE_OPTS);
+ assertData(g);
+});
-FormatsTestCase.prototype.testFunctionReturnsCsv = function() {
- var string = this.dataString;
- var data = function() { return string; };
+it('testFunctionReturnsCsv', function() {
+ var data = function() { return dataString; };
var graph = document.getElementById("graph");
var g = new Dygraph(graph, data, {});
- // this.assertData(g);
- console.log("x");
-};
+ assertData(g);
+});
-FormatsTestCase.prototype.testFunctionDefinesArray = function() {
- var array = this.dataArray;
+it('testFunctionDefinesArray', function() {
+ var array = dataArray;
var data = function() { return array; }
var graph = document.getElementById("graph");
- var g = new Dygraph(graph, data, {});
- this.assertData(g);
-};
+ var g = new Dygraph(graph, data, BASE_OPTS);
+ assertData(g);
+});
-FormatsTestCase.prototype.testXValueParser = function() {
+it('testXValueParser', function() {
var data =
"X,Y\n" +
"d,-1\n" +
var graph = document.getElementById("graph");
var g = new Dygraph(graph, data, {
xValueParser : function(str) {
- assertEquals(1, str.length);
+ assert.equal(1, str.length);
return str.charCodeAt(0) - "a".charCodeAt(0);
}
});
- assertEquals(3, g.getValue(0, 0));
- assertEquals(4, g.getValue(1, 0));
- assertEquals(5, g.getValue(2, 0));
- assertEquals(6, g.getValue(3, 0));
-};
+ assert.equal(3, g.getValue(0, 0));
+ assert.equal(4, g.getValue(1, 0));
+ assert.equal(5, g.getValue(2, 0));
+ assert.equal(6, g.getValue(3, 0));
+});
+
+it('should throw on strings in native format', () => {
+ assert.throws(() => {
+ new Dygraph('graph', [['1', '10'], ['2', '20']])
+ }, /expected number or date/i);
-FormatsTestCase.prototype.assertData = function(g) {
- var expected = this.dataArray;
+ assert.throws(() => {
+ new Dygraph('graph', [[new Date(), '10'], [new Date(), '20']])
+ }, /expected number or array/i);
+});
- assertEquals(4, g.numRows());
- assertEquals(2, g.numColumns());
+var assertData = function(g) {
+ var expected = dataArray;
+
+ assert.equal(4, g.numRows());
+ assert.equal(2, g.numColumns());
for (var i = 0; i < 4; i++) {
for (var j = 0; j < 2; j++) {
- assertEquals(expected[i][j], g.getValue(i, j));
+ assert.equal(expected[i][j], g.getValue(i, j));
}
}
-}
+};
+
+});