From 801bad5d1c386ce3d254a7426238c038181246fc Mon Sep 17 00:00:00 2001 From: Josh Mock Date: Wed, 20 May 2015 11:10:50 -0500 Subject: [PATCH] Add tests for RefTable --- src/graphing/ref-table.js | 2 +- test/graphing/ref-table-spec.js | 69 +++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 test/graphing/ref-table-spec.js diff --git a/src/graphing/ref-table.js b/src/graphing/ref-table.js index f21e50c..6adaade 100644 --- a/src/graphing/ref-table.js +++ b/src/graphing/ref-table.js @@ -53,7 +53,7 @@ tr.graphing.RefTable = function (radar) { html += '' + cycle + ''; blips[cycle].forEach(function (blip) { - html += '' + + html += '' + '' + blip.number() + '' + '' + blip.name() + '' + '' + blip.description() + '' + diff --git a/test/graphing/ref-table-spec.js b/test/graphing/ref-table-spec.js new file mode 100644 index 0000000..cdcc531 --- /dev/null +++ b/test/graphing/ref-table-spec.js @@ -0,0 +1,69 @@ +describe('tr.graphing.RefTable', function () { + var radar, toolsQuadrant, techniquesQuadrant, platformsQuadrant, languageFramework, element; + + beforeEach(function () { + toolsQuadrant = new tr.models.Quadrant('Tools'); + techniquesQuadrant = new tr.models.Quadrant('Techniques'); + platformsQuadrant = new tr.models.Quadrant('Platforms'); + languageFramework = new tr.models.Quadrant('Languages'); + + radar = new tr.models.Radar(); + radar.setFirstQuadrant(toolsQuadrant); + radar.setSecondQuadrant(techniquesQuadrant); + radar.setThirdQuadrant(platformsQuadrant); + radar.setFourthQuadrant(languageFramework); + + element = { innerHTML: '' }; + spyOn(document, 'querySelector').andReturn(element); + }); + + describe('render', function () { + it("groups blips by cycle", function () { + var adopt = new tr.models.Cycle('Adopt'); + var assess = new tr.models.Cycle('Assess'); + + toolsQuadrant.add([ + new tr.models.Blip('foo', adopt, true, 'this is foo'), + new tr.models.Blip('bar', assess, true, 'this is bar'), + new tr.models.Blip('baz', adopt, true, 'this is baz') + ]); + + var table = new tr.graphing.RefTable(radar); + table.init('#some-id').render(); + + expect(element.innerHTML).toEqual( + '' + + '' + + '' + + '' + + '' + + '' + + '
Adopt
-1foothis is foo
-1bazthis is baz
Assess
-1barthis is bar
'); + }); + + it("respects the assigned order of cycles", function () { + var adopt = new tr.models.Cycle('Adopt', 1); + var assess = new tr.models.Cycle('Assess', 3); + var hold = new tr.models.Cycle('Hold', 2); + + toolsQuadrant.add([ + new tr.models.Blip('foo', adopt, true, 'this is foo'), + new tr.models.Blip('bar', assess, true, 'this is bar'), + new tr.models.Blip('baz', hold, true, 'this is baz') + ]); + + var table = new tr.graphing.RefTable(radar); + table.init('#some-id').render(); + + expect(element.innerHTML).toEqual( + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '
Adopt
-1foothis is foo
Hold
-1bazthis is baz
Assess
-1barthis is bar
'); + }); + }); +}); -- 2.39.2