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 |
' +
+ '-1 | foo | this is foo |
' +
+ '-1 | baz | this is baz |
' +
+ 'Assess |
' +
+ '-1 | bar | this 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 |
' +
+ '-1 | foo | this is foo |
' +
+ 'Hold |
' +
+ '-1 | baz | this is baz |
' +
+ 'Assess |
' +
+ '-1 | bar | this is bar |
' +
+ '
');
+ });
+ });
+});