From 466c4ad517dd9c30ae7816752ff65a89a952da76 Mon Sep 17 00:00:00 2001 From: Ryan Schweitzer Date: Mon, 17 Oct 2022 17:56:08 +0200 Subject: [PATCH 1/2] Added adjustment for aliasing unregistered bidders for server-side --- modules/prebidServerBidAdapter/index.js | 2 +- .../modules/prebidServerBidAdapter_spec.js | 25 +++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/modules/prebidServerBidAdapter/index.js b/modules/prebidServerBidAdapter/index.js index 856b962e8a0..3a082b3199f 100644 --- a/modules/prebidServerBidAdapter/index.js +++ b/modules/prebidServerBidAdapter/index.js @@ -558,7 +558,7 @@ Object.assign(ORTB2.prototype, { const bidder = adapterManager.bidderRegistry[bid.bidder]; // adding alias only if alias source bidder exists and alias isn't configured to be standalone // pbs adapter - if (bidder && !bidder.getSpec().skipPbsAliasing) { + if (!bidder || !bidder.getSpec().skipPbsAliasing) { aliases[bid.bidder] = adapterManager.aliasRegistry[bid.bidder]; } } diff --git a/test/spec/modules/prebidServerBidAdapter_spec.js b/test/spec/modules/prebidServerBidAdapter_spec.js index b5209e5be12..fc88c659f71 100644 --- a/test/spec/modules/prebidServerBidAdapter_spec.js +++ b/test/spec/modules/prebidServerBidAdapter_spec.js @@ -19,6 +19,7 @@ import { auctionManager } from '../../../src/auctionManager.js'; import { stubAuctionIndex } from '../../helpers/indexStub.js'; import { registerBidder } from 'src/adapters/bidderFactory.js'; import {getGlobal} from '../../../src/prebidGlobal.js'; +import { hasConsoleLogger } from '../../../src/utils.js'; let CONFIG = { accountId: '1', @@ -1466,6 +1467,30 @@ describe('S2S Adapter', function () { }); }); + it('unregistered bidder should alias', function () { + const adjustedConfig = utils.deepClone(CONFIG); + adjustedConfig.bidders = 'bidderD' + config.setConfig({ s2sConfig: adjustedConfig }); + + const aliasBidder = { + bidder: 'bidderD', + params: { + unit: '10433394', + } + }; + + $$PREBID_GLOBAL$$.aliasBidder('mockBidder', aliasBidder.bidder); + + const request = utils.deepClone(REQUEST); + request.ad_units[0].bids = [aliasBidder]; + request.s2sConfig = adjustedConfig; + + adapter.callBids(request, BID_REQUESTS, addBidResponse, done, ajax); + + const requestBid = JSON.parse(server.requests[0].requestBody); + expect(requestBid.ext.prebid.aliases).to.deep.equal({ bidderD: 'mockBidder' }); + }); + it('adds dynamic aliases to request', function () { config.setConfig({ s2sConfig: CONFIG }); From 925ef36ceb24a14bd70c33cc370d2d68501c62e5 Mon Sep 17 00:00:00 2001 From: Ryan Schweitzer Date: Mon, 17 Oct 2022 17:59:08 +0200 Subject: [PATCH 2/2] removed import --- test/spec/modules/prebidServerBidAdapter_spec.js | 1 - 1 file changed, 1 deletion(-) diff --git a/test/spec/modules/prebidServerBidAdapter_spec.js b/test/spec/modules/prebidServerBidAdapter_spec.js index fc88c659f71..4b9efa72e61 100644 --- a/test/spec/modules/prebidServerBidAdapter_spec.js +++ b/test/spec/modules/prebidServerBidAdapter_spec.js @@ -19,7 +19,6 @@ import { auctionManager } from '../../../src/auctionManager.js'; import { stubAuctionIndex } from '../../helpers/indexStub.js'; import { registerBidder } from 'src/adapters/bidderFactory.js'; import {getGlobal} from '../../../src/prebidGlobal.js'; -import { hasConsoleLogger } from '../../../src/utils.js'; let CONFIG = { accountId: '1',