File tree Expand file tree Collapse file tree 2 files changed +51
-2
lines changed Expand file tree Collapse file tree 2 files changed +51
-2
lines changed Original file line number Diff line number Diff line change @@ -101,6 +101,11 @@ export const spec = {
101
101
payload . userAgentClientHints = userAgentClientHints ;
102
102
}
103
103
104
+ const dsa = deepAccess ( bidderRequest , 'ortb2.regs.ext.dsa' ) ;
105
+ if ( dsa ) {
106
+ payload . dsa = dsa ;
107
+ }
108
+
104
109
const payloadString = JSON . stringify ( payload ) ;
105
110
return {
106
111
method : 'POST' ,
@@ -138,6 +143,9 @@ export const spec = {
138
143
if ( bid . dealId ) {
139
144
bidResponse . dealId = bid . dealId
140
145
}
146
+ if ( bid . dsaAdRender ) {
147
+ bidResponse . meta . adrender = bid . dsaAdRender ;
148
+ }
141
149
bidResponses . push ( bidResponse ) ;
142
150
} ) ;
143
151
}
Original file line number Diff line number Diff line change @@ -1005,6 +1005,45 @@ describe('teadsBidAdapter', () => {
1005
1005
}
1006
1006
} ) ;
1007
1007
}
1008
+
1009
+ it ( 'should add dsa info to payload if available' , function ( ) {
1010
+ const bidRequestWithDsa = Object . assign ( { } , bidderRequestDefault , {
1011
+ ortb2 : {
1012
+ regs : {
1013
+ ext : {
1014
+ dsa : {
1015
+ dsarequired : '1' ,
1016
+ pubrender : '2' ,
1017
+ datatopub : '3' ,
1018
+ transparency : [ {
1019
+ domain : 'test.com' ,
1020
+ dsaparams : [ 1 , 2 , 3 ]
1021
+ } ]
1022
+ }
1023
+ }
1024
+ }
1025
+ }
1026
+ } ) ;
1027
+
1028
+ const requestWithDsa = spec . buildRequests ( bidRequests , bidRequestWithDsa ) ;
1029
+ const payload = JSON . parse ( requestWithDsa . data ) ;
1030
+
1031
+ expect ( payload . dsa ) . to . exist ;
1032
+ expect ( payload . dsa ) . to . deep . equal (
1033
+ {
1034
+ dsarequired : '1' ,
1035
+ pubrender : '2' ,
1036
+ datatopub : '3' ,
1037
+ transparency : [ {
1038
+ domain : 'test.com' ,
1039
+ dsaparams : [ 1 , 2 , 3 ]
1040
+ } ]
1041
+ }
1042
+ ) ;
1043
+
1044
+ const defaultRequest = spec . buildRequests ( bidRequests , bidderRequestDefault ) ;
1045
+ expect ( JSON . parse ( defaultRequest . data ) . dsa ) . to . not . exist ;
1046
+ } ) ;
1008
1047
} ) ;
1009
1048
1010
1049
describe ( 'interpretResponse' , function ( ) {
@@ -1031,7 +1070,8 @@ describe('teadsBidAdapter', () => {
1031
1070
'width' : 350 ,
1032
1071
'creativeId' : 'fs3ff' ,
1033
1072
'placementId' : 34 ,
1034
- 'dealId' : 'ABC_123'
1073
+ 'dealId' : 'ABC_123' ,
1074
+ 'dsaAdRender' : 1
1035
1075
} ]
1036
1076
}
1037
1077
} ;
@@ -1057,7 +1097,8 @@ describe('teadsBidAdapter', () => {
1057
1097
'currency' : 'USD' ,
1058
1098
'netRevenue' : true ,
1059
1099
'meta' : {
1060
- advertiserDomains : [ ]
1100
+ advertiserDomains : [ ] ,
1101
+ adrender : 1
1061
1102
} ,
1062
1103
'ttl' : 360 ,
1063
1104
'ad' : AD_SCRIPT ,
You can’t perform that action at this time.
0 commit comments