--- a/js/flotr2/spec/Graph.js +++ b/js/flotr2/spec/Graph.js @@ -1,80 +1,80 @@ describe('Graph', function () { - describe('Options', function () { - var - nodeA, nodeB, - a, b, x, i, - d1 = [], - options = {}; + describe('Options', function () { + var + nodeA, nodeB, + a, b, x, i, + d1 = [], + options = {}; - for (i = 0; i < 100; i++) { - x = (i*1000*3600*24*36.5); - d1.push([x, i+Math.random()*30+Math.sin(i/20+Math.random()*2)*20+Math.sin(i/10+Math.random())*10]); - } + for (i = 0; i < 100; i++) { + x = (i * 1000 * 3600 * 24 * 36.5); + d1.push([x, i + Math.random() * 30 + Math.sin(i / 20 + Math.random() * 2) * 20 + Math.sin(i / 10 + Math.random()) * 10]); + } - options = { - xaxis : { - mode : 'time', - labelsAngle : 45 - }, - selection : { - mode : 'x' - }, - HtmlText : false, - }; + options = { + xaxis: { + mode: 'time', + labelsAngle: 45 + }, + selection: { + mode: 'x' + }, + HtmlText: false, + }; - beforeEach(function () { - nodeA = buildNode(); - Flotr = TestFlotr; + beforeEach(function () { + nodeA = buildNode(); + Flotr = TestFlotr; + }); + + afterEach(function () { + destroyNode(nodeA); + a = b = null; + Flotr = null; + }); + + it('should override nested default options with user options', function () { + a = new TestFlotr.Graph(nodeA, d1, options); + expect(a.options.xaxis.mode).toEqual(options.xaxis.mode); + }); + + it('should retain default options if user option\'s nested object does not define property', function () { + a = new TestFlotr.Graph(nodeA, d1, options); + expect(a.options.xaxis.tickFormatter).toBeTruthy(); + }); + + it('should not affect default options when modifying graph options (objects)', function () { + a = new TestFlotr.Graph(nodeA, d1, options); + a.options.x2axis = { + titleAlign: 'left' + }; + a.options.xaxis.scaling = 'logarithmic'; + expect(TestFlotr.defaultOptions.xaxis.scaling).toEqual('linear'); + expect(TestFlotr.defaultOptions.x2axis.titleAlign).toBeFalsy(); + }); + + /* + it('should not affect default options when modifying graph options (arrays)', function() { + a = new TestFlotr.Graph(nodeA, d1, options); + a.options.colors[1] = '#bada55'; + expect(TestFlotr.defaultOptions.colors[1]).toNotBe('#bada55'); + }); + */ + }); - afterEach(function () { - destroyNode(nodeA); - a = b = null; - Flotr = null; - }); + function buildNode() { + var node = document.createElement('div'); + document.body.appendChild(node); + node.style.width = '320px'; + node.style.height = '240px'; + return node; + } - it('should override nested default options with user options', function() { - a = new TestFlotr.Graph(nodeA, d1, options); - expect(a.options.xaxis.mode).toEqual(options.xaxis.mode); - }); - - it('should retain default options if user option\'s nested object does not define property', function() { - a = new TestFlotr.Graph(nodeA, d1, options); - expect(a.options.xaxis.tickFormatter).toBeTruthy(); - }); - - it('should not affect default options when modifying graph options (objects)', function() { - a = new TestFlotr.Graph(nodeA, d1, options); - a.options.x2axis = { - titleAlign : 'left' - }; - a.options.xaxis.scaling = 'logarithmic'; - expect(TestFlotr.defaultOptions.xaxis.scaling).toEqual('linear'); - expect(TestFlotr.defaultOptions.x2axis.titleAlign).toBeFalsy(); - }); - - /* - it('should not affect default options when modifying graph options (arrays)', function() { - a = new TestFlotr.Graph(nodeA, d1, options); - a.options.colors[1] = '#bada55'; - expect(TestFlotr.defaultOptions.colors[1]).toNotBe('#bada55'); - }); - */ - - }); - - function buildNode () { - var node = document.createElement('div'); - document.body.appendChild(node); - node.style.width = '320px'; - node.style.height = '240px'; - return node; - } - - function destroyNode (node) { - document.body.removeChild(node); - } + function destroyNode(node) { + document.body.removeChild(node); + } });