Skip to content

Commit d9373aa

Browse files
committed
update tests for improved event data
1 parent ee1adf8 commit d9373aa

File tree

5 files changed

+64
-28
lines changed

5 files changed

+64
-28
lines changed

test/jasmine/tests/geo_test.js

+18-7
Original file line numberDiff line numberDiff line change
@@ -536,7 +536,7 @@ describe('Test geo interactions', function() {
536536
it('should contain the correct fields', function() {
537537
expect(Object.keys(ptData)).toEqual([
538538
'data', 'fullData', 'curveNumber', 'pointNumber',
539-
'lon', 'lat', 'location'
539+
'lon', 'lat', 'location', 'marker.size'
540540
]);
541541
expect(cnt).toEqual(1);
542542
});
@@ -547,6 +547,7 @@ describe('Test geo interactions', function() {
547547
expect(ptData.location).toBe(null);
548548
expect(ptData.curveNumber).toEqual(0);
549549
expect(ptData.pointNumber).toEqual(0);
550+
expect(ptData['marker.size']).toEqual(20);
550551
expect(cnt).toEqual(1);
551552
});
552553

@@ -598,7 +599,7 @@ describe('Test geo interactions', function() {
598599
it('should contain the correct fields', function() {
599600
expect(Object.keys(ptData)).toEqual([
600601
'data', 'fullData', 'curveNumber', 'pointNumber',
601-
'lon', 'lat', 'location'
602+
'lon', 'lat', 'location', 'marker.size'
602603
]);
603604
});
604605

@@ -608,6 +609,7 @@ describe('Test geo interactions', function() {
608609
expect(ptData.location).toBe(null);
609610
expect(ptData.curveNumber).toEqual(0);
610611
expect(ptData.pointNumber).toEqual(0);
612+
expect(ptData['marker.size']).toEqual(20);
611613
});
612614
});
613615

@@ -629,7 +631,7 @@ describe('Test geo interactions', function() {
629631
it('should contain the correct fields', function() {
630632
expect(Object.keys(ptData)).toEqual([
631633
'data', 'fullData', 'curveNumber', 'pointNumber',
632-
'lon', 'lat', 'location'
634+
'lon', 'lat', 'location', 'marker.size'
633635
]);
634636
});
635637

@@ -639,6 +641,7 @@ describe('Test geo interactions', function() {
639641
expect(ptData.location).toBe(null);
640642
expect(ptData.curveNumber).toEqual(0);
641643
expect(ptData.pointNumber).toEqual(0);
644+
expect(ptData['marker.size']).toEqual(20);
642645
});
643646
});
644647

@@ -1100,7 +1103,7 @@ describe('Test event property of interactions on a geo plot:', function() {
11001103

11011104
expect(Object.keys(pt)).toEqual([
11021105
'data', 'fullData', 'curveNumber', 'pointNumber', 'lon', 'lat',
1103-
'location'
1106+
'location', 'text', 'marker.size'
11041107
]);
11051108

11061109
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
@@ -1110,6 +1113,8 @@ describe('Test event property of interactions on a geo plot:', function() {
11101113
expect(pt.lon).toEqual(57.75, 'points[0].lon');
11111114
expect(pt.location).toEqual(57.75, 'points[0].location');
11121115
expect(pt.pointNumber).toEqual(0, 'points[0].pointNumber');
1116+
expect(pt.text).toEqual(20, 'points[0].text');
1117+
expect(pt['marker.size']).toEqual(20, 'points[0][\'marker.size\']');
11131118

11141119
expect(evt.clientX).toEqual(pointPos[0], 'event.clientX');
11151120
expect(evt.clientY).toEqual(pointPos[1], 'event.clientY');
@@ -1146,7 +1151,7 @@ describe('Test event property of interactions on a geo plot:', function() {
11461151

11471152
expect(Object.keys(pt)).toEqual([
11481153
'data', 'fullData', 'curveNumber', 'pointNumber', 'lon', 'lat',
1149-
'location'
1154+
'location', 'text', 'marker.size'
11501155
]);
11511156

11521157
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
@@ -1156,6 +1161,8 @@ describe('Test event property of interactions on a geo plot:', function() {
11561161
expect(pt.lon).toEqual(57.75, 'points[0].lon');
11571162
expect(pt.location).toEqual(57.75, 'points[0].location');
11581163
expect(pt.pointNumber).toEqual(0, 'points[0].pointNumber');
1164+
expect(pt.text).toEqual(20, 'points[0].text');
1165+
expect(pt['marker.size']).toEqual(20, 'points[0][\'marker.size\']');
11591166

11601167
expect(evt.clientX).toEqual(pointPos[0], 'event.clientX');
11611168
expect(evt.clientY).toEqual(pointPos[1], 'event.clientY');
@@ -1185,7 +1192,7 @@ describe('Test event property of interactions on a geo plot:', function() {
11851192

11861193
expect(Object.keys(pt)).toEqual([
11871194
'data', 'fullData', 'curveNumber', 'pointNumber', 'lon', 'lat',
1188-
'location'
1195+
'location', 'text', 'marker.size'
11891196
]);
11901197

11911198
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
@@ -1195,6 +1202,8 @@ describe('Test event property of interactions on a geo plot:', function() {
11951202
expect(pt.lon).toEqual(57.75, 'points[0].lon');
11961203
expect(pt.location).toEqual(57.75, 'points[0].location');
11971204
expect(pt.pointNumber).toEqual(0, 'points[0].pointNumber');
1205+
expect(pt.text).toEqual(20, 'points[0].text');
1206+
expect(pt['marker.size']).toEqual(20, 'points[0][\'marker.size\']');
11981207

11991208
expect(evt.clientX).toEqual(pointPos[0], 'event.clientX');
12001209
expect(evt.clientY).toEqual(pointPos[1], 'event.clientY');
@@ -1219,7 +1228,7 @@ describe('Test event property of interactions on a geo plot:', function() {
12191228

12201229
expect(Object.keys(pt)).toEqual([
12211230
'data', 'fullData', 'curveNumber', 'pointNumber', 'lon', 'lat',
1222-
'location'
1231+
'location', 'text', 'marker.size'
12231232
]);
12241233

12251234
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
@@ -1229,6 +1238,8 @@ describe('Test event property of interactions on a geo plot:', function() {
12291238
expect(pt.lon).toEqual(57.75, 'points[0].lon');
12301239
expect(pt.location).toEqual(57.75, 'points[0].location');
12311240
expect(pt.pointNumber).toEqual(0, 'points[0].pointNumber');
1241+
expect(pt.text).toEqual(20, 'points[0].text');
1242+
expect(pt['marker.size']).toEqual(20, 'points[0][\'marker.size\']');
12321243

12331244
expect(evt.clientX).toEqual(nearPos[0], 'event.clientX');
12341245
expect(evt.clientY).toEqual(nearPos[1], 'event.clientY');

test/jasmine/tests/gl2d_click_test.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -114,10 +114,10 @@ describe('Test hover and click interactions', function() {
114114

115115
var pt = actual.points[0];
116116

117-
expect(Object.keys(pt)).toEqual([
117+
expect(Object.keys(pt)).toEqual(jasmine.arrayContaining([
118118
'x', 'y', 'curveNumber', 'pointNumber',
119119
'data', 'fullData', 'xaxis', 'yaxis'
120-
], 'event data keys');
120+
]), 'event data keys');
121121

122122
expect(typeof pt.data.uid).toEqual('string', 'uid');
123123
expect(pt.xaxis.domain.length).toEqual(2, 'xaxis');

test/jasmine/tests/gl_plot_interact_test.js

+17-4
Original file line numberDiff line numberDiff line change
@@ -72,17 +72,21 @@ describe('Test gl3d plots', function() {
7272
expect(text.style('fill')).toEqual(fontColor, 'font.color');
7373
}
7474

75-
function assertEventData(x, y, z, curveNumber, pointNumber) {
76-
expect(Object.keys(ptData)).toEqual([
75+
function assertEventData(x, y, z, curveNumber, pointNumber, extra) {
76+
expect(Object.keys(ptData)).toEqual(jasmine.arrayContaining([
7777
'x', 'y', 'z',
7878
'data', 'fullData', 'curveNumber', 'pointNumber'
79-
], 'correct hover data fields');
79+
]), 'correct hover data fields');
8080

8181
expect(ptData.x).toEqual(x, 'x val');
8282
expect(ptData.y).toEqual(y, 'y val');
8383
expect(ptData.z).toEqual(z, 'z val');
8484
expect(ptData.curveNumber).toEqual(curveNumber, 'curveNumber');
8585
expect(ptData.pointNumber).toEqual(pointNumber, 'pointNumber');
86+
87+
Object.keys(extra || {}).forEach(function(k) {
88+
expect(ptData[k]).toBe(extra[k], k + ' val');
89+
});
8690
}
8791

8892
beforeEach(function() {
@@ -114,7 +118,12 @@ describe('Test gl3d plots', function() {
114118
.then(delay)
115119
.then(function() {
116120
assertHoverText('x: 140.72', 'y: −96.97', 'z: −96.97');
117-
assertEventData(140.72, -96.97, -96.97, 0, 2);
121+
assertEventData(140.72, -96.97, -96.97, 0, 2, {
122+
'marker.symbol': 'cross',
123+
'marker.size': 30,
124+
'marker.color': 'orange',
125+
'marker.line.color': undefined
126+
});
118127
assertHoverLabelStyle('rgb(0, 0, 255)', 'rgb(255, 255, 255)', 13, 'Arial', 'rgb(255, 255, 255)');
119128

120129
return Plotly.restyle(gd, {
@@ -239,6 +248,10 @@ describe('Test gl3d plots', function() {
239248
})
240249
.then(_hover)
241250
.then(function() {
251+
assertEventData(1, 2, 43, 0, [1, 2], {
252+
'hoverinfo': 'y',
253+
'hoverlabel.font.color': 'cyan'
254+
});
242255
assertHoverLabelStyle('rgb(255, 255, 255)', 'rgb(68, 68, 68)', 9, 'Arial', 'rgb(0, 255, 255)');
243256

244257
var label = d3.selectAll('g.hovertext');

test/jasmine/tests/scattermapbox_test.js

+8-8
Original file line numberDiff line numberDiff line change
@@ -591,8 +591,8 @@ describe('@noCI Test plotly events on a scattermapbox plot:', function() {
591591
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
592592
expect(typeof pt.data).toEqual(typeof {}, 'points[0].data');
593593
expect(typeof pt.fullData).toEqual(typeof {}, 'points[0].fullData');
594-
expect(pt.lat).toEqual(undefined, 'points[0].lat');
595-
expect(pt.lon).toEqual(undefined, 'points[0].lon');
594+
expect(pt.lat).toEqual(10, 'points[0].lat');
595+
expect(pt.lon).toEqual(10, 'points[0].lon');
596596
expect(pt.pointNumber).toEqual(0, 'points[0].pointNumber');
597597

598598
expect(evt.clientX).toEqual(pointPos[0], 'event.clientX');
@@ -635,8 +635,8 @@ describe('@noCI Test plotly events on a scattermapbox plot:', function() {
635635
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
636636
expect(typeof pt.data).toEqual(typeof {}, 'points[0].data');
637637
expect(typeof pt.fullData).toEqual(typeof {}, 'points[0].fullData');
638-
expect(pt.lat).toEqual(undefined, 'points[0].lat');
639-
expect(pt.lon).toEqual(undefined, 'points[0].lon');
638+
expect(pt.lat).toEqual(10, 'points[0].lat');
639+
expect(pt.lon).toEqual(10, 'points[0].lon');
640640
expect(pt.pointNumber).toEqual(0, 'points[0].pointNumber');
641641

642642
expect(evt.clientX).toEqual(pointPos[0], 'event.clientX');
@@ -672,8 +672,8 @@ describe('@noCI Test plotly events on a scattermapbox plot:', function() {
672672
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
673673
expect(typeof pt.data).toEqual(typeof {}, 'points[0].data');
674674
expect(typeof pt.fullData).toEqual(typeof {}, 'points[0].fullData');
675-
expect(pt.lat).toEqual(undefined, 'points[0].lat');
676-
expect(pt.lon).toEqual(undefined, 'points[0].lon');
675+
expect(pt.lat).toEqual(10, 'points[0].lat');
676+
expect(pt.lon).toEqual(10, 'points[0].lon');
677677
expect(pt.pointNumber).toEqual(0, 'points[0].pointNumber');
678678

679679
expect(evt.clientX).toEqual(pointPos[0], 'event.clientX');
@@ -704,8 +704,8 @@ describe('@noCI Test plotly events on a scattermapbox plot:', function() {
704704
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
705705
expect(typeof pt.data).toEqual(typeof {}, 'points[0].data');
706706
expect(typeof pt.fullData).toEqual(typeof {}, 'points[0].fullData');
707-
expect(pt.lat).toEqual(undefined, 'points[0].lat');
708-
expect(pt.lon).toEqual(undefined, 'points[0].lon');
707+
expect(pt.lat).toEqual(10, 'points[0].lat');
708+
expect(pt.lon).toEqual(10, 'points[0].lon');
709709
expect(pt.pointNumber).toEqual(0, 'points[0].pointNumber');
710710

711711
expect(evt.clientX).toEqual(nearPos[0], 'event.clientX');

test/jasmine/tests/ternary_test.js

+19-7
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ describe('ternary plots', function() {
163163
expect(hoverData).not.toBe(undefined, 'firing on data points');
164164
expect(Object.keys(hoverData)).toEqual([
165165
'data', 'fullData', 'curveNumber', 'pointNumber',
166-
'x', 'y', 'xaxis', 'yaxis'
166+
'x', 'y', 'xaxis', 'yaxis', 'a', 'b', 'c'
167167
], 'returning the correct event data keys');
168168
expect(hoverData.curveNumber).toEqual(0, 'returning the correct curve number');
169169
expect(hoverData.pointNumber).toEqual(0, 'returning the correct point number');
@@ -172,7 +172,7 @@ describe('ternary plots', function() {
172172
expect(unhoverData).not.toBe(undefined, 'firing on data points');
173173
expect(Object.keys(unhoverData)).toEqual([
174174
'data', 'fullData', 'curveNumber', 'pointNumber',
175-
'x', 'y', 'xaxis', 'yaxis'
175+
'x', 'y', 'xaxis', 'yaxis', 'a', 'b', 'c'
176176
], 'returning the correct event data keys');
177177
expect(unhoverData.curveNumber).toEqual(0, 'returning the correct curve number');
178178
expect(unhoverData.pointNumber).toEqual(0, 'returning the correct point number');
@@ -195,7 +195,7 @@ describe('ternary plots', function() {
195195
expect(ptData).not.toBe(undefined, 'firing on data points');
196196
expect(Object.keys(ptData)).toEqual([
197197
'data', 'fullData', 'curveNumber', 'pointNumber',
198-
'x', 'y', 'xaxis', 'yaxis'
198+
'x', 'y', 'xaxis', 'yaxis', 'a', 'b', 'c'
199199
], 'returning the correct event data keys');
200200
expect(ptData.curveNumber).toEqual(0, 'returning the correct curve number');
201201
expect(ptData.pointNumber).toEqual(0, 'returning the correct point number');
@@ -404,7 +404,7 @@ describe('Test event property of interactions on a ternary plot:', function() {
404404

405405
expect(Object.keys(pt)).toEqual([
406406
'data', 'fullData', 'curveNumber', 'pointNumber', 'x', 'y',
407-
'xaxis', 'yaxis'
407+
'xaxis', 'yaxis', 'a', 'b', 'c'
408408
]);
409409

410410
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
@@ -415,6 +415,9 @@ describe('Test event property of interactions on a ternary plot:', function() {
415415
expect(pt.y).toEqual(undefined, 'points[0].y');
416416
expect(typeof pt.xaxis).toEqual(typeof {}, 'points[0].xaxis');
417417
expect(typeof pt.yaxis).toEqual(typeof {}, 'points[0].yaxis');
418+
expect(pt.a).toEqual(2, 'points[0].a');
419+
expect(pt.b).toEqual(1, 'points[0].b');
420+
expect(pt.c).toEqual(1, 'points[0].c');
418421

419422
expect(evt.clientX).toEqual(pointPos[0], 'event.clientX');
420423
expect(evt.clientY).toEqual(pointPos[1], 'event.clientY');
@@ -451,7 +454,7 @@ describe('Test event property of interactions on a ternary plot:', function() {
451454

452455
expect(Object.keys(pt)).toEqual([
453456
'data', 'fullData', 'curveNumber', 'pointNumber', 'x', 'y',
454-
'xaxis', 'yaxis'
457+
'xaxis', 'yaxis', 'a', 'b', 'c'
455458
]);
456459

457460
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
@@ -462,6 +465,9 @@ describe('Test event property of interactions on a ternary plot:', function() {
462465
expect(pt.y).toEqual(undefined, 'points[0].y');
463466
expect(typeof pt.xaxis).toEqual(typeof {}, 'points[0].xaxis');
464467
expect(typeof pt.yaxis).toEqual(typeof {}, 'points[0].yaxis');
468+
expect(pt.a).toEqual(2, 'points[0].a');
469+
expect(pt.b).toEqual(1, 'points[0].b');
470+
expect(pt.c).toEqual(1, 'points[0].c');
465471

466472
expect(evt.clientX).toEqual(pointPos[0], 'event.clientX');
467473
expect(evt.clientY).toEqual(pointPos[1], 'event.clientY');
@@ -495,7 +501,7 @@ describe('Test event property of interactions on a ternary plot:', function() {
495501

496502
expect(Object.keys(pt)).toEqual([
497503
'data', 'fullData', 'curveNumber', 'pointNumber', 'x', 'y',
498-
'xaxis', 'yaxis'
504+
'xaxis', 'yaxis', 'a', 'b', 'c'
499505
]);
500506

501507
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
@@ -506,6 +512,9 @@ describe('Test event property of interactions on a ternary plot:', function() {
506512
expect(pt.y).toEqual(undefined, 'points[0].y');
507513
expect(typeof pt.xaxis).toEqual(typeof {}, 'points[0].xaxis');
508514
expect(typeof pt.yaxis).toEqual(typeof {}, 'points[0].yaxis');
515+
expect(pt.a).toEqual(2, 'points[0].a');
516+
expect(pt.b).toEqual(1, 'points[0].b');
517+
expect(pt.c).toEqual(1, 'points[0].c');
509518

510519
expect(xaxes0).toEqual(pt.xaxis, 'xaxes[0]');
511520
expect(xvals0).toEqual(-0.0016654247744483342, 'xaxes[0]');
@@ -538,7 +547,7 @@ describe('Test event property of interactions on a ternary plot:', function() {
538547

539548
expect(Object.keys(pt)).toEqual([
540549
'data', 'fullData', 'curveNumber', 'pointNumber', 'x', 'y',
541-
'xaxis', 'yaxis'
550+
'xaxis', 'yaxis', 'a', 'b', 'c'
542551
]);
543552

544553
expect(pt.curveNumber).toEqual(0, 'points[0].curveNumber');
@@ -549,6 +558,9 @@ describe('Test event property of interactions on a ternary plot:', function() {
549558
expect(pt.y).toEqual(undefined, 'points[0].y');
550559
expect(typeof pt.xaxis).toEqual(typeof {}, 'points[0].xaxis');
551560
expect(typeof pt.yaxis).toEqual(typeof {}, 'points[0].yaxis');
561+
expect(pt.a).toEqual(2, 'points[0].a');
562+
expect(pt.b).toEqual(1, 'points[0].b');
563+
expect(pt.c).toEqual(1, 'points[0].c');
552564

553565
expect(evt.clientX).toEqual(pointPos[0], 'event.clientX');
554566
expect(evt.clientY).toEqual(pointPos[1], 'event.clientY');

0 commit comments

Comments
 (0)