diff --git a/adapters/rtbhouse/rtbhouse.go b/adapters/rtbhouse/rtbhouse.go
index bd0d892b996..daca87bc961 100644
--- a/adapters/rtbhouse/rtbhouse.go
+++ b/adapters/rtbhouse/rtbhouse.go
@@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"net/http"
+ "strconv"
"strings"
"github.com/buger/jsonparser"
@@ -161,8 +162,9 @@ func (adapter *RTBHouseAdapter) MakeBids(
var typedBid *adapters.TypedBid
for _, seatBid := range openRTBBidderResponse.SeatBid {
for _, bid := range seatBid.Bid {
- bid := bid // pin! -> https://github.com/kyoh86/scopelint#whats-this
+ bid := bid
bidType, err := getMediaTypeForBid(bid)
+ resolveMacros(&bid)
if err != nil {
errs = append(errs, err)
continue
@@ -222,3 +224,11 @@ func getNativeAdm(adm string) (string, error) {
return adm, nil
}
+
+func resolveMacros(bid *openrtb2.Bid) {
+ if bid != nil {
+ price := strconv.FormatFloat(bid.Price, 'f', -1, 64)
+ bid.NURL = strings.Replace(bid.NURL, "${AUCTION_PRICE}", price, -1)
+ bid.AdM = strings.Replace(bid.AdM, "${AUCTION_PRICE}", price, -1)
+ }
+}
diff --git a/adapters/rtbhouse/rtbhousetest/exemplary/banner-resolve-macros.json b/adapters/rtbhouse/rtbhousetest/exemplary/banner-resolve-macros.json
new file mode 100644
index 00000000000..eaa3965040e
--- /dev/null
+++ b/adapters/rtbhouse/rtbhousetest/exemplary/banner-resolve-macros.json
@@ -0,0 +1,87 @@
+{
+ "mockBidRequest": {
+ "id": "test-request-id",
+ "site": {
+ "page": "https://good.site/url"
+ },
+ "imp": [{
+ "id": "test-imp-id",
+ "banner": {
+ "format": [{
+ "w": 300,
+ "h": 250
+ }]
+ },
+ "ext": {
+ "bidder": {}
+ }
+ }]
+ },
+
+ "httpCalls": [{
+ "expectedRequest": {
+ "uri": "http://localhost/prebid_server",
+ "body": {
+ "id": "test-request-id",
+ "cur": ["USD"],
+ "site": {
+ "page": "https://good.site/url"
+ },
+ "imp": [{
+ "id": "test-imp-id",
+ "banner": {
+ "format": [{
+ "w": 300,
+ "h": 250
+ }]
+ },
+ "ext": {
+ "bidder": {}
+ }
+ }]
+ },
+ "impIDs":["test-imp-id"]
+ },
+ "mockResponse": {
+ "status": 200,
+ "body": {
+ "id": "test-request-id",
+ "seatbid": [{
+ "seat": "rtbhouse",
+ "bid": [{
+ "id": "randomid",
+ "impid": "test-imp-id",
+ "price": 0.500000,
+ "adid": "12345678",
+ "adm": "",
+ "cid": "987",
+ "crid": "12345678",
+ "h": 250,
+ "w": 300,
+ "mtype": 1
+ }]
+ }],
+ "cur": "USD"
+ }
+ }
+ }],
+
+ "expectedBidResponses": [{
+ "currency": "USD",
+ "bids": [{
+ "bid": {
+ "id": "randomid",
+ "impid": "test-imp-id",
+ "price": 0.5,
+ "adm": "",
+ "adid": "12345678",
+ "cid": "987",
+ "crid": "12345678",
+ "w": 300,
+ "h": 250,
+ "mtype": 1
+ },
+ "type": "banner"
+ }]
+ }]
+}