prebid.js 7.19.0 → 7.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/dist/33acrossBidAdapter.js +1 -1
  2. package/dist/33acrossIdSystem.js +1 -1
  3. package/dist/adWMGAnalyticsAdapter.js +1 -1
  4. package/dist/adagioAnalyticsAdapter.js +1 -1
  5. package/dist/adagioBidAdapter.js +1 -1
  6. package/dist/adbookpspBidAdapter.js +1 -1
  7. package/dist/adgenerationBidAdapter.js +1 -1
  8. package/dist/adkernelAdnAnalyticsAdapter.js +1 -1
  9. package/dist/adkernelBidAdapter.js +1 -1
  10. package/dist/adlooxAdServerVideo.js +1 -1
  11. package/dist/adlooxAnalyticsAdapter.js +1 -1
  12. package/dist/adlooxRtdProvider.js +1 -1
  13. package/dist/adomikAnalyticsAdapter.js +1 -1
  14. package/dist/adrelevantisBidAdapter.js +1 -1
  15. package/dist/adtrgtmeBidAdapter.js +1 -1
  16. package/dist/adxcgAnalyticsAdapter.js +1 -1
  17. package/dist/adxcgBidAdapter.js +1 -1
  18. package/dist/adxpremiumAnalyticsAdapter.js +1 -1
  19. package/dist/ajaBidAdapter.js +1 -1
  20. package/dist/amxBidAdapter.js +1 -1
  21. package/dist/amxIdSystem.js +1 -1
  22. package/dist/aolBidAdapter.js +1 -1
  23. package/dist/appierAnalyticsAdapter.js +1 -1
  24. package/dist/appnexusBidAdapter.js +1 -1
  25. package/dist/asoBidAdapter.js +1 -1
  26. package/dist/atsAnalyticsAdapter.js +1 -1
  27. package/dist/axonixBidAdapter.js +1 -1
  28. package/dist/bidViewability.js +1 -1
  29. package/dist/bidglassBidAdapter.js +1 -1
  30. package/dist/bidwatchAnalyticsAdapter.js +1 -1
  31. package/dist/big-richmediaBidAdapter.js +1 -1
  32. package/dist/bridgewellBidAdapter.js +1 -1
  33. package/dist/brightMountainMediaBidAdapter.js +1 -1
  34. package/dist/byDataAnalyticsAdapter.js +1 -1
  35. package/dist/carodaBidAdapter.js +1 -1
  36. package/dist/categoryTranslation.js +1 -1
  37. package/dist/concertAnalyticsAdapter.js +1 -1
  38. package/dist/concertBidAdapter.js +1 -1
  39. package/dist/connectIdSystem.js +1 -1
  40. package/dist/connectadBidAdapter.js +1 -1
  41. package/dist/consentManagement.js +1 -1
  42. package/dist/consentManagementUsp.js +1 -1
  43. package/dist/consumableBidAdapter.js +1 -1
  44. package/dist/conversantAnalyticsAdapter.js +1 -1
  45. package/dist/conversantBidAdapter.js +1 -1
  46. package/dist/craftBidAdapter.js +1 -1
  47. package/dist/criteoBidAdapter.js +1 -1
  48. package/dist/currency.js +1 -1
  49. package/dist/datablocksAnalyticsAdapter.js +1 -1
  50. package/dist/dchain.js +1 -1
  51. package/dist/debugging-standalone.js +1 -1
  52. package/dist/debugging.js +1 -1
  53. package/dist/dependencies.json +3 -0
  54. package/dist/dfpAdServerVideo.js +1 -1
  55. package/dist/dspxBidAdapter.js +1 -1
  56. package/dist/eplanningAnalyticsAdapter.js +1 -1
  57. package/dist/eplanningBidAdapter.js +1 -1
  58. package/dist/finativeBidAdapter.js +1 -1
  59. package/dist/fintezaAnalyticsAdapter.js +1 -1
  60. package/dist/ftrackIdSystem.js +1 -1
  61. package/dist/gdprEnforcement.js +1 -1
  62. package/dist/glimpseBidAdapter.js +1 -1
  63. package/dist/gmosspBidAdapter.js +1 -1
  64. package/dist/goldbachBidAdapter.js +1 -1
  65. package/dist/googleAnalyticsAdapter.js +1 -1
  66. package/dist/gridBidAdapter.js +1 -1
  67. package/dist/gridNMBidAdapter.js +1 -1
  68. package/dist/gumgumBidAdapter.js +1 -1
  69. package/dist/h12mediaBidAdapter.js +1 -1
  70. package/dist/hadronAnalyticsAdapter.js +1 -1
  71. package/dist/id5AnalyticsAdapter.js +1 -1
  72. package/dist/id5IdSystem.js +1 -1
  73. package/dist/improvedigitalBidAdapter.js +1 -1
  74. package/dist/inmarBidAdapter.js +1 -1
  75. package/dist/insticatorBidAdapter.js +1 -1
  76. package/dist/invisiblyAnalyticsAdapter.js +1 -1
  77. package/dist/ixBidAdapter.js +1 -1
  78. package/dist/justpremiumBidAdapter.js +1 -1
  79. package/dist/kargoAnalyticsAdapter.js +1 -1
  80. package/dist/kinessoIdSystem.js +1 -1
  81. package/dist/konduitAnalyticsAdapter.js +1 -1
  82. package/dist/kueezBidAdapter.js +1 -1
  83. package/dist/lassoBidAdapter.js +1 -1
  84. package/dist/lifestreetBidAdapter.js +1 -1
  85. package/dist/liveIntentAnalyticsAdapter.js +1 -1
  86. package/dist/liveIntentIdSystem.js +1 -1
  87. package/dist/livewrappedAnalyticsAdapter.js +1 -1
  88. package/dist/liveyieldAnalyticsAdapter.js +1 -1
  89. package/dist/logicadBidAdapter.js +1 -1
  90. package/dist/loglyliftBidAdapter.js +1 -1
  91. package/dist/lotamePanoramaIdSystem.js +1 -1
  92. package/dist/magniteAnalyticsAdapter.js +1 -0
  93. package/dist/malltvAnalyticsAdapter.js +1 -1
  94. package/dist/marsmediaAnalyticsAdapter.js +1 -1
  95. package/dist/marsmediaBidAdapter.js +1 -1
  96. package/dist/mass.js +1 -1
  97. package/dist/mediafuseBidAdapter.js +1 -1
  98. package/dist/medianetAnalyticsAdapter.js +1 -1
  99. package/dist/mediasquareBidAdapter.js +1 -1
  100. package/dist/mgidBidAdapter.js +1 -1
  101. package/dist/minutemediaBidAdapter.js +1 -1
  102. package/dist/multibid.js +1 -1
  103. package/dist/not-for-prod/prebid.js +186 -184
  104. package/dist/oguryBidAdapter.js +1 -1
  105. package/dist/onetagBidAdapter.js +1 -1
  106. package/dist/ooloAnalyticsAdapter.js +1 -1
  107. package/dist/openxAnalyticsAdapter.js +1 -1
  108. package/dist/optimonAnalyticsAdapter.js +1 -1
  109. package/dist/outbrainBidAdapter.js +1 -1
  110. package/dist/parrableIdSystem.js +1 -1
  111. package/dist/pianoDmpAnalyticsAdapter.js +1 -1
  112. package/dist/pixfutureBidAdapter.js +1 -1
  113. package/dist/prebid-core.js +2 -2
  114. package/dist/prebidServerBidAdapter.js +1 -1
  115. package/dist/prebidmanagerAnalyticsAdapter.js +1 -1
  116. package/dist/priceFloors.js +1 -1
  117. package/dist/publinkIdSystem.js +1 -1
  118. package/dist/pubmaticAnalyticsAdapter.js +1 -1
  119. package/dist/pubmaticBidAdapter.js +1 -1
  120. package/dist/pubperfAnalyticsAdapter.js +1 -1
  121. package/dist/pubstackAnalyticsAdapter.js +1 -1
  122. package/dist/pubwiseAnalyticsAdapter.js +1 -1
  123. package/dist/pubxaiAnalyticsAdapter.js +1 -1
  124. package/dist/pulsepointAnalyticsAdapter.js +1 -1
  125. package/dist/pxyzBidAdapter.js +1 -1
  126. package/dist/quantcastBidAdapter.js +1 -1
  127. package/dist/quantcastIdSystem.js +1 -1
  128. package/dist/readpeakBidAdapter.js +1 -1
  129. package/dist/realvuAnalyticsAdapter.js +1 -1
  130. package/dist/relaidoBidAdapter.js +1 -1
  131. package/dist/relevantAnalyticsAdapter.js +1 -1
  132. package/dist/rhythmoneBidAdapter.js +1 -1
  133. package/dist/riseBidAdapter.js +1 -1
  134. package/dist/rivrAnalyticsAdapter.js +1 -1
  135. package/dist/roxotAnalyticsAdapter.js +1 -1
  136. package/dist/rtdModule.js +1 -1
  137. package/dist/rubiconAnalyticsAdapter.js +1 -1
  138. package/dist/rubiconBidAdapter.js +1 -1
  139. package/dist/s2sTesting.js +1 -1
  140. package/dist/scaleableAnalyticsAdapter.js +1 -1
  141. package/dist/schain.js +1 -1
  142. package/dist/seedingAllianceBidAdapter.js +1 -1
  143. package/dist/seedtagBidAdapter.js +1 -1
  144. package/dist/sharedIdSystem.js +1 -1
  145. package/dist/sharethroughAnalyticsAdapter.js +1 -1
  146. package/dist/sharethroughBidAdapter.js +1 -1
  147. package/dist/shinezBidAdapter.js +1 -1
  148. package/dist/sigmoidAnalyticsAdapter.js +1 -1
  149. package/dist/smaatoBidAdapter.js +1 -1
  150. package/dist/smartadserverBidAdapter.js +1 -1
  151. package/dist/smartxBidAdapter.js +1 -1
  152. package/dist/smilewantedBidAdapter.js +1 -1
  153. package/dist/sonobiAnalyticsAdapter.js +1 -1
  154. package/dist/sonobiBidAdapter.js +1 -1
  155. package/dist/sovrnAnalyticsAdapter.js +1 -1
  156. package/dist/sovrnBidAdapter.js +1 -1
  157. package/dist/sspBCBidAdapter.js +1 -1
  158. package/dist/staqAnalyticsAdapter.js +1 -1
  159. package/dist/sublimeBidAdapter.js +1 -1
  160. package/dist/synacormediaBidAdapter.js +1 -1
  161. package/dist/taboolaBidAdapter.js +1 -1
  162. package/dist/tapadIdSystem.js +1 -1
  163. package/dist/targetVideoBidAdapter.js +1 -1
  164. package/dist/teadsBidAdapter.js +1 -1
  165. package/dist/teadsIdSystem.js +1 -0
  166. package/dist/terceptAnalyticsAdapter.js +1 -1
  167. package/dist/trionBidAdapter.js +1 -1
  168. package/dist/tripleliftBidAdapter.js +1 -1
  169. package/dist/ttdBidAdapter.js +1 -1
  170. package/dist/ucfunnelAnalyticsAdapter.js +1 -1
  171. package/dist/underdogmediaBidAdapter.js +1 -1
  172. package/dist/undertoneBidAdapter.js +1 -1
  173. package/dist/userId.js +1 -1
  174. package/dist/vidazooBidAdapter.js +1 -1
  175. package/dist/videobyteBidAdapter.js +1 -1
  176. package/dist/visxBidAdapter.js +1 -1
  177. package/dist/vrtcalBidAdapter.js +1 -1
  178. package/dist/vuukleBidAdapter.js +1 -1
  179. package/dist/weboramaRtdProvider.js +1 -1
  180. package/dist/widespaceBidAdapter.js +1 -1
  181. package/dist/winrBidAdapter.js +1 -1
  182. package/dist/yahoosspBidAdapter.js +1 -1
  183. package/dist/yieldmoBidAdapter.js +1 -1
  184. package/dist/yieldoneAnalyticsAdapter.js +1 -1
  185. package/dist/yuktamediaAnalyticsAdapter.js +1 -1
  186. package/dist/zeta_global_sspAnalyticsAdapter.js +1 -1
  187. package/modules/.submodules.json +1 -0
  188. package/modules/adkernelBidAdapter.js +2 -2
  189. package/modules/aolBidAdapter.js +25 -2
  190. package/modules/appnexusBidAdapter.js +19 -2
  191. package/modules/categoryTranslation.js +4 -4
  192. package/modules/connectIdSystem.js +16 -1
  193. package/modules/currency.js +11 -11
  194. package/modules/dchain.js +2 -2
  195. package/modules/debugging/legacy.js +2 -2
  196. package/modules/eplanningBidAdapter.js +48 -2
  197. package/modules/lotamePanoramaIdSystem.js +10 -6
  198. package/modules/magniteAnalyticsAdapter.js +902 -0
  199. package/modules/magniteAnalyticsAdapter.md +18 -0
  200. package/modules/mass.js +2 -2
  201. package/modules/multibid/index.js +5 -5
  202. package/modules/pixfutureBidAdapter.js +46 -15
  203. package/modules/prebidServerBidAdapter/index.js +10 -6
  204. package/modules/priceFloors.js +8 -22
  205. package/modules/rubiconAnalyticsAdapter.js +14 -9
  206. package/modules/taboolaBidAdapter.js +4 -4
  207. package/modules/teadsIdSystem.js +234 -0
  208. package/modules/teadsIdSystem.md +22 -0
  209. package/modules/userId/index.js +21 -14
  210. package/modules/vrtcalBidAdapter.js +7 -1
  211. package/modules/yahoosspBidAdapter.js +1 -1
  212. package/package.json +1 -1
  213. package/src/adapters/bidderFactory.js +13 -11
  214. package/src/auction.js +140 -69
  215. package/src/constants.json +8 -0
  216. package/src/prebid.js +2 -3
  217. package/src/targeting.js +31 -14
  218. package/test/fixtures/fixtures.js +2 -1
  219. package/test/spec/auctionmanager_spec.js +109 -21
  220. package/test/spec/modules/aolBidAdapter_spec.js +42 -9
  221. package/test/spec/modules/appnexusBidAdapter_spec.js +24 -0
  222. package/test/spec/modules/connectIdSystem_spec.js +20 -0
  223. package/test/spec/modules/currency_spec.js +14 -6
  224. package/test/spec/modules/eplanningBidAdapter_spec.js +285 -1
  225. package/test/spec/modules/lotamePanoramaIdSystem_spec.js +0 -1
  226. package/test/spec/modules/magniteAnalyticsAdapter_spec.js +1942 -0
  227. package/test/spec/modules/prebidServerBidAdapter_spec.js +43 -11
  228. package/test/spec/modules/priceFloors_spec.js +5 -5
  229. package/test/spec/modules/rubiconAnalyticsAdapter_spec.js +2 -3
  230. package/test/spec/modules/taboolaBidAdapter_spec.js +110 -11
  231. package/test/spec/modules/teadsIdSystem_spec.js +271 -0
  232. package/test/spec/modules/userId_spec.js +39 -4
  233. package/test/spec/modules/vrtcalBidAdapter_spec.js +12 -1
  234. package/test/spec/modules/yahoosspBidAdapter_spec.js +45 -0
  235. package/test/spec/unit/core/bidderFactory_spec.js +66 -11
  236. package/test/spec/unit/core/targeting_spec.js +28 -9
  237. package/test/spec/unit/pbjs_api_spec.js +4 -2
