From 93124a3a447e62fdc8b53f7691785a203de8b671 Mon Sep 17 00:00:00 2001 From: rmartinez Date: Sun, 5 Apr 2020 18:38:48 -0700 Subject: [PATCH] Fix bug in rubicon bid adapter for fpd keywords --- modules/rubiconBidAdapter.js | 2 +- test/spec/modules/rubiconBidAdapter_spec.js | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/rubiconBidAdapter.js b/modules/rubiconBidAdapter.js index 616a17f470f..9131a8cb581 100644 --- a/modules/rubiconBidAdapter.js +++ b/modules/rubiconBidAdapter.js @@ -575,7 +575,7 @@ export const spec = { const keywords = (params.keywords || []).concat( utils.deepAccess(config.getConfig('fpd.user'), 'keywords') || [], utils.deepAccess(config.getConfig('fpd.context'), 'keywords') || []); - data.kw = keywords.length ? keywords.join(',') : ''; + data.kw = Array.isArray(keywords) && keywords.length ? keywords.join(',') : ''; /** * Prebid AdSlot diff --git a/test/spec/modules/rubiconBidAdapter_spec.js b/test/spec/modules/rubiconBidAdapter_spec.js index 4e999f4bdab..29cc6cb2c0a 100644 --- a/test/spec/modules/rubiconBidAdapter_spec.js +++ b/test/spec/modules/rubiconBidAdapter_spec.js @@ -1924,6 +1924,12 @@ describe('the rubicon adapter', function () { } }); }); + + it('should not fail if keywords param is not an array', function () { + bidderRequest.bids[0].params.keywords = 'a,b,c'; + const slotParams = spec.createSlotParams(bidderRequest.bids[0], bidderRequest); + expect(slotParams.kw).to.equal(''); + }); }); describe('hasVideoMediaType', function () {