(gd)
| 94 | } |
| 95 | |
| 96 | function checkParcatsSvg(gd) { |
| 97 | var fullLayout = gd._fullLayout; |
| 98 | var size = fullLayout._size; |
| 99 | |
| 100 | // Make sure we have a 512x512 area for traces |
| 101 | expect(size.h).toEqual(512); |
| 102 | expect(size.w).toEqual(512); |
| 103 | |
| 104 | // Check trace transform |
| 105 | var parcatsTraceSelection = d3Select('g.trace.parcats'); |
| 106 | |
| 107 | expect(parcatsTraceSelection.attr('transform')).toEqual( |
| 108 | strTranslate( |
| 109 | size.w * domain.x[0] + margin.r, |
| 110 | size.h * domain.y[0] + margin.t)); |
| 111 | |
| 112 | // Check dimension transforms |
| 113 | var dimensionSelection = parcatsTraceSelection |
| 114 | .selectAll('g.dimensions') |
| 115 | .selectAll('g.dimension'); |
| 116 | |
| 117 | dimensionSelection.each(function(dimension, dimInd) { |
| 118 | var expectedX = categoryLabelPad + dimInd * dimDx; |
| 119 | var expectedY = 0; |
| 120 | var expectedTransform = strTranslate(expectedX, expectedY); |
| 121 | expect(d3Select(this).attr('transform')).toEqual(expectedTransform); |
| 122 | }); |
| 123 | |
| 124 | // Check category transforms |
| 125 | dimensionSelection.each(function(dimension, dimDisplayInd) { |
| 126 | var categorySelection = d3Select(this).selectAll('g.category'); |
| 127 | var nextY = (3 - categorySelection.size()) * catSpacing / 2; |
| 128 | |
| 129 | categorySelection.each(function(category) { |
| 130 | var catSel = d3Select(this); |
| 131 | var catWidth = catSel.datum().width; |
| 132 | var catHeight = catSel.datum().height; |
| 133 | |
| 134 | var expectedTransform = strTranslate(0, nextY); |
| 135 | expect(catSel.attr('transform')).toEqual(expectedTransform); |
| 136 | nextY += category.height + catSpacing; |
| 137 | |
| 138 | // Check category label position |
| 139 | var isRightDim = dimDisplayInd === 2; |
| 140 | var catLabel = catSel.select('text.catlabel'); |
| 141 | |
| 142 | // Compute expected text properties based on |
| 143 | // whether this is the right-most dimension |
| 144 | var expectedTextAnchor = isRightDim ? 'start' : 'end'; |
| 145 | var expectedX = isRightDim ? catWidth + 5 : -5; |
| 146 | var expectedY = catHeight / 2; |
| 147 | |
| 148 | expect(catLabel.attr('text-anchor')).toEqual(expectedTextAnchor); |
| 149 | expect(catLabel.attr('x')).toEqual(expectedX.toString()); |
| 150 | expect(catLabel.attr('y')).toEqual(expectedY.toString()); |
| 151 | }); |
| 152 | }); |
| 153 | } |
no outgoing calls
no test coverage detected
searching dependent graphs…