X-Git-Url: https://pwan.org/git/?p=tech-radar.git;a=blobdiff_plain;f=test%2Fgraphing%2Fref-table-spec.js;fp=test%2Fgraphing%2Fref-table-spec.js;h=cdcc531b597605915c7224d1a3f03fd678f20a93;hp=0000000000000000000000000000000000000000;hb=801bad5d1c386ce3d254a7426238c038181246fc;hpb=0301375800882633282197d107093a00bdc492de 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
'); + }); + }); +});