Skip to content

Commit 27498c8

Browse files
Support case insensitive bidder name in ext.prebid.data.eidpermissions.bidders (prebid#3141)
1 parent 940355c commit 27498c8

File tree

2 files changed

+115
-1
lines changed

2 files changed

+115
-1
lines changed

endpoints/openrtb2/auction.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1020,7 +1020,12 @@ func validateBidders(bidders []string, knownBidders map[string]openrtb_ext.Bidde
10201020
return errors.New(`bidder wildcard "*" mixed with specific bidders`)
10211021
}
10221022
} else {
1023-
_, isCoreBidder := knownBidders[bidder]
1023+
bidderName := bidder
1024+
normalizedCoreBidder, ok := openrtb_ext.NormalizeBidderName(bidderName)
1025+
if ok {
1026+
bidderName = normalizedCoreBidder.String()
1027+
}
1028+
_, isCoreBidder := knownBidders[bidderName]
10241029
_, isAlias := knownAliases[bidder]
10251030
if !isCoreBidder && !isAlias {
10261031
return fmt.Errorf(`unrecognized bidder "%v"`, bidder)
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
{
2+
"description": "This demonstrates ext.prebid.data.eidpermissions.bidders with case insensitive bidder names",
3+
"config": {
4+
"mockBidders": [
5+
{
6+
"bidderName": "appnexus",
7+
"currency": "USD",
8+
"price": 1.00
9+
},
10+
{
11+
"bidderName": "rubicon",
12+
"currency": "USD",
13+
"price": 1.00
14+
}
15+
]
16+
},
17+
"mockBidRequest": {
18+
"id": "some-request-id",
19+
"site": {
20+
"page": "prebid.org"
21+
},
22+
"user": {
23+
"ext": {
24+
"consent": "gdpr-consent-string"
25+
}
26+
},
27+
"regs": {
28+
"ext": {
29+
"gdpr": 1,
30+
"us_privacy": "1NYN"
31+
}
32+
},
33+
"imp": [
34+
{
35+
"id": "some-impression-id",
36+
"banner": {
37+
"format": [
38+
{
39+
"w": 300,
40+
"h": 250
41+
},
42+
{
43+
"w": 300,
44+
"h": 600
45+
}
46+
]
47+
},
48+
"ext": {
49+
"APPNEXUS": {
50+
"placementId": 12883451
51+
}
52+
}
53+
}
54+
],
55+
"tmax": 500,
56+
"ext": {
57+
"prebid": {
58+
"data": {
59+
"eidpermissions": [
60+
{
61+
"source": "source1",
62+
"bidders": [
63+
"APPNEXUS"
64+
]
65+
}
66+
]
67+
},
68+
"cache": {
69+
"bids": {}
70+
},
71+
"channel": {
72+
"name": "video",
73+
"version": "1.0"
74+
},
75+
"targeting": {
76+
"includewinners": false,
77+
"pricegranularity": {
78+
"precision": 2,
79+
"ranges": [
80+
{
81+
"max": 20,
82+
"increment": 0.10
83+
}
84+
]
85+
}
86+
}
87+
}
88+
}
89+
},
90+
"expectedBidResponse": {
91+
"id": "some-request-id",
92+
"seatbid": [
93+
{
94+
"bid": [
95+
{
96+
"id": "appnexus-bid",
97+
"impid": "some-impression-id",
98+
"price": 1
99+
}
100+
],
101+
"seat": "APPNEXUS"
102+
}
103+
],
104+
"bidid": "test bid id",
105+
"cur": "USD",
106+
"nbr": 0
107+
},
108+
"expectedReturnCode": 200
109+
}

0 commit comments

Comments
 (0)