@@ -7,6 +7,7 @@ import * as utils from 'src/utils.js';
7
7
  import {hook} from '../../../src/hook.js';
8
8
  import {getGlobal} from '../../../src/prebidGlobal.js';
9
9
  import { makeSlot } from '../integration/faker/googletag.js';
10
+ import {BANNER, VIDEO} from '../../../src/mediaTypes.js';
10
11
 
11
12
  describe('E-Planning Adapter', function () {
12
13
  const adapter = newBidder('spec');
@@ -19,6 +20,7 @@ describe('E-Planning Adapter', function () {
19
20
  const CLEAN_ADUNIT_CODE2 = '300x250_1';
20
21
  const CLEAN_ADUNIT_CODE = '300x250_0';
21
22
  const CLEAN_ADUNIT_CODE_ML = 'adunitco_de';
23
+ const CLEAN_ADUNIT_CODE_VAST = 'VIDEO_300x250_0';
22
24
  const BID_ID = '123456789';
23
25
  const BID_ID2 = '987654321';
24
26
  const BID_ID3 = '998877665';
@@ -30,6 +32,9 @@ describe('E-Planning Adapter', function () {
30
32
  const CRID = '1234567890';
31
33
  const TEST_ISV = 'leles.e-planning.net';
32
34
  const ADOMAIN = 'adomain.com';
35
+ const ADM_VAST = '<VAST version=\"2.0\">\n<Ad id=\"602833\">\n<Wrapper>\n<AdSystem>Acudeo Compatible</AdSystem>\n<VASTAdTagURI>\nhttp://demo.tremormedia.com/proddev/vast/vast_inline_linear.xml\n</VASTAdTagURI>\n<Impression><![CDATA[https://cndigrazia34.devel.e-planning.net:444/eli/4/19911d/6584303d5d0da8bc?i=0123456789012345&fi=0123456789abcdef&pb=<% EXCHANGE_EPBID_49 %>&nfc=1&S=<% SERVER_ID %>&rnd=733663791&bk=0123456789abcdef]]></Impression><Impression>http://myTrackingURL/wrapper/impression</Impression>\n<Creatives>\n<Creative AdID=\"602833\">\n<Linear>\n<TrackingEvents></TrackingEvents>\n</Linear>\n</Creative>\n<Creative AdID=\"602833-Companion\">\n<CompanionAds>\n<Companion width=\"300\" height=\"250\">\n<StaticResource creativeType=\"image/jpeg\">\nhttp://demo.tremormedia.com/proddev/vast/300x250_banner1.jpg\n</StaticResource>\n<TrackingEvents>\n<Tracking event=\"creativeView\">\nhttp://myTrackingURL/wrapper/firstCompanionCreativeView\n</Tracking>\n</TrackingEvents>\n<CompanionClickThrough>http://www.tremormedia.com</CompanionClickThrough>\n</Companion>\n<Companion width=\"728\" height=\"90\">\n<StaticResource creativeType=\"image/jpeg\">\nhttp://demo.tremormedia.com/proddev/vast/728x90_banner1.jpg\n</StaticResource>\n<CompanionClickThrough>http://www.tremormedia.com</CompanionClickThrough>\n</Companion>\n</CompanionAds>\n</Creative>\n</Creatives>\n</Wrapper>\n</Ad>\n</VAST>\n';
36
+ const ADM_VAST_VV_1 = '<VideoAdServingTemplate xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"vast_loose.xsd\">test</VideoAdServingTemplate>';
37
+ const DEFAULT_SIZE_VAST = '640x480';
33
38
  const validBid = {
34
39
  'bidder': 'eplanning',
35
40
  'bidId': BID_ID,
@@ -69,6 +74,110 @@ describe('E-Planning Adapter', function () {
69
74
  },
70
75
  'sizes': [[300, 250], [300, 600]],
71
76
  };
77
+ const validBidSpaceOutstream = {
78
+ 'bidder': 'eplanning',
79
+ 'bidId': BID_ID,
80
+ 'params': {
81
+ 'ci': CI,
82
+ 'sn': SN,
83
+ },
84
+ 'mediaTypes': {
85
+ 'video': {
86
+ 'context': 'outstream',
87
+ 'playerSize': [300, 600],
88
+ 'mimes': ['video/mp4'],
89
+ 'protocols': [1, 2, 3, 4, 5, 6],
90
+ 'playbackmethod': [2],
91
+ 'skip': 1
92
+ }
93
+ },
94
+ };
95
+ const validBidOutstreamNoSize = {
96
+ 'bidder': 'eplanning',
97
+ 'bidId': BID_ID,
98
+ 'params': {
99
+ 'ci': CI,
100
+ 'sn': SN,
101
+ },
102
+ 'mediaTypes': {
103
+ 'video': {
104
+ 'context': 'outstream',
105
+ 'mimes': ['video/mp4'],
106
+ 'protocols': [1, 2, 3, 4, 5, 6],
107
+ 'playbackmethod': [2],
108
+ 'skip': 1
109
+ }
110
+ },
111
+ };
112
+ const validBidOutstreamNSizes = {
113
+ 'bidder': 'eplanning',
114
+ 'bidId': BID_ID,
115
+ 'params': {
116
+ 'ci': CI,
117
+ 'sn': SN,
118
+ },
119
+ 'mediaTypes': {
120
+ 'video': {
121
+ 'context': 'outstream',
122
+ 'playerSize': [[300, 600], [400, 500], [500, 500]],
123
+ 'mimes': ['video/mp4'],
124
+ 'protocols': [1, 2, 3, 4, 5, 6],
125
+ 'playbackmethod': [2],
126
+ 'skip': 1
127
+ }
128
+ },
129
+ };
130
+ const bidOutstreamInvalidSizes = {
131
+ 'bidder': 'eplanning',
132
+ 'bidId': BID_ID,
133
+ 'params': {
134
+ 'ci': CI,
135
+ 'sn': SN,
136
+ },
137
+ 'mediaTypes': {
138
+ 'video': {
139
+ 'context': 'outstream',
140
+ 'playerSize': 'invalidSize',
141
+ 'mimes': ['video/mp4'],
142
+ 'protocols': [1, 2, 3, 4, 5, 6],
143
+ 'playbackmethod': [2],
144
+ 'skip': 1
145
+ }
146
+ },
147
+ };
148
+ const validBidSpaceInstream = {
149
+ 'bidder': 'eplanning',
150
+ 'bidId': BID_ID,
151
+ 'params': {
152
+ 'ci': CI,
153
+ 'sn': SN,
154
+ },
155
+ 'mediaTypes': {
156
+ 'video': {
157
+ 'context': 'instream',
158
+ 'mimes': ['video/mp4'],
159
+ 'protocols': [1, 2, 3, 4, 5, 6],
160
+ 'playbackmethod': [2],
161
+ 'skip': 1
162
+ }
163
+ },
164
+ };
165
+ const validBidSpaceVastNoContext = {
166
+ 'bidder': 'eplanning',
167
+ 'bidId': BID_ID,
168
+ 'params': {
169
+ 'ci': CI,
170
+ 'sn': SN,
171
+ },
172
+ 'mediaTypes': {
173
+ 'video': {
174
+ 'mimes': ['video/mp4'],
175
+ 'protocols': [1, 2, 3, 4, 5, 6],
176
+ 'playbackmethod': [2],
177
+ 'skip': 1
178
+ }
179
+ },
180
+ };
72
181
  const validBidView = {
73
182
  'bidder': 'eplanning',
74
183
  'bidId': BID_ID,
@@ -145,6 +254,14 @@ describe('E-Planning Adapter', function () {
145
254
  }
146
255
  }
147
256
  };
257
+ const validBidNoSize = {
258
+ 'bidder': 'eplanning',
259
+ 'bidId': BID_ID,
260
+ 'params': {
261
+ 'ci': CI,
262
+ 'sn': SN,
263
+ }
264
+ };
148
265
  const response = {
149
266
  body: {
150
267
  'sI': {
@@ -176,6 +293,68 @@ describe('E-Planning Adapter', function () {
176
293
  ]
177
294
  }
178
295
  };
296
+ const responseVast = {
297
+ body: {
298
+ 'sI': {
299
+ 'k': '12345'
300
+ },
301
+ 'sec': {
302
+ 'k': 'ROS'
303
+ },
304
+ 'sp': [{
305
+ 'k': CLEAN_ADUNIT_CODE_VAST,
306
+ 'a': [{
307
+ 'adm': ADM_VAST,
308
+ 'id': '7854abc56248f874',
309
+ 'i': I_ID,
310
+ 'fi': '7854abc56248f872',
311
+ 'ip': '45621afd87462104',
312
+ 'w': W,
313
+ 'h': H,
314
+ 'crid': CRID,
315
+ 'pr': CPM
316
+ }],
317
+ }],
318
+ 'cs': [
319
+ 'http://a-sync-url.com/',
320
+ {
321
+ 'u': 'http://another-sync-url.com/test.php?&partner=123456&endpoint=us-east',
322
+ 'ifr': true
323
+ }
324
+ ]
325
+ }
326
+ };
327
+ const responseVastVV1 = {
328
+ body: {
329
+ 'sI': {
330
+ 'k': '12345'
331
+ },
332
+ 'sec': {
333
+ 'k': 'ROS'
334
+ },
335
+ 'sp': [{
336
+ 'k': CLEAN_ADUNIT_CODE_VAST,
337
+ 'a': [{
338
+ 'adm': ADM_VAST_VV_1,
339
+ 'id': '7854abc56248f874',
340
+ 'i': I_ID,
341
+ 'fi': '7854abc56248f872',
342
+ 'ip': '45621afd87462104',
343
+ 'w': W,
344
+ 'h': H,
345
+ 'crid': CRID,
346
+ 'pr': CPM
347
+ }],
348
+ }],
349
+ 'cs': [
350
+ 'http://a-sync-url.com/',
351
+ {
352
+ 'u': 'http://another-sync-url.com/test.php?&partner=123456&endpoint=us-east',
353
+ 'ifr': true
354
+ }
355
+ ]
356
+ }
357
+ };
179
358
  const responseWithTwoAdunits = {
180
359
  body: {
181
360
  'sI': {
@@ -411,6 +590,77 @@ describe('E-Planning Adapter', function () {
411
590
  expect(e).to.equal('300x250_0:300x250,300x600+100x100_0:100x100');
412
591
  });
413
592
 
593
+ it('should return correct e parameter with support vast with one space with size outstream', function () {
594
+ let bidRequests = [validBidSpaceOutstream];
595
+ const data = spec.buildRequests(bidRequests, bidderRequest).data;
596
+ expect(data.e).to.equal('video_300x600_0:300x600;1');
597
+ expect(data.vctx).to.equal(2);
598
+ expect(data.vv).to.equal(3);
599
+ });
600
+
601
+ it('should correctly return the e parameter with n sizes in playerSize', function () {
602
+ let bidRequests = [validBidOutstreamNSizes];
603
+ const data = spec.buildRequests(bidRequests, bidderRequest).data;
604
+ expect(data.e).to.equal('video_300x600_0:300x600;1');
605
+ expect(data.vctx).to.equal(2);
606
+ expect(data.vv).to.equal(3);
607
+ });
608
+
609
+ it('should correctly return the e parameter with invalid sizes in playerSize', function () {
610
+ let bidRequests = [bidOutstreamInvalidSizes];
611
+ const data = spec.buildRequests(bidRequests, bidderRequest).data;
612
+ expect(data.e).to.equal('video_' + DEFAULT_SIZE_VAST + '_0:' + DEFAULT_SIZE_VAST + ';1');
613
+ expect(data.vctx).to.equal(2);
614
+ expect(data.vv).to.equal(3);
615
+ });
616
+
617
+ it('should return correct e parameter with support vast with one space with size default outstream', function () {
618
+ let bidRequests = [validBidOutstreamNoSize];
619
+ const data = spec.buildRequests(bidRequests, bidderRequest).data;
620
+ expect(data.e).to.equal('video_640x480_0:640x480;1');
621
+ expect(data.vctx).to.equal(2);
622
+ expect(data.vv).to.equal(3);
623
+ });
624
+
625
+ it('should return correct e parameter with support vast with one space with size instream', function () {
626
+ let bidRequests = [validBidSpaceInstream];
627
+ const data = spec.buildRequests(bidRequests, bidderRequest).data;
628
+ expect(data.e).to.equal('video_640x480_0:640x480;1');
629
+ expect(data.vctx).to.equal(1);
630
+ expect(data.vv).to.equal(3);
631
+ });
632
+
633
+ it('should return correct e parameter with support vast with one space with size default and vctx default', function () {
634
+ let bidRequests = [validBidSpaceVastNoContext];
635
+ const data = spec.buildRequests(bidRequests, bidderRequest).data;
636
+ expect(data.e).to.equal('video_640x480_0:640x480;1');
637
+ expect(data.vctx).to.equal(1);
638
+ expect(data.vv).to.equal(3);
639
+ });
640
+
641
+ it('if 2 bids arrive, one outstream and the other instream, instream has more priority', function () {
642
+ let bidRequests = [validBidSpaceOutstream, validBidSpaceInstream];
643
+ const data = spec.buildRequests(bidRequests, bidderRequest).data;
644
+ expect(data.e).to.equal('video_640x480_0:640x480;1');
645
+ expect(data.vctx).to.equal(1);
646
+ expect(data.vv).to.equal(3);
647
+ });
648
+ it('if 2 bids arrive, one outstream and another banner, outstream has more priority', function () {
649
+ let bidRequests = [validBidSpaceOutstream, validBidSpaceName];
650
+ const data = spec.buildRequests(bidRequests, bidderRequest).data;
651
+ expect(data.e).to.equal('video_300x600_0:300x600;1');
652
+ expect(data.vctx).to.equal(2);
653
+ expect(data.vv).to.equal(3);
654
+ });
655
+
656
+ it('should return correct e parameter with support vast with one space outstream', function () {
657
+ let bidRequests = [validBidSpaceOutstream, validBidOutstreamNoSize];
658
+ const data = spec.buildRequests(bidRequests, bidderRequest).data;
659
+ expect(data.e).to.equal('video_300x600_0:300x600;1+video_640x480_1:640x480;1');
660
+ expect(data.vctx).to.equal(2);
661
+ expect(data.vv).to.equal(3);
662
+ });
663
+
414
664
  it('should return correct e parameter with linear mapping attribute with more than one adunit', function () {
415
665
  let bidRequestsML = [validBidMappingLinear];
416
666
  const NEW_CODE = ADUNIT_CODE + '2';
@@ -588,6 +838,40 @@ describe('E-Planning Adapter', function () {
588
838
  };
589
839
  expect(bidResponse).to.deep.equal(expectedResponse);
590
840
  });
841
+
842
+ it('should correctly map the parameters in the response vast', function () {
843
+ const bidResponse = spec.interpretResponse(responseVast, { adUnitToBidId: { [CLEAN_ADUNIT_CODE_VAST]: BID_ID } })[0];
844
+ const expectedResponse = {
845
+ requestId: BID_ID,
846
+ cpm: CPM,
847
+ width: W,
848
+ height: H,
849
+ ttl: 120,
850
+ creativeId: CRID,
851
+ netRevenue: true,
852
+ currency: 'USD',
853
+ vastXml: ADM_VAST,
854
+ mediaTypes: VIDEO
855
+ };
856
+ expect(bidResponse).to.deep.equal(expectedResponse);
857
+ });
858
+
859
+ it('should correctly map the parameters in the response vast vv 1', function () {
860
+ const bidResponse = spec.interpretResponse(responseVastVV1, { adUnitToBidId: { [CLEAN_ADUNIT_CODE_VAST]: BID_ID } })[0];
861
+ const expectedResponse = {
862
+ requestId: BID_ID,
863
+ cpm: CPM,
864
+ width: W,
865
+ height: H,
866
+ ttl: 120,
867
+ creativeId: CRID,
868
+ netRevenue: true,
869
+ currency: 'USD',
870
+ vastXml: ADM_VAST_VV_1,
871
+ mediaTypes: VIDEO
872
+ };
873
+ expect(bidResponse).to.deep.equal(expectedResponse);
874
+ });
591
875
  });
592
876
 
593
877
  describe('getUserSyncs', function () {
@@ -1029,7 +1313,7 @@ describe('E-Planning Adapter', function () {
1029
1313
  sandbox.restore();
1030
1314
  })
1031
1315
 
1032
- it('should add eids to the request ', function() {
1316
+ it('should add eids to the request', function() {
1033
1317
  let bidRequests = [validBidView];
1034
1318
  const expected_id5id = encodeURIComponent(JSON.stringify({ uid: 'ID5-ZHMOL_IfFSt7_lVYX8rBZc6GH3XMWyPQOBUfr4bm0g!', ext: { linkType: 1 } }));
1035
1319
  const request = spec.buildRequests(bidRequests, bidderRequest);
@@ -70,7 +70,6 @@ describe('LotameId', function() {
70
70
 
71
71
  it('should call the remote server when getId is called', function () {
72
72
  expect(request.url).to.be.eq('https://id.crwdcntrl.net/id');
73
-
74
73
  expect(callBackSpy.calledOnce).to.be.true;
75
74
  });
76
75