diff --git a/test/index.html b/test/index.html index 5d4831dd..7a102b4f 100644 --- a/test/index.html +++ b/test/index.html @@ -55,6 +55,7 @@ + @@ -66,6 +67,7 @@ + diff --git a/test/view.flot.test.js b/test/view.flot.test.js new file mode 100644 index 00000000..4bf761f6 --- /dev/null +++ b/test/view.flot.test.js @@ -0,0 +1,71 @@ +module("View - Flot"); + +test('basics', function () { + var dataset = Fixture.getDataset(); + var view = new recline.View.Flot({ + model: dataset + }); + $('.fixtures').append(view.el); + equal(view.state.get('graphType'), 'lines-and-points'); + // view will auto render ... + assertPresent('.editor', view.elSidebar); + view.remove(); +}); + +test('initialize', function () { + var dataset = Fixture.getDataset(); + var view = new recline.View.Flot({ + model: dataset, + state: { + 'graphType': 'lines', + 'group': 'x', + 'series': ['y', 'z'] + } + }); + $('.fixtures').append(view.el); + equal(view.state.get('graphType'), 'lines'); + deepEqual(view.state.get('series'), ['y', 'z']); + + // check we have updated editor with state info + equal(view.elSidebar.find('.editor-type select').val(), 'lines'); + equal(view.elSidebar.find('.editor-group select').val(), 'x'); + var out = _.map(view.elSidebar.find('.editor-series select'), function($el) { + return $($el).val(); + }); + deepEqual(out, ['y', 'z']); + + view.remove(); +}); + +test('dates in graph view', function () { + expect(0); + var dataset = Fixture.getDataset(); + var view = new recline.View.Flot({ + model: dataset, + state: { + 'graphType': 'lines', + 'group': 'date', + 'series': ['y', 'z'] + } + }); + $('.fixtures').append(view.el); + + view.remove(); +}); + +test('FlotControls basics', function () { + var dataset = Fixture.getDataset(); + var view = new recline.View.FlotControls({ + model: dataset, + state: { + graphType: 'bars', + series: [] + } + }); + $('.fixtures').append(view.el); + equal(view.state.get('graphType'), 'bars'); + // view will auto render ... + assertPresent('.editor', view.el); + view.remove(); +}); +