From 0ecb0926b41e52f9ea004ee2aac109926fe4ec77 Mon Sep 17 00:00:00 2001 From: Aleksei Surovenko Date: Fri, 2 Jun 2023 15:57:09 +0200 Subject: [PATCH 1/2] ZetaGlobalSsp: process all sizes in banner.format --- modules/zeta_global_sspBidAdapter.js | 22 +++++-- .../modules/zeta_global_sspBidAdapter_spec.js | 57 +++++++++++++++++++ 2 files changed, 75 insertions(+), 4 deletions(-) diff --git a/modules/zeta_global_sspBidAdapter.js b/modules/zeta_global_sspBidAdapter.js index 8ad6fc2305e5..4f13787e219b 100644 --- a/modules/zeta_global_sspBidAdapter.js +++ b/modules/zeta_global_sspBidAdapter.js @@ -264,10 +264,24 @@ function buildBanner(request) { request.mediaTypes.banner.sizes) { sizes = request.mediaTypes.banner.sizes; } - return { - w: sizes[0][0], - h: sizes[0][1] - }; + if (sizes.length > 1) { + const format = sizes.map(s => { + return { + w: s[0], + h: s[1] + } + }); + return { + w: sizes[0][0], + h: sizes[0][1], + format: format + } + } else { + return { + w: sizes[0][0], + h: sizes[0][1] + } + } } function buildVideo(request) { diff --git a/test/spec/modules/zeta_global_sspBidAdapter_spec.js b/test/spec/modules/zeta_global_sspBidAdapter_spec.js index 6a99560b9cba..13c04c05cfb7 100644 --- a/test/spec/modules/zeta_global_sspBidAdapter_spec.js +++ b/test/spec/modules/zeta_global_sspBidAdapter_spec.js @@ -127,6 +127,29 @@ describe('Zeta Ssp Bid Adapter', function () { timeout: 500 }]; + const bannerWithFewSizesRequest = [{ + bidId: 12345, + auctionId: 67890, + mediaTypes: { + banner: { + sizes: [[300, 250],[200, 240],[100, 150]], + } + }, + refererInfo: { + page: 'http://www.zetaglobal.com/page?param=value', + domain: 'www.zetaglobal.com', + }, + gdprConsent: { + gdprApplies: 1, + consentString: 'consentString' + }, + schain: schain, + uspConsent: 'someCCPAString', + params: params, + userIdAsEids: eids, + timeout: 500 + }]; + const videoRequest = [{ bidId: 112233, auctionId: 667788, @@ -408,4 +431,38 @@ describe('Zeta Ssp Bid Adapter', function () { expect(payload.imp[0].tagid).to.eql(params.tagid); }); + + it('Test if only one size', function () { + const request = spec.buildRequests(bannerRequest, bannerRequest[0]); + const payload = JSON.parse(request.data); + + // banner + expect(payload.imp[0].banner.w).to.eql(300); + expect(payload.imp[0].banner.h).to.eql(250); + + expect(payload.imp[0].banner.format).to.be.undefined; + }); + + it('Test few sizes provided in format', function () { + const request = spec.buildRequests(bannerWithFewSizesRequest, bannerWithFewSizesRequest[0]); + const payload = JSON.parse(request.data); + + // banner + expect(payload.imp[0].banner.w).to.eql(300); + expect(payload.imp[0].banner.h).to.eql(250); + + expect(payload.imp[0].banner.format.length).to.eql(3); + + // format[0] + expect(payload.imp[0].banner.format[0].w).to.eql(300); + expect(payload.imp[0].banner.format[0].h).to.eql(250); + + // format[1] + expect(payload.imp[0].banner.format[1].w).to.eql(200); + expect(payload.imp[0].banner.format[1].h).to.eql(240); + + // format[2] + expect(payload.imp[0].banner.format[2].w).to.eql(100); + expect(payload.imp[0].banner.format[2].h).to.eql(150); + }); }); From ce0798cdfaa2cbf8f2424e8524c3158a771da207 Mon Sep 17 00:00:00 2001 From: Chris Huie Date: Fri, 2 Jun 2023 08:50:12 -0700 Subject: [PATCH 2/2] Fix linting --- test/spec/modules/zeta_global_sspBidAdapter_spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/spec/modules/zeta_global_sspBidAdapter_spec.js b/test/spec/modules/zeta_global_sspBidAdapter_spec.js index 13c04c05cfb7..28d7ba21de46 100644 --- a/test/spec/modules/zeta_global_sspBidAdapter_spec.js +++ b/test/spec/modules/zeta_global_sspBidAdapter_spec.js @@ -132,7 +132,7 @@ describe('Zeta Ssp Bid Adapter', function () { auctionId: 67890, mediaTypes: { banner: { - sizes: [[300, 250],[200, 240],[100, 150]], + sizes: [[300, 250], [200, 240], [100, 150]], } }, refererInfo: {