@@ -4014,10 +4014,11 @@ describe('hovermode: (x|y)unified', function() {
40144014 } ) ;
40154015 }
40164016
4017- function assertBgcolor ( color ) {
4017+ function assertRectColor ( color , bordercolor ) {
40184018 var hover = getHoverLabel ( ) ;
40194019 var bg = hover . select ( 'rect.bg' ) ;
4020- expect ( bg . node ( ) . style . fill ) . toBe ( color ) ;
4020+ if ( color ) expect ( bg . node ( ) . style . fill ) . toBe ( color ) ;
4021+ if ( bordercolor ) expect ( bg . node ( ) . style . stroke ) . toBe ( bordercolor ) ;
40214022 }
40224023
40234024 function assertSymbol ( exp ) {
@@ -4329,7 +4330,7 @@ describe('hovermode: (x|y)unified', function() {
43294330 . then ( done ) ;
43304331 } ) ;
43314332
4332- it ( 'label should have color of hoverlabel.bgcolor or legend.bgcolor or paper_bgcolor' , function ( done ) {
4333+ it ( 'label should have bgcolor/bordercolor from hoverlabel or legend or paper_bgcolor' , function ( done ) {
43334334 var mockCopy = Lib . extendDeep ( { } , mock ) ;
43344335 var bgcolor = [
43354336 'rgb(10, 10, 10)' ,
@@ -4342,49 +4343,53 @@ describe('hovermode: (x|y)unified', function() {
43424343 . then ( function ( gd ) {
43434344 _hover ( gd , { xval : 3 } ) ;
43444345
4345- assertBgcolor ( 'rgb(255, 255, 255)' ) ;
4346+ assertRectColor ( 'rgb(255, 255, 255)' , 'rgb(68, 68, 68 )') ;
43464347
43474348 // Set paper_bgcolor
43484349 return Plotly . relayout ( gd , 'paper_bgcolor' , bgcolor [ 0 ] ) ;
43494350 } )
43504351 . then ( function ( gd ) {
43514352 _hover ( gd , { xval : 3 } ) ;
43524353
4353- assertBgcolor ( bgcolor [ 0 ] ) ;
4354+ assertRectColor ( bgcolor [ 0 ] ) ;
43544355
43554356 // Set legend.bgcolor which should win over paper_bgcolor
43564357 return Plotly . relayout ( gd , {
43574358 'showlegend' : true ,
4358- 'legend.bgcolor' : bgcolor [ 1 ]
4359+ 'legend.bgcolor' : bgcolor [ 1 ] ,
4360+ 'legend.bordercolor' : bgcolor [ 1 ]
43594361 } ) ;
43604362 } )
43614363 . then ( function ( gd ) {
43624364 _hover ( gd , { xval : 3 } ) ;
43634365
4364- assertBgcolor ( bgcolor [ 1 ] ) ;
4366+ assertRectColor ( bgcolor [ 1 ] , bgcolor [ 1 ] ) ;
43654367
43664368 // Set hoverlabel.bgcolor which should win over legend.bgcolor
4367- return Plotly . relayout ( gd , 'hoverlabel.bgcolor' , bgcolor [ 2 ] ) ;
4369+ return Plotly . relayout ( gd , {
4370+ 'hoverlabel.bgcolor' : bgcolor [ 2 ] ,
4371+ 'hoverlabel.bordercolor' : bgcolor [ 2 ]
4372+ } ) ;
43684373 } )
43694374 . then ( function ( gd ) {
43704375 _hover ( gd , { xval : 3 } ) ;
43714376
4372- assertBgcolor ( bgcolor [ 2 ] ) ;
4377+ assertRectColor ( bgcolor [ 2 ] , bgcolor [ 2 ] ) ;
43734378
43744379 // Finally, check that a hoverlabel.bgcolor defined in template wins
43754380 delete mockCopy . layout ;
43764381 mockCopy . layout = {
43774382 hovermode : 'x unified' ,
4378- template : { layout : { hoverlabel : { bgcolor : bgcolor [ 3 ] } } } ,
4379- legend : { bgcolor : bgcolor [ 1 ] }
4383+ template : { layout : { hoverlabel : { bgcolor : bgcolor [ 3 ] , bordercolor : bgcolor [ 3 ] } } } ,
4384+ legend : { bgcolor : bgcolor [ 1 ] , bordercolor : bgcolor [ 1 ] }
43804385 } ;
43814386
43824387 return Plotly . newPlot ( gd , mockCopy ) ;
43834388 } )
43844389 . then ( function ( gd ) {
43854390 _hover ( gd , { xval : 3 } ) ;
43864391
4387- assertBgcolor ( bgcolor [ 3 ] ) ;
4392+ assertRectColor ( bgcolor [ 3 ] , bgcolor [ 3 ] ) ;
43884393 } )
43894394 . catch ( failTest )
43904395 . then ( done ) ;
0 commit comments