@@ -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 ,
@@ -69,6 +80,47 @@ describe('Conversant adapter tests', function() {
69
80
bidId : 'bid003' ,
70
81
bidderRequestId : '117d765b87bed38' ,
71
82
auctionId : 'req000'
83
+ } ,
84
+ // video with playerSize
85
+ {
86
+ bidder : 'conversant' ,
87
+ params : {
88
+ site_id : siteId ,
89
+ maxduration : 30 ,
90
+ api : [ 2 , 3 ]
91
+ } ,
92
+ mediaTypes : {
93
+ video : {
94
+ context : 'instream' ,
95
+ playerSize : [ 1024 , 768 ] ,
96
+ api : [ 1 , 2 ] ,
97
+ protocols : [ 1 , 2 , 3 ] ,
98
+ mimes : [ 'video/mp4' , 'video/x-flv' ]
99
+ }
100
+ } ,
101
+ placementCode : 'pcode004' ,
102
+ transactionId : 'tx004' ,
103
+ bidId : 'bid004' ,
104
+ bidderRequestId : '117d765b87bed38' ,
105
+ auctionId : 'req000'
106
+ } ,
107
+ // video without sizes
108
+ {
109
+ bidder : 'conversant' ,
110
+ params : {
111
+ site_id : siteId
112
+ } ,
113
+ mediaTypes : {
114
+ video : {
115
+ context : 'instream' ,
116
+ mimes : [ 'video/mp4' , 'video/x-flv' ]
117
+ }
118
+ } ,
119
+ placementCode : 'pcode005' ,
120
+ transactionId : 'tx005' ,
121
+ bidId : 'bid005' ,
122
+ bidderRequestId : '117d765b87bed38' ,
123
+ auctionId : 'req000'
72
124
} ] ;
73
125
74
126
const bidResponses = {
@@ -128,6 +180,8 @@ describe('Conversant adapter tests', function() {
128
180
expect ( spec . isBidRequestValid ( bidRequests [ 1 ] ) ) . to . be . true ;
129
181
expect ( spec . isBidRequestValid ( bidRequests [ 2 ] ) ) . to . be . true ;
130
182
expect ( spec . isBidRequestValid ( bidRequests [ 3 ] ) ) . to . be . true ;
183
+ expect ( spec . isBidRequestValid ( bidRequests [ 4 ] ) ) . to . be . true ;
184
+ expect ( spec . isBidRequestValid ( bidRequests [ 5 ] ) ) . to . be . true ;
131
185
132
186
const simpleVideo = JSON . parse ( JSON . stringify ( bidRequests [ 3 ] ) ) ;
133
187
simpleVideo . params . site_id = 123 ;
@@ -150,7 +204,7 @@ describe('Conversant adapter tests', function() {
150
204
expect ( payload ) . to . have . property ( 'id' , 'req000' ) ;
151
205
expect ( payload ) . to . have . property ( 'at' , 1 ) ;
152
206
expect ( payload ) . to . have . property ( 'imp' ) ;
153
- expect ( payload . imp ) . to . be . an ( 'array' ) . with . lengthOf ( 4 ) ;
207
+ expect ( payload . imp ) . to . be . an ( 'array' ) . with . lengthOf ( 6 ) ;
154
208
155
209
expect ( payload . imp [ 0 ] ) . to . have . property ( 'id' , 'bid000' ) ;
156
210
expect ( payload . imp [ 0 ] ) . to . have . property ( 'secure' , 0 ) ;
@@ -168,18 +222,18 @@ describe('Conversant adapter tests', function() {
168
222
expect ( payload . imp [ 1 ] ) . to . have . property ( 'secure' , 0 ) ;
169
223
expect ( payload . imp [ 1 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
170
224
expect ( payload . imp [ 1 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
171
- expect ( payload . imp [ 0 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
225
+ expect ( payload . imp [ 1 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
172
226
expect ( payload . imp [ 1 ] ) . to . not . have . property ( 'tagid' ) ;
173
227
expect ( payload . imp [ 1 ] ) . to . have . property ( 'banner' ) ;
174
228
expect ( payload . imp [ 1 ] . banner ) . to . not . have . property ( 'pos' ) ;
175
229
expect ( payload . imp [ 1 ] . banner ) . to . have . property ( 'format' ) ;
176
- expect ( payload . imp [ 1 ] . banner . format ) . to . deep . equal ( [ { w : 468 , h : 60 } ] ) ;
230
+ expect ( payload . imp [ 1 ] . banner . format ) . to . deep . equal ( [ { w : 728 , h : 90 } , { w : 468 , h : 60 } ] ) ;
177
231
178
232
expect ( payload . imp [ 2 ] ) . to . have . property ( 'id' , 'bid002' ) ;
179
233
expect ( payload . imp [ 2 ] ) . to . have . property ( 'secure' , 0 ) ;
180
234
expect ( payload . imp [ 2 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
181
235
expect ( payload . imp [ 2 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
182
- expect ( payload . imp [ 0 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
236
+ expect ( payload . imp [ 2 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
183
237
expect ( payload . imp [ 2 ] ) . to . have . property ( 'banner' ) ;
184
238
expect ( payload . imp [ 2 ] . banner ) . to . have . property ( 'pos' , 2 ) ;
185
239
expect ( payload . imp [ 2 ] . banner ) . to . have . property ( 'format' ) ;
@@ -189,7 +243,7 @@ describe('Conversant adapter tests', function() {
189
243
expect ( payload . imp [ 3 ] ) . to . have . property ( 'secure' , 0 ) ;
190
244
expect ( payload . imp [ 3 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
191
245
expect ( payload . imp [ 3 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
192
- expect ( payload . imp [ 0 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
246
+ expect ( payload . imp [ 3 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
193
247
expect ( payload . imp [ 3 ] ) . to . not . have . property ( 'tagid' ) ;
194
248
expect ( payload . imp [ 3 ] ) . to . have . property ( 'video' ) ;
195
249
expect ( payload . imp [ 3 ] . video ) . to . not . have . property ( 'pos' ) ;
@@ -204,6 +258,42 @@ describe('Conversant adapter tests', function() {
204
258
expect ( payload . imp [ 3 ] . video ) . to . have . property ( 'maxduration' , 30 ) ;
205
259
expect ( payload . imp [ 3 ] ) . to . not . have . property ( 'banner' ) ;
206
260
261
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'id' , 'bid004' ) ;
262
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'secure' , 0 ) ;
263
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
264
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
265
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
266
+ expect ( payload . imp [ 4 ] ) . to . not . have . property ( 'tagid' ) ;
267
+ expect ( payload . imp [ 4 ] ) . to . have . property ( 'video' ) ;
268
+ expect ( payload . imp [ 4 ] . video ) . to . not . have . property ( 'pos' ) ;
269
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'w' , 1024 ) ;
270
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'h' , 768 ) ;
271
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'mimes' ) ;
272
+ expect ( payload . imp [ 4 ] . video . mimes ) . to . deep . equal ( [ 'video/mp4' , 'video/x-flv' ] ) ;
273
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'protocols' ) ;
274
+ expect ( payload . imp [ 4 ] . video . protocols ) . to . deep . equal ( [ 1 , 2 , 3 ] ) ;
275
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'api' ) ;
276
+ expect ( payload . imp [ 4 ] . video . api ) . to . deep . equal ( [ 2 , 3 ] ) ;
277
+ expect ( payload . imp [ 4 ] . video ) . to . have . property ( 'maxduration' , 30 ) ;
278
+ expect ( payload . imp [ 4 ] ) . to . not . have . property ( 'banner' ) ;
279
+
280
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'id' , 'bid005' ) ;
281
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'secure' , 0 ) ;
282
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'bidfloor' , 0 ) ;
283
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'displaymanager' , 'Prebid.js' ) ;
284
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'displaymanagerver' ) . that . matches ( / ^ \d + \. \d + \. \d + $ / ) ;
285
+ expect ( payload . imp [ 5 ] ) . to . not . have . property ( 'tagid' ) ;
286
+ expect ( payload . imp [ 5 ] ) . to . have . property ( 'video' ) ;
287
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'pos' ) ;
288
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'w' ) ;
289
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'h' ) ;
290
+ expect ( payload . imp [ 5 ] . video ) . to . have . property ( 'mimes' ) ;
291
+ expect ( payload . imp [ 5 ] . video . mimes ) . to . deep . equal ( [ 'video/mp4' , 'video/x-flv' ] ) ;
292
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'protocols' ) ;
293
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'api' ) ;
294
+ expect ( payload . imp [ 5 ] . video ) . to . not . have . property ( 'maxduration' ) ;
295
+ expect ( payload . imp [ 5 ] ) . to . not . have . property ( 'banner' ) ;
296
+
207
297
expect ( payload ) . to . have . property ( 'site' ) ;
208
298
expect ( payload . site ) . to . have . property ( 'id' , siteId ) ;
209
299
expect ( payload . site ) . to . have . property ( 'mobile' ) . that . is . oneOf ( [ 0 , 1 ] ) ;
0 commit comments