Skip to content

Commit ff686a9

Browse files
authored
Test: Change the type of igs to not be an arrays (#3716)
* Change the type of `igs` to not be an arrays
1 parent 1d24d38 commit ff686a9

File tree

3 files changed

+54
-16
lines changed

3 files changed

+54
-16
lines changed

src/test/groovy/org/prebid/server/functional/model/request/auction/ImpExt.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ class ImpExt {
2929
String skadn
3030
String general
3131
@JsonProperty("igs")
32-
List<InterestGroupAuctionSupport> interestGroupAuctionSupports
32+
InterestGroupAuctionSupport interestGroupAuctionSupports
3333
AnyUnsupportedBidder anyUnsupportedBidder
3434

3535
static ImpExt getDefaultImpExt() {

src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -872,7 +872,7 @@ class BidderParamsSpec extends BaseSpec {
872872
prebid.bidder.generic = null
873873
prebid.adUnitCode = PBSUtils.randomString
874874
generic = new Generic()
875-
auctionEnvironment = PBSUtils.getRandomEnum(AuctionEnvironment)
875+
auctionEnvironment = PBSUtils.getRandomEnum(AuctionEnvironment, [AuctionEnvironment.SERVER_ORCHESTRATED, AuctionEnvironment.UNKNOWN])
876876
all = PBSUtils.randomNumber
877877
context = new ImpExtContext(data: new ImpExtContextData())
878878
data = new ImpExtContextData(pbAdSlot: PBSUtils.randomString)
@@ -1025,8 +1025,8 @@ class BidderParamsSpec extends BaseSpec {
10251025

10261026
def "PBS should send request to bidder when adapters.bidder.aliases.bidder.meta-info.currency-accepted not specified"() {
10271027
given: "PBS with adapter configuration"
1028-
def pbsConfig = ["adapters.generic.aliases.alias.enabled": "true",
1029-
"adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString(),
1028+
def pbsConfig = ["adapters.generic.aliases.alias.enabled" : "true",
1029+
"adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString(),
10301030
"adapters.generic.aliases.alias.meta-info.currency-accepted": ""]
10311031
def pbsService = pbsServiceFactory.getService(pbsConfig)
10321032

@@ -1144,8 +1144,8 @@ class BidderParamsSpec extends BaseSpec {
11441144

11451145
def "PBS should send request to bidder when adapters.bidder.aliases.bidder.meta-info.currency-accepted intersect with requested currency"() {
11461146
given: "PBS with adapter configuration"
1147-
def pbsConfig = ["adapters.generic.aliases.alias.enabled": "true",
1148-
"adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString(),
1147+
def pbsConfig = ["adapters.generic.aliases.alias.enabled" : "true",
1148+
"adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString(),
11491149
"adapters.generic.aliases.alias.meta-info.currency-accepted": "${USD},${EUR}".toString()]
11501150
def pbsService = pbsServiceFactory.getService(pbsConfig)
11511151

@@ -1188,8 +1188,8 @@ class BidderParamsSpec extends BaseSpec {
11881188

11891189
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"() {
11901190
given: "PBS with adapter configuration"
1191-
def pbsConfig = ["adapters.generic.aliases.alias.enabled": "true",
1192-
"adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString(),
1191+
def pbsConfig = ["adapters.generic.aliases.alias.enabled" : "true",
1192+
"adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString(),
11931193
"adapters.generic.aliases.alias.meta-info.currency-accepted": "${JPY},${CHF}".toString()]
11941194
def pbsService = pbsServiceFactory.getService(pbsConfig)
11951195

@@ -1242,7 +1242,7 @@ class BidderParamsSpec extends BaseSpec {
12421242
def bidRequest = BidRequest.defaultBidRequest.tap {
12431243
imp[0].ext.tap {
12441244
auctionEnvironment = requestedAuctionEnvironment
1245-
interestGroupAuctionSupports = [new InterestGroupAuctionSupport(auctionEnvironment: null)]
1245+
interestGroupAuctionSupports = new InterestGroupAuctionSupport(auctionEnvironment: null)
12461246
}
12471247
}
12481248

@@ -1252,7 +1252,7 @@ class BidderParamsSpec extends BaseSpec {
12521252
then: "Bidder request should imp[].{ae/ext.igs.ae} same value as requested"
12531253
def bidderRequest = bidder.getBidderRequest(bidRequest.id)
12541254
assert bidderRequest.imp[0].ext.auctionEnvironment == requestedAuctionEnvironment
1255-
assert bidderRequest.imp[0].ext.interestGroupAuctionSupports[0].auctionEnvironment == requestedAuctionEnvironment
1255+
assert bidderRequest.imp[0].ext.interestGroupAuctionSupports.auctionEnvironment == requestedAuctionEnvironment
12561256

12571257
where:
12581258
requestedAuctionEnvironment << [NOT_SUPPORTED, DEVICE_ORCHESTRATED]
@@ -1263,7 +1263,7 @@ class BidderParamsSpec extends BaseSpec {
12631263
def bidRequest = BidRequest.defaultBidRequest.tap {
12641264
imp[0].ext.tap {
12651265
auctionEnvironment = requestedAuctionEnvironment
1266-
interestGroupAuctionSupports = [new InterestGroupAuctionSupport(auctionEnvironment: null)]
1266+
interestGroupAuctionSupports = new InterestGroupAuctionSupport(auctionEnvironment: null)
12671267
}
12681268
}
12691269

@@ -1273,20 +1273,20 @@ class BidderParamsSpec extends BaseSpec {
12731273
then: "Bidder request should imp[].ae same value as requested"
12741274
def bidderRequest = bidder.getBidderRequest(bidRequest.id)
12751275
assert bidderRequest.imp[0].ext.auctionEnvironment == requestedAuctionEnvironment
1276-
assert !bidderRequest.imp[0].ext.interestGroupAuctionSupports[0].auctionEnvironment
1276+
assert !bidderRequest.imp[0].ext.interestGroupAuctionSupports.auctionEnvironment
12771277

12781278
where:
12791279
requestedAuctionEnvironment << [SERVER_ORCHESTRATED, UNKNOWN]
12801280
}
12811281

12821282
def "PBS shouldn't change auction environment in imp.ext.igs when it is present in both imp.ext and imp.ext.igs"() {
12831283
given: "Default bid request with populated imp.ext"
1284-
def extAuctionEnv = PBSUtils.getRandomEnum(AuctionEnvironment)
1285-
def extIgsAuctionEnv = PBSUtils.getRandomEnum(AuctionEnvironment)
1284+
def extAuctionEnv = PBSUtils.getRandomEnum(AuctionEnvironment, [SERVER_ORCHESTRATED, UNKNOWN])
1285+
def extIgsAuctionEnv = PBSUtils.getRandomEnum(AuctionEnvironment, [SERVER_ORCHESTRATED, UNKNOWN])
12861286
def bidRequest = BidRequest.defaultBidRequest.tap {
12871287
imp[0].ext.tap {
12881288
auctionEnvironment = extAuctionEnv
1289-
interestGroupAuctionSupports = [new InterestGroupAuctionSupport(auctionEnvironment: extIgsAuctionEnv)]
1289+
interestGroupAuctionSupports = new InterestGroupAuctionSupport(auctionEnvironment: extIgsAuctionEnv)
12901290
}
12911291
}
12921292

@@ -1296,6 +1296,6 @@ class BidderParamsSpec extends BaseSpec {
12961296
then: "Bidder request should imp[].{ae/ext.igs.ae} same value as requested"
12971297
def bidderRequest = bidder.getBidderRequest(bidRequest.id)
12981298
assert bidderRequest.imp[0].ext.auctionEnvironment == extAuctionEnv
1299-
assert bidderRequest.imp[0].ext.interestGroupAuctionSupports[0].auctionEnvironment == extIgsAuctionEnv
1299+
assert bidderRequest.imp[0].ext.interestGroupAuctionSupports.auctionEnvironment == extIgsAuctionEnv
13001300
}
13011301
}

src/test/groovy/org/prebid/server/functional/tests/bidder/openx/OpenxSpec.groovy

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ import org.prebid.server.functional.model.bidder.Openx
55
import org.prebid.server.functional.model.config.AccountAuctionConfig
66
import org.prebid.server.functional.model.config.AccountConfig
77
import org.prebid.server.functional.model.db.Account
8+
import org.prebid.server.functional.model.request.auction.AuctionEnvironment
89
import org.prebid.server.functional.model.request.auction.BidRequest
10+
import org.prebid.server.functional.model.request.auction.InterestGroupAuctionSupport
911
import org.prebid.server.functional.model.request.auction.PaaFormat
1012
import org.prebid.server.functional.model.response.auction.InterestGroupAuctionBuyer
1113
import org.prebid.server.functional.model.response.auction.InterestGroupAuctionBuyerExt
@@ -24,6 +26,7 @@ import java.time.Instant
2426
import static org.prebid.server.functional.model.bidder.BidderName.OPENX
2527
import static org.prebid.server.functional.model.bidder.BidderName.OPENX_ALIAS
2628
import static org.prebid.server.functional.model.bidder.BidderName.WILDCARD
29+
import static org.prebid.server.functional.model.request.auction.AuctionEnvironment.*
2730
import static org.prebid.server.functional.model.request.auction.AuctionEnvironment.DEVICE_ORCHESTRATED
2831
import static org.prebid.server.functional.model.request.auction.AuctionEnvironment.NOT_SUPPORTED
2932
import static org.prebid.server.functional.model.request.auction.PaaFormat.IAB
@@ -41,6 +44,13 @@ class OpenxSpec extends BaseSpec {
4144
@Shared
4245
PrebidServerService pbsService = pbsServiceFactory.getService(OPENX_CONFIG)
4346

47+
@Override
48+
def cleanupSpec() {
49+
pbsServiceFactory.removeContainer(OPENX_CONFIG)
50+
pbsServiceFactory.removeContainer(OPENX_CONFIG + OPENX_ALIAS_CONFIG)
51+
pbsServiceFactory.removeContainer(OPENX_ALIAS_CONFIG)
52+
}
53+
4454
def "PBS should populate fledge config by default when bid response with fledge"() {
4555
given: "Default basic BidRequest with ae and openx bidder"
4656
def bidRequest = BidRequest.defaultBidRequest.tap {
@@ -534,4 +544,32 @@ class OpenxSpec extends BaseSpec {
534544
IAB | [new InterestGroupAuctionSeller()] | [new InterestGroupAuctionBuyer()]
535545
ORIGINAL | [] | []
536546
}
547+
548+
def "PBS shouldn't change auction environment in imp.ext.igs and not emit a warning when it is present in both imp.ext and imp.ext.igs"() {
549+
given: "Default bid request with populated imp.ext"
550+
def extAuctionEnv = PBSUtils.getRandomEnum(AuctionEnvironment, [SERVER_ORCHESTRATED, UNKNOWN])
551+
def extIgsAuctionEnv = PBSUtils.getRandomEnum(AuctionEnvironment, [SERVER_ORCHESTRATED, UNKNOWN])
552+
def bidRequest = BidRequest.defaultBidRequest.tap {
553+
imp[0].ext.prebid.bidder.openx = Openx.defaultOpenx
554+
imp[0].ext.prebid.bidder.generic = null
555+
imp[0].ext.tap {
556+
auctionEnvironment = extAuctionEnv
557+
interestGroupAuctionSupports = new InterestGroupAuctionSupport(auctionEnvironment: extIgsAuctionEnv)
558+
}
559+
}
560+
561+
when: "PBS processes auction request"
562+
def bidResponse = pbsService.sendAuctionRequest(bidRequest)
563+
564+
then: "Bidder request should imp[].{ae/ext.igs.ae} same value as requested"
565+
def bidderRequest = bidder.getBidderRequest(bidRequest.id)
566+
assert bidderRequest.imp[0].ext.auctionEnvironment == extAuctionEnv
567+
assert bidderRequest.imp[0].ext.interestGroupAuctionSupports.auctionEnvironment == extIgsAuctionEnv
568+
569+
and: "Response shouldn't contain errors"
570+
assert !bidResponse.ext.errors
571+
572+
and: "Response shouldn't contain warnings"
573+
assert !bidResponse.ext.warnings
574+
}
537575
}

0 commit comments

Comments
 (0)