MCPcopy
hub / github.com/plotly/plotly.js / checkParcatsSvg

Function checkParcatsSvg

test/jasmine/tests/parcats_test.js:96–153  ·  view source on GitHub ↗
(gd)

Source from the content-addressed store, hash-verified

94}
95
96function 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}

Callers 1

parcats_test.jsFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…