From c326751f3774b22e4c93de23987823b790fecb83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 31 Oct 2018 10:57:42 -0400 Subject: [PATCH] fix legend for trace with typed array marker.size --- src/components/legend/style.js | 2 +- test/jasmine/tests/scatter_test.js | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/components/legend/style.js b/src/components/legend/style.js index 21afb93c07f..bed8680ecbc 100644 --- a/src/components/legend/style.js +++ b/src/components/legend/style.js @@ -148,7 +148,7 @@ module.exports = function style(s, gd) { function boundVal(attrIn, arrayToValFn, bounds) { var valIn = Lib.nestedProperty(trace, attrIn).get(); - var valToBound = (Array.isArray(valIn) && arrayToValFn) ? + var valToBound = (Lib.isArrayOrTypedArray(valIn) && arrayToValFn) ? arrayToValFn(valIn) : valIn; diff --git a/test/jasmine/tests/scatter_test.js b/test/jasmine/tests/scatter_test.js index cca7961e1c3..fbb54df2ad5 100644 --- a/test/jasmine/tests/scatter_test.js +++ b/test/jasmine/tests/scatter_test.js @@ -987,6 +987,19 @@ describe('end-to-end scatter tests', function() { ['rgb(0, 255, 0)', 'rgb(0, 0, 255)', 'rgb(255, 0, 0)'], [40, 30, 20] ); + + return Plotly.relayout(gd, 'showlegend', true); + }) + .then(function() { + _assert( + ['rgb(0, 255, 0)', 'rgb(0, 0, 255)', 'rgb(255, 0, 0)'], + [40, 30, 20] + ); + + var legendPts = d3.select('.legend').selectAll('.scatterpts'); + expect(legendPts.size()).toBe(1, '# legend items'); + expect(getColor(legendPts.node())).toBe('rgb(0, 0, 0)', 'legend pt color'); + expect(getMarkerSize(legendPts.node())).toBe(16, 'legend pt size'); }) .catch(failTest) .then(done);