Skip to content

Commit 90e2de1

Browse files
committed
replace hover-label test boiler-plate with assertHoverLabelContent
1 parent 4cf489e commit 90e2de1

7 files changed

+211
-219
lines changed

test/jasmine/tests/gl2d_click_test.js

+11-23
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@ var d3 = require('d3');
55
var createGraphDiv = require('../assets/create_graph_div');
66
var destroyGraphDiv = require('../assets/destroy_graph_div');
77
var fail = require('../assets/fail_test.js');
8-
var assertHoverLabelStyle = require('../assets/custom_assertions').assertHoverLabelStyle;
8+
9+
var customAssertions = require('../assets/custom_assertions');
10+
var assertHoverLabelStyle = customAssertions.assertHoverLabelStyle;
11+
var assertHoverLabelContent = customAssertions.assertHoverLabelContent;
912

1013
// cartesian click events events use the hover data
1114
// from the mousemove events and then simulate
@@ -131,25 +134,6 @@ describe('Test hover and click interactions', function() {
131134
expect(String(pt.pointNumber)).toBe(String(expected.pointNumber), msg + ' - point number');
132135
}
133136

134-
function assertHoveLabelContent(expected) {
135-
var label = expected.label;
136-
137-
if(label === undefined) return;
138-
139-
var g = d3.select('.hovertext');
140-
141-
if(label === null) {
142-
expect(g.size()).toBe(0);
143-
} else {
144-
var lines = g.selectAll('text.nums');
145-
146-
expect(lines.size()).toBe(label.length);
147-
lines.each(function(_, i) {
148-
expect(d3.select(this).text()).toEqual(label[i]);
149-
});
150-
}
151-
}
152-
153137
// returns basic hover/click/unhover runner for one xy position
154138
function makeRunner(pos, expected, opts) {
155139
opts = opts || {};
@@ -166,12 +150,16 @@ describe('Test hover and click interactions', function() {
166150
.then(_hover)
167151
.then(function(eventData) {
168152
assertEventData(eventData, expected);
153+
169154
var g = d3.select('g.hovertext');
170155
if(g.node() === null) {
171156
expect(expected.noHoverLabel).toBe(true);
157+
} else {
158+
assertHoverLabelStyle(g, expected, opts.msg);
159+
}
160+
if(expected.label) {
161+
assertHoverLabelContent([expected.label, null]);
172162
}
173-
else assertHoverLabelStyle(g, expected, opts.msg);
174-
assertHoveLabelContent(expected);
175163
})
176164
.then(_click)
177165
.then(function(eventData) {
@@ -211,7 +199,7 @@ describe('Test hover and click interactions', function() {
211199
var run = makeRunner([634, 321], {
212200
x: 15.772,
213201
y: 0.387,
214-
label: ['0.387'],
202+
label: ['0.387', null],
215203
curveNumber: 0,
216204
pointNumber: 33,
217205
bgcolor: 'rgb(0, 0, 255)',

test/jasmine/tests/gl_plot_interact_test.js

+7-12
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,10 @@ var fail = require('../assets/fail_test');
1111
var mouseEvent = require('../assets/mouse_event');
1212
var selectButton = require('../assets/modebar_button');
1313
var delay = require('../assets/delay');
14-
var assertHoverLabelStyle = require('../assets/custom_assertions').assertHoverLabelStyle;
14+
15+
var customAssertions = require('../assets/custom_assertions');
16+
var assertHoverLabelStyle = customAssertions.assertHoverLabelStyle;
17+
var assertHoverLabelContent = customAssertions.assertHoverLabelContent;
1518

1619
function countCanvases() {
1720
return d3.selectAll('canvas').size();
@@ -33,17 +36,9 @@ describe('Test gl3d plots', function() {
3336
var mock3 = require('@mocks/gl3d_autocolorscale');
3437

3538
function assertHoverText(xLabel, yLabel, zLabel, textLabel) {
36-
var node = d3.selectAll('g.hovertext');
37-
expect(node.size()).toEqual(1, 'hover text group');
38-
39-
var tspan = d3.selectAll('g.hovertext').selectAll('tspan')[0];
40-
expect(tspan[0].innerHTML).toEqual(xLabel, 'x val');
41-
expect(tspan[1].innerHTML).toEqual(yLabel, 'y val');
42-
expect(tspan[2].innerHTML).toEqual(zLabel, 'z val');
43-
44-
if(textLabel) {
45-
expect(tspan[3].innerHTML).toEqual(textLabel, 'text label');
46-
}
39+
var content = [xLabel, yLabel, zLabel];
40+
if(textLabel) content.push(textLabel);
41+
assertHoverLabelContent([[content, null], null]);
4742
}
4843

4944
function assertEventData(x, y, z, curveNumber, pointNumber, extra) {

0 commit comments

Comments
 (0)