From a2fadfb5f1b3ce868fcb99914387d88bb6b140c9 Mon Sep 17 00:00:00 2001 From: Veronika Solovei Date: Mon, 1 May 2023 13:44:54 -0700 Subject: [PATCH] Richaudience: Shared memory fix (#2710) * Shared memory fix * Minor reference usage fix * Removed empty lines * Code review feedback addressed * Added nil check for req.device --- adapters/richaudience/richaudience.go | 13 ++ .../exemplary/single-banner-app.json | 6 +- .../single-banner-defaultCurrency.json | 6 +- .../exemplary/single-banner-deviceConfig.json | 6 +- .../exemplary/single-banner-extUser.json | 3 +- .../exemplary/single-banner-floorPrice.json | 3 +- .../exemplary/single-banner-iPv6.json | 3 +- .../exemplary/single-banner-nil-device.json | 168 ++++++++++++++++++ .../exemplary/single-banner-nosecure.json | 3 +- .../exemplary/single-banner-setCurrency.json | 3 +- .../exemplary/single-banner-sitePage.json | 3 +- .../exemplary/single-banner.json | 3 +- .../exemplary/single-video.json | 3 +- 13 files changed, 198 insertions(+), 25 deletions(-) create mode 100644 adapters/richaudience/richaudiencetest/exemplary/single-banner-nil-device.json diff --git a/adapters/richaudience/richaudience.go b/adapters/richaudience/richaudience.go index 71356bf20f4..16fbe229acf 100644 --- a/adapters/richaudience/richaudience.go +++ b/adapters/richaudience/richaudience.go @@ -52,10 +52,16 @@ func (a *adapter) MakeRequests(request *openrtb2.BidRequest, requestInfo *adapte } if request.App != nil { + appCopy := *request.App + request.App = &appCopy + request.App.Keywords = "tagid=" + imp.TagID } if request.Site != nil { + siteCopy := *request.Site + request.Site = &siteCopy + request.Site.Keywords = "tagid=" + imp.TagID } @@ -65,6 +71,13 @@ func (a *adapter) MakeRequests(request *openrtb2.BidRequest, requestInfo *adapte } if raiExt.Test { + if request.Device != nil { + deviceCopy := *request.Device + request.Device = &deviceCopy + } else { + request.Device = &openrtb2.Device{} + } + request.Device.IP = "11.222.33.44" request.Test = int8(1) } diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-app.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-app.json index 4b760494e6b..672d8ab0045 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner-app.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-app.json @@ -13,6 +13,7 @@ }, "bidfloor": 1e-05, "bidfloorcur": "USD", + "tagid": "testTag", "ext": { "bidder": { "pid": "OsNsyeF68q", @@ -24,7 +25,6 @@ ], "app": { "id": "12345678", - "keywords": "tagid=", "name": "Richaudience TV", "bundle": "R12345678901011", "publisher": { @@ -41,7 +41,7 @@ } }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ifa": "zxcjbzxmc-zxcbmz-zxbcz-zxczx" }, "user": { @@ -86,7 +86,7 @@ ], "app": { "id": "12345678", - "keywords": "tagid=", + "keywords": "tagid=testTag", "name": "Richaudience TV", "bundle": "R12345678901011", "publisher": { diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-defaultCurrency.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-defaultCurrency.json index 7583c13f38f..0ddec0a4af5 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner-defaultCurrency.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-defaultCurrency.json @@ -14,6 +14,7 @@ ] }, "bidfloor": 1e-05, + "tagid": "testTag", "ext": { "bidder": { "pid": "OsNsyeF68q", @@ -24,12 +25,11 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" }, "user": { @@ -80,7 +80,7 @@ } ], "site": { - "keywords": "tagid=", + "keywords": "tagid=testTag", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-deviceConfig.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-deviceConfig.json index e4bc332740a..5ccc8f141af 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner-deviceConfig.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-deviceConfig.json @@ -13,6 +13,7 @@ }, "bidfloor": 1e-05, "bidfloorcur": "USD", + "tagid": "testTag", "ext": { "bidder": { "pid": "OsNsyeF68q", @@ -23,14 +24,13 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { "dnt": 1, "lmt": 1, - "ip": "11.222.33.44" + "ip": "10.20.30.40" }, "user": { "buyeruid": "189f4055-78a3-46eb-b7fd-0915a1a43bd2a", @@ -73,7 +73,7 @@ } ], "site": { - "keywords": "tagid=", + "keywords": "tagid=testTag", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-extUser.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-extUser.json index d22e1cf663c..b6227d37873 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner-extUser.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-extUser.json @@ -25,12 +25,11 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" }, "user": { diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-floorPrice.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-floorPrice.json index 7d76a12b5ed..9fec4d46b17 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner-floorPrice.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-floorPrice.json @@ -24,12 +24,11 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" }, "user": { diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-iPv6.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-iPv6.json index 93fabba3d60..b40e9f65c89 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner-iPv6.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-iPv6.json @@ -25,12 +25,11 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ipv6": "2607:fb90:f27:4512:d800:cb23:a603:e245", "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" }, diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-nil-device.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-nil-device.json new file mode 100644 index 00000000000..f5e3899130a --- /dev/null +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-nil-device.json @@ -0,0 +1,168 @@ +{ + "mockBidRequest": { + "id": "4d3f84eb-787b-42fb-a0cf-062690dadce3", + "test": 0, + "imp": [ + { + "id": "div-gpt-ad-1460505748561-0", + "banner": { + "format": [ + { + "w": 300, + "h": 250 + } + ] + }, + "bidfloor": 1e-05, + "bidfloorcur": "USD", + "tagid": "testTag", + "ext": { + "bidder": { + "pid": "OsNsyeF68q", + "supplyType": "site", + "test": true + } + } + } + ], + "app": { + "id": "12345678", + "name": "Richaudience TV", + "bundle": "R12345678901011", + "publisher": { + "id": "1234567", + "ext": { + "prebid": { + "parentAccount": "891011" + } + } + }, + "content": { + "title": "Richaudience TV", + "series": "Richaudience TV" + } + }, + "user": { + "buyeruid": "189f4055-78a3-46eb-b7fd-0915a1a43bd2a", + "ext": {} + } + }, + "httpCalls": [ + { + "expectedRequest": { + "uri": "http://ortb.richaudience.com/ortb/?bidder=pbs", + "headers": { + "Content-Type": [ + "application/json;charset=utf-8" + ], + "Accept": [ + "application/json" + ], + "X-Openrtb-Version": [ + "2.5" + ] + }, + "body": { + "id": "4d3f84eb-787b-42fb-a0cf-062690dadce3", + "test": 1, + "imp": [ + { + "id": "div-gpt-ad-1460505748561-0", + "tagid": "OsNsyeF68q", + "secure": 0, + "banner": { + "format": [ + { + "w": 300, + "h": 250 + } + ] + }, + "bidfloor": 1e-05, + "bidfloorcur": "USD", + "ext": { + "bidder": { + "pid": "OsNsyeF68q", + "supplyType": "site", + "test": true + } + } + } + ], + "app": { + "id": "12345678", + "keywords": "tagid=testTag", + "name": "Richaudience TV", + "bundle": "R12345678901011", + "publisher": { + "id": "1234567", + "ext": { + "prebid": { + "parentAccount": "891011" + } + } + }, + "content": { + "title": "Richaudience TV", + "series": "Richaudience TV" + } + }, + "device": { + "ip": "11.222.33.44" + }, + "user": { + "buyeruid": "189f4055-78a3-46eb-b7fd-0915a1a43bd2a", + "ext": { + } + } + } + }, + "mockResponse": { + "status": 200, + "body": { + "id": "ff935bea-4661-40bf-95b7-80c354cf0cdc", + "seatbid": [ + { + "bid": [ + { + "id": "47286888", + "impid": "div-gpt-ad-1460505748561-0", + "price": 99, + "crid": "999999", + "adm": "", + "adomain": [ + "richaudience.com" + ], + "h": 250, + "w": 300 + } + ] + } + ] + } + } + } + ], + "expectedBidResponses": [ + { + "currency": "USD", + "bids": [ + { + "bid": { + "id": "47286888", + "impid": "div-gpt-ad-1460505748561-0", + "price": 99, + "adm": "", + "adomain": [ + "richaudience.com" + ], + "crid": "999999", + "w": 300, + "h": 250 + }, + "type": "banner" + } + ] + } + ] +} \ No newline at end of file diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-nosecure.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-nosecure.json index 68cc0af6472..78886f38189 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner-nosecure.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-nosecure.json @@ -23,12 +23,11 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "http://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" }, "user": { diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-setCurrency.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-setCurrency.json index 70662052cc3..5490197dd0f 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner-setCurrency.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-setCurrency.json @@ -23,12 +23,11 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" }, "user": { diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner-sitePage.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner-sitePage.json index 901af4a889e..e6a00cbf0e8 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner-sitePage.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner-sitePage.json @@ -23,12 +23,11 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" }, "user": { diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-banner.json b/adapters/richaudience/richaudiencetest/exemplary/single-banner.json index 901af4a889e..e6a00cbf0e8 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-banner.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-banner.json @@ -23,12 +23,11 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" }, "user": { diff --git a/adapters/richaudience/richaudiencetest/exemplary/single-video.json b/adapters/richaudience/richaudiencetest/exemplary/single-video.json index 2d18c01ae58..0219906f35f 100644 --- a/adapters/richaudience/richaudiencetest/exemplary/single-video.json +++ b/adapters/richaudience/richaudiencetest/exemplary/single-video.json @@ -23,12 +23,11 @@ } ], "site": { - "keywords": "tagid=", "domain": "bridge.richmediastudio.com", "page": "https://bridge.richmediastudio.com//ab083674fb8200b877a6983126e4477d/PrebidServer/indexRa.html?pbjs_debug=true" }, "device": { - "ip": "11.222.33.44", + "ip": "10.20.30.40", "ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" }, "user": {