@@ -5,7 +5,10 @@ var d3 = require('d3');
5
5
var createGraphDiv = require ( '../assets/create_graph_div' ) ;
6
6
var destroyGraphDiv = require ( '../assets/destroy_graph_div' ) ;
7
7
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 ;
9
12
10
13
// cartesian click events events use the hover data
11
14
// from the mousemove events and then simulate
@@ -131,25 +134,6 @@ describe('Test hover and click interactions', function() {
131
134
expect ( String ( pt . pointNumber ) ) . toBe ( String ( expected . pointNumber ) , msg + ' - point number' ) ;
132
135
}
133
136
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
-
153
137
// returns basic hover/click/unhover runner for one xy position
154
138
function makeRunner ( pos , expected , opts ) {
155
139
opts = opts || { } ;
@@ -166,12 +150,16 @@ describe('Test hover and click interactions', function() {
166
150
. then ( _hover )
167
151
. then ( function ( eventData ) {
168
152
assertEventData ( eventData , expected ) ;
153
+
169
154
var g = d3 . select ( 'g.hovertext' ) ;
170
155
if ( g . node ( ) === null ) {
171
156
expect ( expected . noHoverLabel ) . toBe ( true ) ;
157
+ } else {
158
+ assertHoverLabelStyle ( g , expected , opts . msg ) ;
159
+ }
160
+ if ( expected . label ) {
161
+ assertHoverLabelContent ( [ expected . label , null ] ) ;
172
162
}
173
- else assertHoverLabelStyle ( g , expected , opts . msg ) ;
174
- assertHoveLabelContent ( expected ) ;
175
163
} )
176
164
. then ( _click )
177
165
. then ( function ( eventData ) {
@@ -211,7 +199,7 @@ describe('Test hover and click interactions', function() {
211
199
var run = makeRunner ( [ 634 , 321 ] , {
212
200
x : 15.772 ,
213
201
y : 0.387 ,
214
- label : [ '0.387' ] ,
202
+ label : [ '0.387' , null ] ,
215
203
curveNumber : 0 ,
216
204
pointNumber : 33 ,
217
205
bgcolor : 'rgb(0, 0, 255)' ,
0 commit comments