From 466ff838b669f45a1de7a70d0f33fe113e3430cb Mon Sep 17 00:00:00 2001 From: "Ruslan S." Date: Tue, 30 Jul 2024 03:51:44 +0800 Subject: [PATCH] Smaato: Add DOOH support (#3751) --- adapters/smaato/banner.go | 7 +- adapters/smaato/banner_test.go | 6 +- adapters/smaato/smaato.go | 18 +- .../exemplary/multiple-impressions-skadn.json | 6 +- .../exemplary/multiple-impressions.json | 6 +- .../exemplary/multiple-media-types-skadn.json | 6 +- .../exemplary/multiple-media-types.json | 6 +- .../smaato/smaatotest/exemplary/native.json | 2 +- .../exemplary/simple-banner-app.json | 4 +- .../exemplary/simple-banner-dooh.json | 218 +++++++++++++++++ .../exemplary/simple-banner-eids.json | 4 +- .../exemplary/simple-banner-skadn.json | 4 +- .../smaatotest/exemplary/simple-banner.json | 4 +- .../smaatotest/exemplary/video-app.json | 2 +- .../smaatotest/exemplary/video-dooh.json | 225 ++++++++++++++++++ .../smaato/smaatotest/exemplary/video.json | 2 +- .../bad-adtype-header-response.json | 2 +- .../bad-expires-header-response.json | 4 +- .../bad-status-code-response.json | 2 +- .../supplemental/banner-w-and-h.json | 4 +- .../supplemental/curl-nil-response.json | 207 ++++++++++++++++ .../supplemental/expires-header-response.json | 4 +- ...est.json => no-app-site-dooh-request.json} | 2 +- .../supplemental/no-bid-response.json | 2 +- .../supplemental/no-consent-info-request.json | 4 +- .../outdated-expires-header-response.json | 4 +- .../video/multiple-adpods-skadn.json | 4 +- .../smaatotest/video/multiple-adpods.json | 4 +- .../smaatotest/video/single-adpod-skadn.json | 2 +- .../smaato/smaatotest/video/single-adpod.json | 2 +- .../bad-adtype-header-response.json | 4 +- .../bad-bid-ext-response.json | 2 +- 32 files changed, 718 insertions(+), 55 deletions(-) create mode 100644 adapters/smaato/smaatotest/exemplary/simple-banner-dooh.json create mode 100644 adapters/smaato/smaatotest/exemplary/video-dooh.json create mode 100644 adapters/smaato/smaatotest/supplemental/curl-nil-response.json rename adapters/smaato/smaatotest/supplemental/{no-app-site-request.json => no-app-site-dooh-request.json} (92%) diff --git a/adapters/smaato/banner.go b/adapters/smaato/banner.go index 17fb0a6c188..643405facf3 100644 --- a/adapters/smaato/banner.go +++ b/adapters/smaato/banner.go @@ -7,15 +7,16 @@ import ( ) func extractAdmBanner(adMarkup string, curls []string) string { - var clickEvent string if len(curls) > 0 { + var clickEvent string var clicks strings.Builder for _, clicktracker := range curls { clicks.WriteString("fetch(decodeURIComponent('" + url.QueryEscape(clicktracker) + "'.replace(/\\+/g, ' ')), " + "{cache: 'no-cache'});") } - clickEvent = fmt.Sprintf(`onclick=%s`, clicks.String()) + clickEvent = fmt.Sprintf(`onclick="%s"`, clicks.String()) + return fmt.Sprintf(`
%s
`, clickEvent, adMarkup) } - return fmt.Sprintf(`
%s
`, clickEvent, adMarkup) + return adMarkup } diff --git a/adapters/smaato/banner_test.go b/adapters/smaato/banner_test.go index 83b08a6b77a..bf3e877ae18 100644 --- a/adapters/smaato/banner_test.go +++ b/adapters/smaato/banner_test.go @@ -15,19 +15,19 @@ func TestExtractAdmBanner(t *testing.T) { { testName: "extract_banner_without_curls", adMarkup: ``, - expectedAdMarkup: `
`, + expectedAdMarkup: ``, curls: []string{}, }, { testName: "extract_banner_with_nil_curls", adMarkup: ``, - expectedAdMarkup: `
`, + expectedAdMarkup: ``, curls: nil, }, { testName: "extract_banner_with_curls", adMarkup: ``, - expectedAdMarkup: `
`, + expectedAdMarkup: `
`, curls: []string{"curls.net"}, }, } diff --git a/adapters/smaato/smaato.go b/adapters/smaato/smaato.go index 5421578967c..2d1579c55bd 100644 --- a/adapters/smaato/smaato.go +++ b/adapters/smaato/smaato.go @@ -17,7 +17,7 @@ import ( "github.com/prebid/prebid-server/v2/util/timeutil" ) -const clientVersion = "prebid_server_1.0" +const clientVersion = "prebid_server_1.1" type adMarkupType string @@ -271,7 +271,7 @@ func getAdMarkupType(response *adapters.ResponseData) (adMarkupType, error) { return admType, nil } else { return "", &errortypes.BadServerResponse{ - Message: fmt.Sprintf("X-Smt-Adtype header is missing!"), + Message: fmt.Sprintf("X-Smt-Adtype header is missing."), } } } @@ -330,6 +330,7 @@ func prepareCommonRequest(request *openrtb2.BidRequest) error { } setApp(request) + setDOOH(request) return setExt(request) } @@ -434,6 +435,13 @@ func setApp(request *openrtb2.BidRequest) { } } +func setDOOH(request *openrtb2.BidRequest) { + if request.DOOH != nil { + doohCopy := *request.DOOH + request.DOOH = &doohCopy + } +} + func setPublisherId(request *openrtb2.BidRequest, imp *openrtb2.Imp) error { publisherID, err := jsonparser.GetString(imp.Ext, "bidder", "publisherId") if err != nil { @@ -448,8 +456,12 @@ func setPublisherId(request *openrtb2.BidRequest, imp *openrtb2.Imp) error { // App is already a copy request.App.Publisher = &openrtb2.Publisher{ID: publisherID} return nil + } else if request.DOOH != nil { + // DOOH is already a copy + request.DOOH.Publisher = &openrtb2.Publisher{ID: publisherID} + return nil } else { - return &errortypes.BadInput{Message: "Missing Site/App."} + return &errortypes.BadInput{Message: "Missing Site/App/DOOH."} } } diff --git a/adapters/smaato/smaatotest/exemplary/multiple-impressions-skadn.json b/adapters/smaato/smaatotest/exemplary/multiple-impressions-skadn.json index e9dd531df35..c817cd9543a 100644 --- a/adapters/smaato/smaatotest/exemplary/multiple-impressions-skadn.json +++ b/adapters/smaato/smaatotest/exemplary/multiple-impressions-skadn.json @@ -201,7 +201,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -350,7 +350,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["postbid_iframe"] @@ -421,7 +421,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/exemplary/multiple-impressions.json b/adapters/smaato/smaatotest/exemplary/multiple-impressions.json index 34d27a5c5a1..3fee0d654c3 100644 --- a/adapters/smaato/smaatotest/exemplary/multiple-impressions.json +++ b/adapters/smaato/smaatotest/exemplary/multiple-impressions.json @@ -160,7 +160,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -270,7 +270,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["postbid_iframe"] @@ -317,7 +317,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/exemplary/multiple-media-types-skadn.json b/adapters/smaato/smaatotest/exemplary/multiple-media-types-skadn.json index 74eaec95650..c2b7bf97869 100644 --- a/adapters/smaato/smaatotest/exemplary/multiple-media-types-skadn.json +++ b/adapters/smaato/smaatotest/exemplary/multiple-media-types-skadn.json @@ -178,7 +178,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -327,7 +327,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -398,7 +398,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/exemplary/multiple-media-types.json b/adapters/smaato/smaatotest/exemplary/multiple-media-types.json index abccdc34671..4c6f031016a 100644 --- a/adapters/smaato/smaatotest/exemplary/multiple-media-types.json +++ b/adapters/smaato/smaatotest/exemplary/multiple-media-types.json @@ -150,7 +150,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -260,7 +260,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -307,7 +307,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/exemplary/native.json b/adapters/smaato/smaatotest/exemplary/native.json index 7d87cc8d974..f229220180e 100644 --- a/adapters/smaato/smaatotest/exemplary/native.json +++ b/adapters/smaato/smaatotest/exemplary/native.json @@ -124,7 +124,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["postbid_iframe"] diff --git a/adapters/smaato/smaatotest/exemplary/simple-banner-app.json b/adapters/smaato/smaatotest/exemplary/simple-banner-app.json index 53b7d148278..d2c5f5453ed 100644 --- a/adapters/smaato/smaatotest/exemplary/simple-banner-app.json +++ b/adapters/smaato/smaatotest/exemplary/simple-banner-app.json @@ -158,7 +158,7 @@ "keywords": "keywords" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -205,7 +205,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/exemplary/simple-banner-dooh.json b/adapters/smaato/smaatotest/exemplary/simple-banner-dooh.json new file mode 100644 index 00000000000..d5fd7ef1f05 --- /dev/null +++ b/adapters/smaato/smaatotest/exemplary/simple-banner-dooh.json @@ -0,0 +1,218 @@ +{ + "mockBidRequest": { + "id": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "dooh": { + "id": "id", + "name": "name", + "domain": "domain", + "venuetypetax": 1, + "content": { + "id": "content-id", + "title": "content-title", + "series": "content-series", + "genre": "content-genre", + "producer": { + "id": "producer-id", + "name": "producer-name" + }, + "cat": [ + "IAB8-6" + ], + "livestream": 1, + "language": "en" + }, + "keywords": "keywords" + }, + "imp": [ + { + "id": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "banner": { + "format": [ + { + "w": 320, + "h": 50 + }, + { + "w": 320, + "h": 250 + } + ] + }, + "ext": { + "bidder": { + "publisherId": "1100042525", + "adspaceId": "130563103" + } + } + } + ], + "device": { + "ua": "test-user-agent", + "ip": "123.123.123.123", + "language": "en", + "dnt": 0 + }, + "user": { + "ext": { + "consent": "gdprConsentString", + "data": { + "keywords": "a,b", + "gender": "M", + "yob": 1984, + "geo": { + "country": "ca" + } + } + } + }, + "regs": { + "coppa": 1, + "ext": { + "gdpr": 1, + "us_privacy": "uspConsentString" + } + } + }, + "httpCalls": [ + { + "expectedRequest": { + "headers": { + "Content-Type": ["application/json;charset=utf-8"], + "Accept": ["application/json"] + }, + "uri": "https://prebid/bidder", + "body": { + "id": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "imp": [ + { + "id": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "tagid": "130563103", + "banner": { + "format": [ + { + "w": 320, + "h": 50 + }, + { + "w": 320, + "h": 250 + } + ] + } + } + ], + "user": { + "ext": { + "consent": "gdprConsentString" + }, + "gender": "M", + "keywords": "a,b", + "yob": 1984 + }, + "device": { + "ua": "test-user-agent", + "ip": "123.123.123.123", + "language": "en", + "dnt": 0 + }, + "regs": { + "coppa": 1, + "ext": { + "gdpr": 1, + "us_privacy": "uspConsentString" + } + }, + "dooh": { + "publisher": { + "id": "1100042525" + }, + "id": "id", + "name": "name", + "domain": "domain", + "venuetypetax": 1, + "content": { + "id": "content-id", + "title": "content-title", + "series": "content-series", + "genre": "content-genre", + "producer": { + "id": "producer-id", + "name": "producer-name" + }, + "cat": [ + "IAB8-6" + ], + "livestream": 1, + "language": "en" + }, + "keywords": "keywords" + }, + "ext": { + "client": "prebid_server_1.1" + } + }, + "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] + }, + "mockResponse": { + "status": 200, + "headers": { + "X-Smt-Adtype": ["Img"] + }, + "body": { + "id": "5ebea288-f13a-4754-be6d-4ade66c68877", + "seatbid": [ + { + "seat": "CM6523", + "bid": [ + { + "adm": "\"\"", + "adomain": [ + "smaato.com" + ], + "bidderName": "smaato", + "cid": "CM6523", + "crid": "CR69381", + "id": "6906aae8-7f74-4edd-9a4f-f49379a3cadd", + "impid": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "iurl": "https://bidstalkcreatives.s3.amazonaws.com/1x1.png", + "nurl": "https://ets-eu-west-1.track.smaato.net/v1/view?sessionId=e4e17adb-9599-42b1-bb5f-a1f1b3bee572&adSourceId=6906aae8-7f74-4edd-9a4f-f49379a3cadd&originalRequestTime=1552310449698&expires=1552311350698&winurl=ama8JbpJVpFWxvEja5viE3cLXFu58qRI8dGUh23xtsOn3N2-5UU0IwkgNEmR82pI37fcMXejL5IWTNAoW6Cnsjf-Dxl_vx2dUqMrVEevX-Vdx2VVnf-D5f73gZhvi4t36iPL8Dsw4aACekoLvVOV7-eXDjz7GHy60QFqcwKf5g2AlKPOInyZ6vJg_fn4qA9argvCRgwVybXE9Ndm2W0v8La4uFYWpJBOUveDDUrSQfzal7RsYvLb_OyaMlPHdrd_bwA9qqZWuyJXd-L9lxr7RQ%3D%3D%7CMw3kt91KJR0Uy5L-oNztAg%3D%3D&dpid=4XVofb_lH-__hr2JNGhKfg%3D%3D%7Cr9ciCU1cx3zmHXihItKO0g%3D%3D", + "price": 0.01, + "w": 350, + "h": 50 + } + ] + } + ], + "bidid": "04db8629-179d-4bcd-acce-e54722969006", + "cur": "USD" + } + } + } + ], + "expectedBidResponses": [ + { + "currency": "USD", + "bids": [ + { + "bid": { + "adm": "\"\"", + "adomain": [ + "smaato.com" + ], + "cid": "CM6523", + "crid": "CR69381", + "id": "6906aae8-7f74-4edd-9a4f-f49379a3cadd", + "impid": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "iurl": "https://bidstalkcreatives.s3.amazonaws.com/1x1.png", + "nurl": "https://ets-eu-west-1.track.smaato.net/v1/view?sessionId=e4e17adb-9599-42b1-bb5f-a1f1b3bee572&adSourceId=6906aae8-7f74-4edd-9a4f-f49379a3cadd&originalRequestTime=1552310449698&expires=1552311350698&winurl=ama8JbpJVpFWxvEja5viE3cLXFu58qRI8dGUh23xtsOn3N2-5UU0IwkgNEmR82pI37fcMXejL5IWTNAoW6Cnsjf-Dxl_vx2dUqMrVEevX-Vdx2VVnf-D5f73gZhvi4t36iPL8Dsw4aACekoLvVOV7-eXDjz7GHy60QFqcwKf5g2AlKPOInyZ6vJg_fn4qA9argvCRgwVybXE9Ndm2W0v8La4uFYWpJBOUveDDUrSQfzal7RsYvLb_OyaMlPHdrd_bwA9qqZWuyJXd-L9lxr7RQ%3D%3D%7CMw3kt91KJR0Uy5L-oNztAg%3D%3D&dpid=4XVofb_lH-__hr2JNGhKfg%3D%3D%7Cr9ciCU1cx3zmHXihItKO0g%3D%3D", + "price": 0.01, + "w": 350, + "h": 50, + "exp": 300 + }, + "type": "banner" + } + ] + } + ] +} diff --git a/adapters/smaato/smaatotest/exemplary/simple-banner-eids.json b/adapters/smaato/smaatotest/exemplary/simple-banner-eids.json index 6982459bd8d..ed0b61dcefa 100644 --- a/adapters/smaato/smaatotest/exemplary/simple-banner-eids.json +++ b/adapters/smaato/smaatotest/exemplary/simple-banner-eids.json @@ -153,7 +153,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -200,7 +200,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/exemplary/simple-banner-skadn.json b/adapters/smaato/smaatotest/exemplary/simple-banner-skadn.json index 2a3f3cbef27..cab205f7334 100644 --- a/adapters/smaato/smaatotest/exemplary/simple-banner-skadn.json +++ b/adapters/smaato/smaatotest/exemplary/simple-banner-skadn.json @@ -167,7 +167,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -238,7 +238,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/exemplary/simple-banner.json b/adapters/smaato/smaatotest/exemplary/simple-banner.json index 0b866589a5d..48ee26ebddc 100644 --- a/adapters/smaato/smaatotest/exemplary/simple-banner.json +++ b/adapters/smaato/smaatotest/exemplary/simple-banner.json @@ -153,7 +153,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -216,7 +216,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "
\"\"
", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/exemplary/video-app.json b/adapters/smaato/smaatotest/exemplary/video-app.json index 0fda52f2914..cd074530838 100644 --- a/adapters/smaato/smaatotest/exemplary/video-app.json +++ b/adapters/smaato/smaatotest/exemplary/video-app.json @@ -165,7 +165,7 @@ "keywords": "keywords" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["postbid_iframe"] diff --git a/adapters/smaato/smaatotest/exemplary/video-dooh.json b/adapters/smaato/smaatotest/exemplary/video-dooh.json new file mode 100644 index 00000000000..98d30df7774 --- /dev/null +++ b/adapters/smaato/smaatotest/exemplary/video-dooh.json @@ -0,0 +1,225 @@ +{ + "mockBidRequest": { + "id": "447a0a1d-389d-4730-a418-3777e95de7bd", + "imp": [ + { + "id": "postbid_iframe", + "video": { + "mimes": [ + "video/mp4", + "video/quicktime", + "video/3gpp", + "video/x-m4v" + ], + "minduration": 5, + "maxduration": 30, + "protocols": [ + 7 + ], + "w": 1024, + "h": 768, + "startdelay": 0, + "linearity": 1, + "skip": 1, + "skipmin": 5, + "api": [ + 7 + ], + "ext": { + "rewarded": 0 + } + }, + "ext": { + "bidder": { + "publisherId": "1100042525", + "adspaceId": "130563103" + } + } + } + ], + "dooh": { + "id": "id", + "name": "name", + "domain": "domain", + "venuetypetax": 1, + "content": { + "id": "content-id", + "title": "content-title", + "series": "content-series", + "genre": "content-genre", + "producer": { + "id": "producer-id", + "name": "producer-name" + }, + "cat": [ + "IAB8-6" + ], + "livestream": 1, + "language": "en" + }, + "keywords": "keywords" + }, + "device": { + "ua": "test-user-agent" + }, + "user": { + "ext": { + "data": {} + } + }, + "ext": { + "prebid": { + "auctiontimestamp": 1598262728811, + "targeting": { + "includewinners": true, + "includebidderkeys": false + } + } + } + }, + "httpCalls": [ + { + "expectedRequest": { + "headers": { + "Content-Type": [ + "application/json;charset=utf-8" + ], + "Accept": [ + "application/json" + ] + }, + "uri": "https://prebid/bidder", + "body": { + "id": "447a0a1d-389d-4730-a418-3777e95de7bd", + "imp": [ + { + "id": "postbid_iframe", + "tagid": "130563103", + "video": { + "w": 1024, + "h": 768, + "ext": { + "rewarded": 0 + }, + "mimes": [ + "video/mp4", + "video/quicktime", + "video/3gpp", + "video/x-m4v" + ], + "minduration": 5, + "startdelay": 0, + "linearity": 1, + "maxduration": 30, + "skip": 1, + "protocols": [ + 7 + ], + "skipmin": 5, + "api": [ + 7 + ] + } + } + ], + "user": { + "ext": { + } + }, + "device": { + "ua": "test-user-agent" + }, + "dooh": { + "publisher": { + "id": "1100042525" + }, + "id": "id", + "name": "name", + "domain": "domain", + "venuetypetax": 1, + "content": { + "id": "content-id", + "title": "content-title", + "series": "content-series", + "genre": "content-genre", + "producer": { + "id": "producer-id", + "name": "producer-name" + }, + "cat": [ + "IAB8-6" + ], + "livestream": 1, + "language": "en" + }, + "keywords": "keywords" + }, + "ext": { + "client": "prebid_server_1.1" + } + }, + "impIDs":["postbid_iframe"] + }, + "mockResponse": { + "status": 200, + "headers": { + "X-Smt-Adtype": ["Video"] + }, + "body": { + "id": "5ebea288-f13a-4754-be6d-4ade66c68877", + "seatbid": [ + { + "seat": "CM6523", + "bid": [ + { + "adm": "", + "adomain": [ + "smaato.com" + ], + "bidderName": "smaato", + "cid": "CM6523", + "crid": "CR69381", + "id": "6906aae8-7f74-4edd-9a4f-f49379a3cadd", + "impid": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "iurl": "https://iurl", + "nurl": "https://nurl", + "price": 0.01, + "w": 1024, + "h": 768 + } + ] + } + ], + "bidid": "04db8629-179d-4bcd-acce-e54722969006", + "cur": "USD" + } + } + } + ], + "expectedBidResponses": [ + { + "currency": "USD", + "bids": [ + { + "bid": { + "adm": "", + "adomain": [ + "smaato.com" + ], + "cid": "CM6523", + "crid": "CR69381", + "id": "6906aae8-7f74-4edd-9a4f-f49379a3cadd", + "impid": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "iurl": "https://iurl", + "nurl": "https://nurl", + "price": 0.01, + "w": 1024, + "h": 768, + "exp": 300 + }, + "type": "video" + } + ] + } + ] +} diff --git a/adapters/smaato/smaatotest/exemplary/video.json b/adapters/smaato/smaatotest/exemplary/video.json index 5b486ae5702..2207c53cf53 100644 --- a/adapters/smaato/smaatotest/exemplary/video.json +++ b/adapters/smaato/smaatotest/exemplary/video.json @@ -180,7 +180,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["postbid_iframe"] diff --git a/adapters/smaato/smaatotest/supplemental/bad-adtype-header-response.json b/adapters/smaato/smaatotest/supplemental/bad-adtype-header-response.json index 800aa6d76f8..af739711bf4 100644 --- a/adapters/smaato/smaatotest/supplemental/bad-adtype-header-response.json +++ b/adapters/smaato/smaatotest/supplemental/bad-adtype-header-response.json @@ -123,7 +123,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] diff --git a/adapters/smaato/smaatotest/supplemental/bad-expires-header-response.json b/adapters/smaato/smaatotest/supplemental/bad-expires-header-response.json index 1afb1f66eda..7368c666886 100644 --- a/adapters/smaato/smaatotest/supplemental/bad-expires-header-response.json +++ b/adapters/smaato/smaatotest/supplemental/bad-expires-header-response.json @@ -123,7 +123,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -171,7 +171,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/supplemental/bad-status-code-response.json b/adapters/smaato/smaatotest/supplemental/bad-status-code-response.json index 095b398e461..c00518e096f 100644 --- a/adapters/smaato/smaatotest/supplemental/bad-status-code-response.json +++ b/adapters/smaato/smaatotest/supplemental/bad-status-code-response.json @@ -123,7 +123,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] diff --git a/adapters/smaato/smaatotest/supplemental/banner-w-and-h.json b/adapters/smaato/smaatotest/supplemental/banner-w-and-h.json index 9b135832b69..e3cc2174433 100644 --- a/adapters/smaato/smaatotest/supplemental/banner-w-and-h.json +++ b/adapters/smaato/smaatotest/supplemental/banner-w-and-h.json @@ -107,7 +107,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -154,7 +154,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/supplemental/curl-nil-response.json b/adapters/smaato/smaatotest/supplemental/curl-nil-response.json new file mode 100644 index 00000000000..9f0f3359ea6 --- /dev/null +++ b/adapters/smaato/smaatotest/supplemental/curl-nil-response.json @@ -0,0 +1,207 @@ +{ + "mockBidRequest": { + "id": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "site": { + "publisher": { + "id": "1100042525" + }, + "page": "http://localhost:3000/server.html?pbjs_debug=true&endpoint=http://localhost:3000/bidder", + "ext": { + "data": { + "keywords": "power tools", + "search": "drill", + "content": { + "userrating": 4 + } + } + } + }, + "imp": [ + { + "id": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "banner": { + "format": [ + { + "w": 320, + "h": 50 + }, + { + "w": 320, + "h": 250 + } + ] + }, + "instl": 1, + "bidfloor": 0.00123, + "ext": { + "bidder": { + "publisherId": "1100042525", + "adspaceId": "130563103" + } + } + } + ], + "device": { + "ua": "test-user-agent", + "ip": "123.123.123.123", + "language": "en", + "dnt": 0 + }, + "user": { + "ext": { + "consent": "gdprConsentString", + "data": { + "keywords": "a,b", + "gender": "M", + "yob": 1984, + "geo": { + "country": "ca" + } + } + } + }, + "regs": { + "coppa": 1, + "ext": { + "gdpr": 1, + "us_privacy": "uspConsentString", + "gpp": "gppString", + "gpp_sid": [7] + } + } + }, + "httpCalls": [ + { + "expectedRequest": { + "headers": { + "Content-Type": ["application/json;charset=utf-8"], + "Accept": ["application/json"] + }, + "uri": "https://prebid/bidder", + "body": { + "id": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "imp": [ + { + "id": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "tagid": "130563103", + "bidfloor": 0.00123, + "instl": 1, + "banner": { + "format": [ + { + "w": 320, + "h": 50 + }, + { + "w": 320, + "h": 250 + } + ] + } + } + ], + "user": { + "ext": { + "consent": "gdprConsentString" + }, + "gender": "M", + "keywords": "a,b", + "yob": 1984 + }, + "device": { + "ua": "test-user-agent", + "ip": "123.123.123.123", + "language": "en", + "dnt": 0 + }, + "regs": { + "coppa": 1, + "ext": { + "gdpr": 1, + "us_privacy": "uspConsentString", + "gpp": "gppString", + "gpp_sid": [7] + } + }, + "site": { + "publisher": { + "id": "1100042525" + }, + "page": "http://localhost:3000/server.html?pbjs_debug=true&endpoint=http://localhost:3000/bidder", + "keywords": "power tools" + }, + "ext": { + "client": "prebid_server_1.1" + } + }, + "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] + }, + "mockResponse": { + "status": 200, + "headers": { + "X-Smt-Adtype": ["Img"] + }, + "body": { + "id": "5ebea288-f13a-4754-be6d-4ade66c68877", + "seatbid": [ + { + "seat": "CM6523", + "bid": [ + { + "adm": "\"\"", + "adomain": [ + "smaato.com" + ], + "bidderName": "smaato", + "cid": "CM6523", + "crid": "CR69381", + "id": "6906aae8-7f74-4edd-9a4f-f49379a3cadd", + "impid": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "iurl": "https://bidstalkcreatives.s3.amazonaws.com/1x1.png", + "nurl": "https://ets-eu-west-1.track.smaato.net/v1/view?sessionId=e4e17adb-9599-42b1-bb5f-a1f1b3bee572&adSourceId=6906aae8-7f74-4edd-9a4f-f49379a3cadd&originalRequestTime=1552310449698&expires=1552311350698&winurl=ama8JbpJVpFWxvEja5viE3cLXFu58qRI8dGUh23xtsOn3N2-5UU0IwkgNEmR82pI37fcMXejL5IWTNAoW6Cnsjf-Dxl_vx2dUqMrVEevX-Vdx2VVnf-D5f73gZhvi4t36iPL8Dsw4aACekoLvVOV7-eXDjz7GHy60QFqcwKf5g2AlKPOInyZ6vJg_fn4qA9argvCRgwVybXE9Ndm2W0v8La4uFYWpJBOUveDDUrSQfzal7RsYvLb_OyaMlPHdrd_bwA9qqZWuyJXd-L9lxr7RQ%3D%3D%7CMw3kt91KJR0Uy5L-oNztAg%3D%3D&dpid=4XVofb_lH-__hr2JNGhKfg%3D%3D%7Cr9ciCU1cx3zmHXihItKO0g%3D%3D", + "price": 0.01, + "w": 350, + "h": 50, + "ext": { + "curls": null + } + } + ] + } + ], + "bidid": "04db8629-179d-4bcd-acce-e54722969006", + "cur": "USD" + } + } + } + ], + "expectedBidResponses": [ + { + "currency": "USD", + "bids": [ + { + "bid": { + "adm": "\"\"", + "adomain": [ + "smaato.com" + ], + "cid": "CM6523", + "crid": "CR69381", + "id": "6906aae8-7f74-4edd-9a4f-f49379a3cadd", + "impid": "1C86242D-9535-47D6-9576-7B1FE87F282C", + "iurl": "https://bidstalkcreatives.s3.amazonaws.com/1x1.png", + "nurl": "https://ets-eu-west-1.track.smaato.net/v1/view?sessionId=e4e17adb-9599-42b1-bb5f-a1f1b3bee572&adSourceId=6906aae8-7f74-4edd-9a4f-f49379a3cadd&originalRequestTime=1552310449698&expires=1552311350698&winurl=ama8JbpJVpFWxvEja5viE3cLXFu58qRI8dGUh23xtsOn3N2-5UU0IwkgNEmR82pI37fcMXejL5IWTNAoW6Cnsjf-Dxl_vx2dUqMrVEevX-Vdx2VVnf-D5f73gZhvi4t36iPL8Dsw4aACekoLvVOV7-eXDjz7GHy60QFqcwKf5g2AlKPOInyZ6vJg_fn4qA9argvCRgwVybXE9Ndm2W0v8La4uFYWpJBOUveDDUrSQfzal7RsYvLb_OyaMlPHdrd_bwA9qqZWuyJXd-L9lxr7RQ%3D%3D%7CMw3kt91KJR0Uy5L-oNztAg%3D%3D&dpid=4XVofb_lH-__hr2JNGhKfg%3D%3D%7Cr9ciCU1cx3zmHXihItKO0g%3D%3D", + "price": 0.01, + "w": 350, + "h": 50, + "exp": 300, + "ext": { + "curls": null + } + }, + "type": "banner" + } + ] + } + ] +} diff --git a/adapters/smaato/smaatotest/supplemental/expires-header-response.json b/adapters/smaato/smaatotest/supplemental/expires-header-response.json index 885d5e491be..a063c7c1757 100644 --- a/adapters/smaato/smaatotest/supplemental/expires-header-response.json +++ b/adapters/smaato/smaatotest/supplemental/expires-header-response.json @@ -123,7 +123,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -171,7 +171,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/supplemental/no-app-site-request.json b/adapters/smaato/smaatotest/supplemental/no-app-site-dooh-request.json similarity index 92% rename from adapters/smaato/smaatotest/supplemental/no-app-site-request.json rename to adapters/smaato/smaatotest/supplemental/no-app-site-dooh-request.json index 04a73b4f40d..c6b2ead79da 100644 --- a/adapters/smaato/smaatotest/supplemental/no-app-site-request.json +++ b/adapters/smaato/smaatotest/supplemental/no-app-site-dooh-request.json @@ -23,7 +23,7 @@ }, "expectedMakeRequestsErrors": [ { - "value": "Missing Site/App.", + "value": "Missing Site/App/DOOH.", "comparison": "literal" } ] diff --git a/adapters/smaato/smaatotest/supplemental/no-bid-response.json b/adapters/smaato/smaatotest/supplemental/no-bid-response.json index f7f80855fe5..be41b1f1c68 100644 --- a/adapters/smaato/smaatotest/supplemental/no-bid-response.json +++ b/adapters/smaato/smaatotest/supplemental/no-bid-response.json @@ -123,7 +123,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] diff --git a/adapters/smaato/smaatotest/supplemental/no-consent-info-request.json b/adapters/smaato/smaatotest/supplemental/no-consent-info-request.json index 646f4d72e2a..6be49b1b4fb 100644 --- a/adapters/smaato/smaatotest/supplemental/no-consent-info-request.json +++ b/adapters/smaato/smaatotest/supplemental/no-consent-info-request.json @@ -70,7 +70,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -117,7 +117,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/supplemental/outdated-expires-header-response.json b/adapters/smaato/smaatotest/supplemental/outdated-expires-header-response.json index 1bc27aea876..fd52751aae6 100644 --- a/adapters/smaato/smaatotest/supplemental/outdated-expires-header-response.json +++ b/adapters/smaato/smaatotest/supplemental/outdated-expires-header-response.json @@ -123,7 +123,7 @@ "keywords": "power tools" }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1C86242D-9535-47D6-9576-7B1FE87F282C"] @@ -171,7 +171,7 @@ "bids": [ { "bid": { - "adm": "
\"\"
", + "adm": "\"\"", "adomain": [ "smaato.com" ], diff --git a/adapters/smaato/smaatotest/video/multiple-adpods-skadn.json b/adapters/smaato/smaatotest/video/multiple-adpods-skadn.json index 749c859bd28..a9942bcbd93 100644 --- a/adapters/smaato/smaatotest/video/multiple-adpods-skadn.json +++ b/adapters/smaato/smaatotest/video/multiple-adpods-skadn.json @@ -301,7 +301,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1_1","1_2"] @@ -516,7 +516,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["2_1","2_2"] diff --git a/adapters/smaato/smaatotest/video/multiple-adpods.json b/adapters/smaato/smaatotest/video/multiple-adpods.json index 36c98c2f741..c2eac4dc65c 100644 --- a/adapters/smaato/smaatotest/video/multiple-adpods.json +++ b/adapters/smaato/smaatotest/video/multiple-adpods.json @@ -234,7 +234,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1_1","1_2"] @@ -390,7 +390,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["2_1","2_2"] diff --git a/adapters/smaato/smaatotest/video/single-adpod-skadn.json b/adapters/smaato/smaatotest/video/single-adpod-skadn.json index 545cdb5351e..3f2070a3021 100644 --- a/adapters/smaato/smaatotest/video/single-adpod-skadn.json +++ b/adapters/smaato/smaatotest/video/single-adpod-skadn.json @@ -221,7 +221,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1_1","1_2"] diff --git a/adapters/smaato/smaatotest/video/single-adpod.json b/adapters/smaato/smaatotest/video/single-adpod.json index ff9fdfce892..11e6ccf710d 100644 --- a/adapters/smaato/smaatotest/video/single-adpod.json +++ b/adapters/smaato/smaatotest/video/single-adpod.json @@ -180,7 +180,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1_1","1_2"] diff --git a/adapters/smaato/smaatotest/videosupplemental/bad-adtype-header-response.json b/adapters/smaato/smaatotest/videosupplemental/bad-adtype-header-response.json index f422b0af9d9..e831add95de 100644 --- a/adapters/smaato/smaatotest/videosupplemental/bad-adtype-header-response.json +++ b/adapters/smaato/smaatotest/videosupplemental/bad-adtype-header-response.json @@ -176,7 +176,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs": [ @@ -228,7 +228,7 @@ ], "expectedMakeBidsErrors": [ { - "value": "X-Smt-Adtype header is missing!", + "value": "X-Smt-Adtype header is missing.", "comparison": "literal" } ], diff --git a/adapters/smaato/smaatotest/videosupplemental/bad-bid-ext-response.json b/adapters/smaato/smaatotest/videosupplemental/bad-bid-ext-response.json index 6cf7f23803c..7fca5d38592 100644 --- a/adapters/smaato/smaatotest/videosupplemental/bad-bid-ext-response.json +++ b/adapters/smaato/smaatotest/videosupplemental/bad-bid-ext-response.json @@ -176,7 +176,7 @@ } }, "ext": { - "client": "prebid_server_1.0" + "client": "prebid_server_1.1" } }, "impIDs":["1_1","1_2"]