@@ -8,6 +8,7 @@ describe('Conversant adapter tests', function() {
8
8
const siteId = '108060' ;
9
9
10
10
const bidRequests = [
11
+ // banner with single size
11
12
{
12
13
bidder : 'conversant' ,
13
14
params : {
@@ -23,19 +24,27 @@ describe('Conversant adapter tests', function() {
23
24
bidId : 'bid000' ,
24
25
bidderRequestId : '117d765b87bed38' ,
25
26
auctionId : 'req000'
26
- } , {
27
+ } ,
28
+ // banner with sizes in mediaTypes.banner.sizes
29
+ {
27
30
bidder : 'conversant' ,
28
31
params : {
29
32
site_id : siteId ,
30
33
secure : false
31
34
} ,
35
+ mediaTypes : {
36
+ banner : {
37
+ sizes : [ [ 728 , 90 ] , [ 468 , 60 ] ]
38
+ }
39
+ } ,
32
40
placementCode : 'pcode001' ,
33
41
transactionId : 'tx001' ,
34
- sizes : [ [ 468 , 60 ] ] ,
35
42
bidId : 'bid001' ,
36
43
bidderRequestId : '117d765b87bed38' ,
37
44
auctionId : 'req000'
38
- } , {
45
+ } ,
46
+ // banner with tag id and position
47
+ {
39
48
bidder : 'conversant' ,
40
49
params : {
41
50
site_id : siteId ,
@@ -49,7 +58,9 @@ describe('Conversant adapter tests', function() {
49
58
bidId : 'bid002' ,
50
59
bidderRequestId : '117d765b87bed38' ,
51
60
auctionId : 'req000'
52
- } , {
61
+ } ,
62
+ // video with single size
63
+ {
53
64
bidder : 'conversant' ,
54
65
params : {
55
66
site_id : siteId ,
@@ -70,6 +81,47 @@ describe('Conversant adapter tests', function() {
70
81
bidId : 'bid003' ,
71
82
bidderRequestId : '117d765b87bed38' ,
72
83
auctionId : 'req000'
84
+ } ,
85
+ // video with playerSize
86
+ {
87
+ bidder : 'conversant' ,
88
+ params : {
89
+ site_id : siteId ,
90
+ maxduration : 30 ,
91
+ api : [ 2 , 3 ]
92
+ } ,
93
+ mediaTypes : {
94
+ video : {
95
+ context : 'instream' ,
96
+ playerSize : [ 1024 , 768 ] ,
97
+ api : [ 1 , 2 ] ,
98
+ protocols : [ 1 , 2 , 3 ] ,
99
+ mimes : [ 'video/mp4' , 'video/x-flv' ]
100
+ }
101
+ } ,
102
+ placementCode : 'pcode004' ,
103
+ transactionId : 'tx004' ,
104
+ bidId : 'bid004' ,
105
+ bidderRequestId : '117d765b87bed38' ,
106
+ auctionId : 'req000'
107
+ } ,
108
+ // video without sizes
109
+ {
110
+ bidder : 'conversant' ,
111
+ params : {
112
+ site_id : siteId
113
+ } ,
114
+ mediaTypes : {
115
+ video : {
116
+ context : 'instream' ,
117
+ mimes : [ 'video/mp4' , 'video/x-flv' ]
118
+ }
119
+ } ,
120
+ placementCode : 'pcode005' ,
121
+ transactionId : 'tx005' ,
122
+ bidId : 'bid005' ,
123
+ bidderRequestId : '117d765b87bed38' ,
124
+ auctionId : 'req000'
73
125
} ] ;
74
126
75
127
const bidResponses = {
@@ -129,6 +181,8 @@ describe('Conversant adapter tests', function() {
129
181
expect ( spec . isBidRequestValid ( bidRequests [ 1 ] ) ) . to . be . true ;
130
182
expect ( spec . isBidRequestValid ( bidRequests [ 2 ] ) ) . to . be . true ;
131
183
expect ( spec . isBidRequestValid ( bidRequests [ 3 ] ) ) . to . be . true ;
184
+ expect ( spec . isBidRequestValid ( bidRequests [ 4 ] ) ) . to . be . true ;
185
+ expect ( spec . isBidRequestValid ( bidRequests [ 5 ] ) ) . to . be . true ;
132
186
133
187
const simpleVideo = JSON . parse ( JSON . stringify ( bidRequests [ 3 ] ) ) ;
134
188
simpleVideo . params . site_id = 123 ;
@@ -151,7 +205,7 @@ describe('Conversant adapter tests', function() {
151
205
expect ( payload ) . to . have . property ( 'id' , 'req000' ) ;
152
206
expect ( payload ) . to . have . property ( 'at' , 1 ) ;
153
207
expect ( payload ) . to . have . property ( 'imp' ) ;
154
- expect ( payload . imp ) . to . be . an ( 'array' ) . with . lengthOf ( 4 ) ;
208
+ expect ( payload . imp ) . to . be . an ( 'array' ) . with . lengthOf ( 6 ) ;
155
209
156
210
expect ( payload . imp [ 0 ] ) . to . have . property ( 'id' , 'bid000' ) ;
157
211
expect ( payload . imp [ 0 ] ) . to . have . property ( 'secure' , 0 ) ;
@@ -169,18 +223,18 @@ describe('Conversant adapter tests', function() {
169
223
expect ( payload . imp [ 1 ] ) . to . have . property ( 'secure' , 0 ) ;
170
224
expect ( payload . imp [ 1 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
171
225
expect ( payload . imp [ 1 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
172
- expect ( payload . imp [ 0 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
226
+ expect ( payload . imp [ 1 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
173
227
expect ( payload . imp [ 1 ] ) . to . not . have . property ( 'tagid' ) ;
174
228
expect ( payload . imp [ 1 ] ) . to . have . property ( 'banner' ) ;
175
229
expect ( payload . imp [ 1 ] . banner ) . to . not . have . property ( 'pos' ) ;
176
230
expect ( payload . imp [ 1 ] . banner ) . to . have . property ( 'format' ) ;
177
- expect ( payload . imp [ 1 ] . banner . format ) . to . deep . equal ( [ { w : 468 , h : 60 } ] ) ;
231
+ expect ( payload . imp [ 1 ] . banner . format ) . to . deep . equal ( [ { w : 728 , h : 90 } , { w : 468 , h : 60 } ] ) ;
178
232
179
233
expect ( payload . imp [ 2 ] ) . to . have . property ( 'id' , 'bid002' ) ;
180
234
expect ( payload . imp [ 2 ] ) . to . have . property ( 'secure' , 0 ) ;
181
235
expect ( payload . imp [ 2 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
182
236
expect ( payload . imp [ 2 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
183
- expect ( payload . imp [ 0 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
237
+ expect ( payload . imp [ 2 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
184
238
expect ( payload . imp [ 2 ] ) . to . have . property ( 'banner' ) ;
185
239
expect ( payload . imp [ 2 ] . banner ) . to . have . property ( 'pos' , 2 ) ;
186
240
expect ( payload . imp [ 2 ] . banner ) . to . have . property ( 'format' ) ;
@@ -190,7 +244,7 @@ describe('Conversant adapter tests', function() {
190
244
expect ( payload . imp [ 3 ] ) . to . have . property ( 'secure' , 0 ) ;
191
245
expect ( payload . imp [ 3 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
192
246
expect ( payload . imp [ 3 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
193
- expect ( payload . imp [ 0 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
247
+ expect ( payload . imp [ 3 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
194
248
expect ( payload . imp [ 3 ] ) . to . not . have . property ( 'tagid' ) ;
195
249
expect ( payload . imp [ 3 ] ) . to . have . property ( 'video' ) ;
196
250
expect ( payload . imp [ 3 ] . video ) . to . not . have . property ( 'pos' ) ;
@@ -205,6 +259,42 @@ describe('Conversant adapter tests', function() {
205
259
expect ( payload . imp [ 3 ] . video ) . to . have . property ( 'maxduration' , 30 ) ;
206
260
expect ( payload . imp [ 3 ] ) . to . not . have . property ( 'banner' ) ;
207
261
262
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'id' , 'bid004' ) ;
263
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'secure' , 0 ) ;
264
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
265
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
266
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
267
+ expect ( payload . imp [ 4 ] ) . to . not . have . property ( 'tagid' ) ;
268
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'video' ) ;
269
+ expect ( payload . imp [ 4 ] . video ) . to . not . have . property ( 'pos' ) ;
270
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'w' , 1024 ) ;
271
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'h' , 768 ) ;
272
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'mimes' ) ;
273
+ expect ( payload . imp [ 4 ] . video . mimes ) . to . deep . equal ( [ 'video/mp4' , 'video/x-flv' ] ) ;
274
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'protocols' ) ;
275
+ expect ( payload . imp [ 4 ] . video . protocols ) . to . deep . equal ( [ 1 , 2 , 3 ] ) ;
276
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'api' ) ;
277
+ expect ( payload . imp [ 4 ] . video . api ) . to . deep . equal ( [ 2 , 3 ] ) ;
278
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'maxduration' , 30 ) ;
279
+ expect ( payload . imp [ 4 ] ) . to . not . have . property ( 'banner' ) ;
280
+
281
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'id' , 'bid005' ) ;
282
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'secure' , 0 ) ;
283
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
284
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
285
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
286
+ expect ( payload . imp [ 5 ] ) . to . not . have . property ( 'tagid' ) ;
287
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'video' ) ;
288
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'pos' ) ;
289
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'w' ) ;
290
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'h' ) ;
291
+ expect ( payload . imp [ 5 ] . video ) . to . have . property ( 'mimes' ) ;
292
+ expect ( payload . imp [ 5 ] . video . mimes ) . to . deep . equal ( [ 'video/mp4' , 'video/x-flv' ] ) ;
293
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'protocols' ) ;
294
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'api' ) ;
295
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'maxduration' ) ;
296
+ expect ( payload . imp [ 5 ] ) . to . not . have . property ( 'banner' ) ;
297
+
208
298
expect ( payload ) . to . have . property ( 'site' ) ;
209
299
expect ( payload . site ) . to . have . property ( 'id' , siteId ) ;
210
300
expect ( payload . site ) . to . have . property ( 'mobile' ) . that . is . oneOf ( [ 0 , 1 ] ) ;
0 commit comments