aboutsummaryrefslogtreecommitdiffstats
path: root/web/nms.gathering.org/speedometer/c3-master/spec/api.zoom-spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'web/nms.gathering.org/speedometer/c3-master/spec/api.zoom-spec.js')
-rw-r--r--web/nms.gathering.org/speedometer/c3-master/spec/api.zoom-spec.js115
1 files changed, 115 insertions, 0 deletions
diff --git a/web/nms.gathering.org/speedometer/c3-master/spec/api.zoom-spec.js b/web/nms.gathering.org/speedometer/c3-master/spec/api.zoom-spec.js
new file mode 100644
index 0000000..4a65927
--- /dev/null
+++ b/web/nms.gathering.org/speedometer/c3-master/spec/api.zoom-spec.js
@@ -0,0 +1,115 @@
+describe('c3 api zoom', function () {
+ 'use strict';
+
+ var chart, args;
+
+ beforeEach(function (done) {
+ chart = window.initChart(chart, args, done);
+ });
+
+ describe('zoom', function () {
+
+ it('should update args', function () {
+ args = {
+ data: {
+ columns: [
+ ['data1', 30, 200, 100, 400, 150, 250],
+ ['data2', 50, 20, 10, 40, 15, 25],
+ ['data3', 150, 120, 110, 140, 115, 125]
+ ]
+ },
+ zoom: {
+ enabled: true
+ }
+ };
+ expect(true).toBeTruthy();
+ });
+
+ it('should be zoomed properly', function () {
+ var target = [3, 5], domain;
+ chart.zoom(target);
+ domain = chart.internal.x.domain();
+ expect(domain[0]).toBe(target[0]);
+ expect(domain[1]).toBe(target[1]);
+ });
+
+ it('should be zoomed properly again', function () {
+ var target = [1, 4], domain;
+ chart.zoom(target);
+ domain = chart.internal.x.domain();
+ expect(domain[0]).toBe(target[0]);
+ expect(domain[1]).toBe(target[1]);
+ });
+
+ it('should load timeseries data', function () {
+ args = {
+ data: {
+ x: 'date',
+ columns: [
+ ['date', '2014-01-01', '2014-01-02', '2014-08-01', '2014-10-19'],
+ ['data1', 30, 200, 100, 400]
+ ]
+ },
+ axis: {
+ x: {
+ type: 'timeseries'
+ }
+ },
+ zoom: {
+ enabled: true
+ }
+ };
+ expect(true).toBeTruthy();
+ });
+
+ it('should be zoomed properly', function () {
+ var target = [new Date(2014, 7, 1), new Date(2014, 8, 1)], domain;
+ chart.zoom(target);
+ domain = chart.internal.x.domain();
+ expect(+domain[0]).toBe(+target[0]);
+ expect(+domain[1]).toBe(+target[1]);
+ });
+
+ it('should be zoomed properly', function () {
+ var target = ['2014-08-01', '2014-09-01'], domain;
+ chart.zoom(target);
+ domain = chart.internal.x.domain();
+ expect(+domain[0]).toBe(+chart.internal.parseDate(target[0]));
+ expect(+domain[1]).toBe(+chart.internal.parseDate(target[1]));
+ });
+
+ });
+
+ describe('unzoom', function () {
+
+ it('should load indexed data', function () {
+ args = {
+ data: {
+ columns: [
+ ['data1', 30, 200, 100, 400, 150, 250]
+ ]
+ },
+ zoom: {
+ enabled: true
+ }
+ };
+ expect(true).toBeTruthy();
+ });
+
+ it('should be unzoomed properly', function () {
+ var target = [1, 4], orginal = chart.internal.x.domain(), domain;
+
+ chart.zoom(target);
+ domain = chart.internal.x.domain();
+ expect(domain[0]).toBe(target[0]);
+ expect(domain[1]).toBe(target[1]);
+
+ chart.unzoom();
+ domain = chart.internal.x.domain();
+ expect(domain[0]).toBe(orginal[0]);
+ expect(domain[1]).toBe(orginal[1]);
+ });
+
+ });
+
+});