From 00e342a4d752da173abcac11d243a1b4c7036c59 Mon Sep 17 00:00:00 2001 From: osulzhenko Date: Mon, 9 Dec 2024 19:15:39 +0200 Subject: [PATCH 1/5] Tests: Add adUnitCode to exception list --- .../model/request/auction/ImpExt.groovy | 2 + .../model/request/auction/Prebid.groovy | 2 +- .../functional/tests/BidderParamsSpec.groovy | 49 +++++++++++++++++-- 3 files changed, 47 insertions(+), 6 deletions(-) diff --git a/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExt.groovy b/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExt.groovy index e817a4540a0..06f0a57260f 100644 --- a/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExt.groovy +++ b/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExt.groovy @@ -27,6 +27,8 @@ class ImpExt { String all String skadn String general + @JsonProperty("adunitcode") + String adUnitCode AnyUnsupportedBidder anyUnsupportedBidder static ImpExt getDefaultImpExt() { diff --git a/src/test/groovy/org/prebid/server/functional/model/request/auction/Prebid.groovy b/src/test/groovy/org/prebid/server/functional/model/request/auction/Prebid.groovy index ba89f5680fa..6a6ae093ea5 100644 --- a/src/test/groovy/org/prebid/server/functional/model/request/auction/Prebid.groovy +++ b/src/test/groovy/org/prebid/server/functional/model/request/auction/Prebid.groovy @@ -29,7 +29,7 @@ class Prebid { List multibid Pbs pbs Server server - Map> bidderParams + Map bidderParams ExtPrebidFloors floors Map passThrough Events events diff --git a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy index cab50bd816b..92971b2d4c2 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy @@ -789,15 +789,22 @@ class BidderParamsSpec extends BaseSpec { gpid = PBSUtils.randomString skadn = PBSUtils.randomString tid = PBSUtils.randomString + adUnitCode = PBSUtils.randomString } def bidRequest = BidRequest.defaultBidRequest.tap { imp[0].ext = impExt } when: "PBS processes auction request" - defaultPbsService.sendAuctionRequest(bidRequest) + def response = defaultPbsService.sendAuctionRequest(bidRequest) + + then: "Response shouldn't contain error" + assert !response.ext?.errors - then: "Bidder request should contain same field as requested" + and: "Response shouldn't contain warning" + assert !response.ext?.warnings + + and: "Bidder request should contain same field as requested" def bidderRequest = bidder.getBidderRequest(bidRequest.id) verifyAll(bidderRequest.imp[0].ext) { bidder == impExt.generic @@ -809,7 +816,39 @@ class BidderParamsSpec extends BaseSpec { gpid == impExt.gpid skadn == impExt.skadn tid == impExt.tid + adUnitCode == impExt.adUnitCode + } + } + + def "PBS shouldn't emit warning and proceed auction when all ext.prebid.bidderParams fields known for PBS"() { + given: "Default bid request with populated ext.prebid.bidderParams" + def genericBidderParams = PBSUtils.randomString + def bidRequest = BidRequest.defaultBidRequest.tap { + ext.prebid.bidderParams = [ae : PBSUtils.randomString, + all : PBSUtils.randomString, + context : PBSUtils.randomString, + data : PBSUtils.randomString, + general : PBSUtils.randomString, + gpid : PBSUtils.randomString, + skadn : PBSUtils.randomString, + tid : PBSUtils.randomString, + adunitcode : PBSUtils.randomString, + (GENERIC.value): genericBidderParams + ] } + + when: "PBS processes auction request" + def response = defaultPbsService.sendAuctionRequest(bidRequest) + + then: "Response shouldn't contain error" + assert !response.ext?.errors + + and: "Response shouldn't contain warning" + assert !response.ext?.warnings + + "Bidder request should bidderParams only for bidder" + def bidderRequest = bidder.getBidderRequest(bidRequest.id) + assert bidderRequest.ext.prebid.bidderParams == [(GENERIC.value): genericBidderParams] } def "PBS should send request to bidder when adapters.bidder.meta-info.currency-accepted not specified"() { @@ -847,7 +886,7 @@ class BidderParamsSpec extends BaseSpec { def "PBS should send request to bidder when adapters.bidder.aliases.bidder.meta-info.currency-accepted not specified"() { given: "PBS with adapter configuration" def pbsService = pbsServiceFactory.getService( - "adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.enabled": "true", "adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString(), "adapters.generic.aliases.alias.meta-info.currency-accepted": "") @@ -955,7 +994,7 @@ class BidderParamsSpec extends BaseSpec { def "PBS should send request to bidder when adapters.bidder.aliases.bidder.meta-info.currency-accepted intersect with requested currency"() { given: "PBS with adapter configuration" def pbsService = pbsServiceFactory.getService( - "adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.enabled": "true", "adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString(), "adapters.generic.aliases.alias.meta-info.currency-accepted": "${USD},${EUR}".toString()) @@ -996,7 +1035,7 @@ class BidderParamsSpec extends BaseSpec { def "PBS shouldn't send request to bidder and emit warning when adapters.bidder.aliases.bidder.meta-info.currency-accepted not intersect with requested currency"() { given: "PBS with adapter configuration" def pbsService = pbsServiceFactory.getService( - "adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.enabled": "true", "adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString(), "adapters.generic.aliases.alias.meta-info.currency-accepted": "${JPY},${CHF}".toString()) From e65fc12853b94c30413d5bc7d2c1cb33803b4adc Mon Sep 17 00:00:00 2001 From: osulzhenko Date: Tue, 10 Dec 2024 15:37:21 +0200 Subject: [PATCH 2/5] update tests --- .../functional/model/request/auction/ImpExtPrebid.groovy | 2 ++ .../prebid/server/functional/tests/BidderParamsSpec.groovy | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExtPrebid.groovy b/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExtPrebid.groovy index fc771e59919..fda9915bb4e 100644 --- a/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExtPrebid.groovy +++ b/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExtPrebid.groovy @@ -19,6 +19,8 @@ class ImpExtPrebid { ImpExtPrebidFloors floors Map passThrough Map imp + @JsonProperty("adunitcode") + String adUnitCode static ImpExtPrebid getDefaultImpExtPrebid() { new ImpExtPrebid().tap { diff --git a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy index 92971b2d4c2..cae924068a3 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy @@ -789,7 +789,7 @@ class BidderParamsSpec extends BaseSpec { gpid = PBSUtils.randomString skadn = PBSUtils.randomString tid = PBSUtils.randomString - adUnitCode = PBSUtils.randomString + prebid.adUnitCode = PBSUtils.randomString } def bidRequest = BidRequest.defaultBidRequest.tap { imp[0].ext = impExt @@ -816,7 +816,7 @@ class BidderParamsSpec extends BaseSpec { gpid == impExt.gpid skadn == impExt.skadn tid == impExt.tid - adUnitCode == impExt.adUnitCode + prebid.adUnitCode == impExt.prebid.adUnitCode } } @@ -846,7 +846,7 @@ class BidderParamsSpec extends BaseSpec { and: "Response shouldn't contain warning" assert !response.ext?.warnings - "Bidder request should bidderParams only for bidder" + and: "Bidder request should bidderParams only for bidder" def bidderRequest = bidder.getBidderRequest(bidRequest.id) assert bidderRequest.ext.prebid.bidderParams == [(GENERIC.value): genericBidderParams] } From 588837cfbbd2864406df84193cb8e4189f899d2c Mon Sep 17 00:00:00 2001 From: osulzhenko Date: Tue, 10 Dec 2024 15:52:37 +0200 Subject: [PATCH 3/5] update tests --- .../server/functional/model/request/auction/ImpExt.groovy | 2 -- .../org/prebid/server/functional/tests/BidderParamsSpec.groovy | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExt.groovy b/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExt.groovy index 06f0a57260f..e817a4540a0 100644 --- a/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExt.groovy +++ b/src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExt.groovy @@ -27,8 +27,6 @@ class ImpExt { String all String skadn String general - @JsonProperty("adunitcode") - String adUnitCode AnyUnsupportedBidder anyUnsupportedBidder static ImpExt getDefaultImpExt() { diff --git a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy index cae924068a3..268095bc3d2 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy @@ -780,6 +780,7 @@ class BidderParamsSpec extends BaseSpec { given: "Default bid request with populated imp.ext" def impExt = ImpExt.getDefaultImpExt().tap { prebid.bidder.generic = null + prebid.adUnitCode = PBSUtils.randomString generic = new Generic() ae = PBSUtils.randomNumber all = PBSUtils.randomNumber @@ -789,7 +790,6 @@ class BidderParamsSpec extends BaseSpec { gpid = PBSUtils.randomString skadn = PBSUtils.randomString tid = PBSUtils.randomString - prebid.adUnitCode = PBSUtils.randomString } def bidRequest = BidRequest.defaultBidRequest.tap { imp[0].ext = impExt From 1ed39a1bcaabb5608debbb07a39fe006d9e5a68e Mon Sep 17 00:00:00 2001 From: osulzhenko Date: Tue, 17 Dec 2024 13:33:42 +0200 Subject: [PATCH 4/5] update functional test --- .../org/prebid/server/functional/tests/BidderParamsSpec.groovy | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy index 268095bc3d2..f743505f6d6 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy @@ -820,7 +820,7 @@ class BidderParamsSpec extends BaseSpec { } } - def "PBS shouldn't emit warning and proceed auction when all ext.prebid.bidderParams fields known for PBS"() { + def "PBS should proceed with auction without warning when all ext.prebid.bidderParams fields are known"() { given: "Default bid request with populated ext.prebid.bidderParams" def genericBidderParams = PBSUtils.randomString def bidRequest = BidRequest.defaultBidRequest.tap { From b623edb825f7f9ec9220346ef8a706738884feca Mon Sep 17 00:00:00 2001 From: osulzhenko Date: Tue, 17 Dec 2024 13:41:02 +0200 Subject: [PATCH 5/5] update functional test --- .../org/prebid/server/functional/tests/BidderParamsSpec.groovy | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy index f743505f6d6..6fdc0c8a2d5 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy @@ -820,7 +820,7 @@ class BidderParamsSpec extends BaseSpec { } } - def "PBS should proceed with auction without warning when all ext.prebid.bidderParams fields are known"() { + def "PBS should proceed auction without warning when all ext.prebid.bidderParams fields are known"() { given: "Default bid request with populated ext.prebid.bidderParams" def genericBidderParams = PBSUtils.randomString def bidRequest = BidRequest.defaultBidRequest.tap {