prebid.js 8.0.0 → 8.2.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 (232) hide show
  1. package/.devcontainer/devcontainer.json +3 -1
  2. package/dist/33acrossBidAdapter.js +1 -1
  3. package/dist/33acrossIdSystem.js +1 -1
  4. package/dist/adagioBidAdapter.js +1 -1
  5. package/dist/adbookpspBidAdapter.js +1 -1
  6. package/dist/adgenerationBidAdapter.js +1 -1
  7. package/dist/admanBidAdapter.js +1 -1
  8. package/dist/adqueryBidAdapter.js +1 -1
  9. package/dist/adrelevantisBidAdapter.js +1 -1
  10. package/dist/adtrgtmeBidAdapter.js +1 -1
  11. package/dist/adxcgBidAdapter.js +1 -1
  12. package/dist/adyoulikeBidAdapter.js +1 -1
  13. package/dist/ajaBidAdapter.js +1 -1
  14. package/dist/amxBidAdapter.js +1 -1
  15. package/dist/amxIdSystem.js +1 -1
  16. package/dist/appierAnalyticsAdapter.js +1 -1
  17. package/dist/appnexusBidAdapter.js +1 -1
  18. package/dist/asoBidAdapter.js +1 -1
  19. package/dist/axonixBidAdapter.js +1 -1
  20. package/dist/bedigitechBidAdapter.js +1 -1
  21. package/dist/beopBidAdapter.js +1 -1
  22. package/dist/bidglassBidAdapter.js +1 -1
  23. package/dist/bidwatchAnalyticsAdapter.js +1 -1
  24. package/dist/big-richmediaBidAdapter.js +1 -1
  25. package/dist/bridBidAdapter.js +1 -0
  26. package/dist/bridgewellBidAdapter.js +1 -1
  27. package/dist/brightMountainMediaBidAdapter.js +1 -1
  28. package/dist/carodaBidAdapter.js +1 -1
  29. package/dist/categoryTranslation.js +1 -1
  30. package/dist/chtnwBidAdapter.js +1 -1
  31. package/dist/cmp.js +1 -0
  32. package/dist/colossussspBidAdapter.js +1 -1
  33. package/dist/conceptxBidAdapter.js +1 -1
  34. package/dist/concertBidAdapter.js +1 -1
  35. package/dist/connectadBidAdapter.js +1 -1
  36. package/dist/consentManagement.js +1 -1
  37. package/dist/consentManagementGpp.js +1 -1
  38. package/dist/consentManagementUsp.js +1 -1
  39. package/dist/consumableBidAdapter.js +1 -1
  40. package/dist/conversantAnalyticsAdapter.js +1 -1
  41. package/dist/conversantBidAdapter.js +1 -1
  42. package/dist/craftBidAdapter.js +1 -1
  43. package/dist/criteoBidAdapter.js +1 -1
  44. package/dist/cwireBidAdapter.js +1 -1
  45. package/dist/dependencies.json +15 -0
  46. package/dist/dspxBidAdapter.js +1 -1
  47. package/dist/eplanningBidAdapter.js +1 -1
  48. package/dist/euidIdSystem.js +1 -1
  49. package/dist/feedadBidAdapter.js +1 -1
  50. package/dist/finativeBidAdapter.js +1 -1
  51. package/dist/freepassBidAdapter.js +1 -0
  52. package/dist/freewheel-sspBidAdapter.js +1 -1
  53. package/dist/gmosspBidAdapter.js +1 -1
  54. package/dist/goldbachBidAdapter.js +1 -1
  55. package/dist/gppControl_usnat.js +1 -0
  56. package/dist/greenbidsAnalyticsAdapter.js +1 -1
  57. package/dist/greenbidsRtdProvider.js +1 -1
  58. package/dist/gridBidAdapter.js +1 -1
  59. package/dist/gumgumBidAdapter.js +1 -1
  60. package/dist/h12mediaBidAdapter.js +1 -1
  61. package/dist/hypelabBidAdapter.js +1 -1
  62. package/dist/id5IdSystem.js +1 -1
  63. package/dist/imdsBidAdapter.js +1 -1
  64. package/dist/improvedigitalBidAdapter.js +1 -1
  65. package/dist/insticatorBidAdapter.js +1 -1
  66. package/dist/intentIqIdSystem.js +1 -1
  67. package/dist/ixBidAdapter.js +1 -1
  68. package/dist/justpremiumBidAdapter.js +1 -1
  69. package/dist/kargoBidAdapter.js +1 -1
  70. package/dist/kiviadsBidAdapter.js +1 -0
  71. package/dist/konduitAnalyticsAdapter.js +1 -1
  72. package/dist/kueezBidAdapter.js +1 -1
  73. package/dist/kueezRtbBidAdapter.js +1 -1
  74. package/dist/kulturemediaBidAdapter.js +1 -1
  75. package/dist/lassoBidAdapter.js +1 -1
  76. package/dist/lifestreetBidAdapter.js +1 -1
  77. package/dist/liveIntentIdSystem.js +1 -1
  78. package/dist/logicadBidAdapter.js +1 -1
  79. package/dist/loglyliftBidAdapter.js +1 -1
  80. package/dist/magniteAnalyticsAdapter.js +1 -1
  81. package/dist/malltvAnalyticsAdapter.js +1 -1
  82. package/dist/marsmediaBidAdapter.js +1 -1
  83. package/dist/mediafuseBidAdapter.js +1 -1
  84. package/dist/mediasquareBidAdapter.js +1 -1
  85. package/dist/mgidBidAdapter.js +1 -1
  86. package/dist/mgidXBidAdapter.js +1 -0
  87. package/dist/minutemediaBidAdapter.js +1 -1
  88. package/dist/minutemediaplusBidAdapter.js +1 -1
  89. package/dist/mspa.js +1 -0
  90. package/dist/nexx360BidAdapter.js +1 -1
  91. package/dist/not-for-prod/prebid.js +146 -139
  92. package/dist/oguryBidAdapter.js +1 -1
  93. package/dist/onetagBidAdapter.js +1 -1
  94. package/dist/ooloAnalyticsAdapter.js +1 -1
  95. package/dist/optidigitalBidAdapter.js +1 -1
  96. package/dist/outbrainBidAdapter.js +1 -1
  97. package/dist/oxxionAnalyticsAdapter.js +1 -1
  98. package/dist/oxxionRtdProvider.js +1 -1
  99. package/dist/parrableIdSystem.js +1 -1
  100. package/dist/pixfutureBidAdapter.js +1 -1
  101. package/dist/prebid-core.js +1 -1
  102. package/dist/publinkIdSystem.js +1 -1
  103. package/dist/pubmaticBidAdapter.js +1 -1
  104. package/dist/pubwiseAnalyticsAdapter.js +1 -1
  105. package/dist/pxyzBidAdapter.js +1 -1
  106. package/dist/quantcastBidAdapter.js +1 -1
  107. package/dist/readpeakBidAdapter.js +1 -1
  108. package/dist/relaidoBidAdapter.js +1 -1
  109. package/dist/retailspotBidAdapter.js +1 -1
  110. package/dist/rhythmoneBidAdapter.js +1 -1
  111. package/dist/riseBidAdapter.js +1 -1
  112. package/dist/rtbhouseBidAdapter.js +1 -1
  113. package/dist/rubiconBidAdapter.js +1 -1
  114. package/dist/seedingAllianceBidAdapter.js +1 -1
  115. package/dist/seedtagBidAdapter.js +1 -1
  116. package/dist/sharethroughAnalyticsAdapter.js +1 -1
  117. package/dist/sharethroughBidAdapter.js +1 -1
  118. package/dist/shinezBidAdapter.js +1 -1
  119. package/dist/smaatoBidAdapter.js +1 -1
  120. package/dist/smartadserverBidAdapter.js +1 -1
  121. package/dist/smartxBidAdapter.js +1 -1
  122. package/dist/smilewantedBidAdapter.js +1 -1
  123. package/dist/sonobiBidAdapter.js +1 -1
  124. package/dist/sovrnAnalyticsAdapter.js +1 -1
  125. package/dist/sovrnBidAdapter.js +1 -1
  126. package/dist/sspBCBidAdapter.js +1 -1
  127. package/dist/stvBidAdapter.js +1 -1
  128. package/dist/sublimeBidAdapter.js +1 -1
  129. package/dist/targetVideoBidAdapter.js +1 -1
  130. package/dist/teadsBidAdapter.js +1 -1
  131. package/dist/trionBidAdapter.js +1 -1
  132. package/dist/tripleliftBidAdapter.js +1 -1
  133. package/dist/ttdBidAdapter.js +1 -1
  134. package/dist/ucfunnelAnalyticsAdapter.js +1 -1
  135. package/dist/uid2IdSystem.js +1 -1
  136. package/dist/underdogmediaBidAdapter.js +1 -1
  137. package/dist/undertoneBidAdapter.js +1 -1
  138. package/dist/userId.js +1 -1
  139. package/dist/vidazooBidAdapter.js +1 -1
  140. package/dist/videobyteBidAdapter.js +1 -1
  141. package/dist/visxBidAdapter.js +1 -1
  142. package/dist/vuukleBidAdapter.js +1 -1
  143. package/dist/widespaceBidAdapter.js +1 -1
  144. package/dist/winrBidAdapter.js +1 -1
  145. package/dist/yahoosspBidAdapter.js +1 -1
  146. package/dist/yieldmoBidAdapter.js +1 -1
  147. package/dist/yieldoneAnalyticsAdapter.js +1 -1
  148. package/libraries/cmp/cmpClient.js +139 -0
  149. package/libraries/mspa/activityControls.js +91 -0
  150. package/modules/admanBidAdapter.js +5 -0
  151. package/modules/amxBidAdapter.js +11 -12
  152. package/modules/bedigitechBidAdapter.js +15 -12
  153. package/modules/bedigitechBidAdapter.md +2 -2
  154. package/modules/beopBidAdapter.js +0 -4
  155. package/modules/bidwatchAnalyticsAdapter.js +33 -5
  156. package/modules/bridBidAdapter.js +223 -0
  157. package/modules/categoryTranslation.js +3 -2
  158. package/modules/colossussspBidAdapter.js +9 -0
  159. package/modules/conceptxBidAdapter.js +6 -3
  160. package/modules/consentManagement.js +12 -86
  161. package/modules/consentManagementGpp.js +47 -126
  162. package/modules/consentManagementUsp.js +19 -97
  163. package/modules/freepassBidAdapter.js +98 -0
  164. package/modules/freepassBidAdapter.md +31 -0
  165. package/modules/freepassIdSystem.md +1 -1
  166. package/modules/gppControl_usnat.js +11 -0
  167. package/modules/greenbidsAnalyticsAdapter.js +7 -13
  168. package/modules/gridBidAdapter.js +3 -4
  169. package/modules/intentIqIdSystem.js +11 -9
  170. package/modules/ixBidAdapter.js +284 -55
  171. package/modules/kiviadsBidAdapter.js +212 -0
  172. package/modules/kiviadsBidAdapter.md +79 -0
  173. package/modules/liveIntentIdSystem.js +8 -3
  174. package/modules/mediasquareBidAdapter.js +19 -23
  175. package/modules/mgidXBidAdapter.js +263 -0
  176. package/modules/mgidXBidAdapter.md +79 -0
  177. package/modules/oxxionAnalyticsAdapter.js +33 -5
  178. package/modules/oxxionRtdProvider.js +124 -11
  179. package/modules/oxxionRtdProvider.md +19 -4
  180. package/modules/pubmaticBidAdapter.js +18 -2
  181. package/modules/rtbhouseBidAdapter.js +9 -2
  182. package/modules/rtbhouseBidAdapter.md +27 -8
  183. package/modules/rubiconBidAdapter.js +13 -1
  184. package/modules/sharethroughBidAdapter.js +14 -0
  185. package/modules/sonobiBidAdapter.js +4 -7
  186. package/modules/tripleliftBidAdapter.js +21 -1
  187. package/modules/userId/eids.js +29 -0
  188. package/modules/userId/eids.md +19 -2
  189. package/modules/userId/index.js +78 -29
  190. package/modules/userId/userId.md +3 -0
  191. package/package.json +1 -1
  192. package/src/activities/params.js +4 -1
  193. package/test/spec/libraries/cmp/cmpClient_spec.js +233 -0
  194. package/test/spec/libraries/mspa/activityControls_spec.js +315 -0
  195. package/test/spec/modules/admanBidAdapter_spec.js +8 -2
  196. package/test/spec/modules/adqueryBidAdapter_spec.js +5 -1
  197. package/test/spec/modules/amxBidAdapter_spec.js +6 -3
  198. package/test/spec/modules/bedigitechBidAdapter_spec.js +25 -36
  199. package/test/spec/modules/bidwatchAnalyticsAdapter_spec.js +21 -1
  200. package/test/spec/modules/bridBidAdapter_spec.js +129 -0
  201. package/test/spec/modules/byDataAnalyticsAdapter_spec.js +9 -7
  202. package/test/spec/modules/chtnwBidAdapter_spec.js +4 -1
  203. package/test/spec/modules/colossussspBidAdapter_spec.js +29 -0
  204. package/test/spec/modules/consentManagementGpp_spec.js +84 -7
  205. package/test/spec/modules/consentManagement_spec.js +8 -18
  206. package/test/spec/modules/datablocksBidAdapter_spec.js +7 -3
  207. package/test/spec/modules/eids_spec.js +87 -0
  208. package/test/spec/modules/freepassBidAdapter_spec.js +161 -0
  209. package/test/spec/modules/greenbidsAnalyticsAdapter_spec.js +0 -15
  210. package/test/spec/modules/gridBidAdapter_spec.js +29 -28
  211. package/test/spec/modules/insticatorBidAdapter_spec.js +6 -2
  212. package/test/spec/modules/intentIqIdSystem_spec.js +36 -2
  213. package/test/spec/modules/ixBidAdapter_spec.js +785 -15
  214. package/test/spec/modules/kiviadsBidAdapter_spec.js +404 -0
  215. package/test/spec/modules/lassoBidAdapter_spec.js +6 -4
  216. package/test/spec/modules/liveIntentIdMinimalSystem_spec.js +17 -2
  217. package/test/spec/modules/liveIntentIdSystem_spec.js +11 -6
  218. package/test/spec/modules/mediasquareBidAdapter_spec.js +3 -0
  219. package/test/spec/modules/mgidXBidAdapter_spec.js +426 -0
  220. package/test/spec/modules/onetagBidAdapter_spec.js +81 -75
  221. package/test/spec/modules/orbidderBidAdapter_spec.js +6 -3
  222. package/test/spec/modules/oxxionAnalyticsAdapter_spec.js +21 -2
  223. package/test/spec/modules/oxxionRtdProvider_spec.js +113 -1
  224. package/test/spec/modules/pubmaticBidAdapter_spec.js +25 -0
  225. package/test/spec/modules/relaidoBidAdapter_spec.js +4 -3
  226. package/test/spec/modules/rtbhouseBidAdapter_spec.js +35 -0
  227. package/test/spec/modules/rubiconBidAdapter_spec.js +41 -0
  228. package/test/spec/modules/sharethroughBidAdapter_spec.js +75 -0
  229. package/test/spec/modules/sonobiBidAdapter_spec.js +15 -15
  230. package/test/spec/modules/tripleliftBidAdapter_spec.js +20 -1
  231. package/test/spec/modules/ucfunnelBidAdapter_spec.js +37 -16
  232. package/test/spec/modules/userId_spec.js +393 -6
@@ -911,11 +911,11 @@ describe('TheMediaGrid Adapter', function () {
911
911
 
912
912
  describe('interpretResponse', function () {
913
913
  const responses = [
914
- {'bid': [{'impid': '659423fff799cb', 'price': 1.15, 'adm': '<div>test content 1</div>', 'auid': 1, 'h': 250, 'w': 300, 'dealid': 11}], 'seat': '1'},
915
- {'bid': [{'impid': '4dff80cc4ee346', 'price': 0.5, 'adm': '<div>test content 2</div>', 'auid': 2, 'h': 600, 'w': 300}], 'seat': '1'},
916
- {'bid': [{'impid': '5703af74d0472a', 'price': 0.15, 'adm': '<div>test content 3</div>', 'auid': 1, 'h': 90, 'w': 728}], 'seat': '1'},
917
- {'bid': [{'impid': '2344da98f78b42', 'price': 0, 'auid': 3, 'h': 250, 'w': 300}], 'seat': '1'},
918
- {'bid': [{'price': 0, 'adm': '<div>test content 5</div>', 'h': 250, 'w': 300}], 'seat': '1'},
914
+ {'bid': [{'impid': '659423fff799cb', 'adid': '13_14_4353', 'price': 1.15, 'adm': '<div>test content 1</div>', 'auid': 1, 'h': 250, 'w': 300, 'dealid': 11}], 'seat': '1'},
915
+ {'bid': [{'impid': '4dff80cc4ee346', 'adid': '13_15_6454', 'price': 0.5, 'adm': '<div>test content 2</div>', 'auid': 2, 'h': 600, 'w': 300}], 'seat': '1'},
916
+ {'bid': [{'impid': '5703af74d0472a', 'adid': '13_16_7654', 'price': 0.15, 'adm': '<div>test content 3</div>', 'auid': 1, 'h': 90, 'w': 728}], 'seat': '1'},
917
+ {'bid': [{'impid': '2344da98f78b42', 'adid': '13_17_5433', 'price': 0, 'auid': 3, 'h': 250, 'w': 300}], 'seat': '1'},
918
+ {'bid': [{'price': 0, 'adid': '13_18_34645', 'adm': '<div>test content 5</div>', 'h': 250, 'w': 300}], 'seat': '1'},
919
919
  undefined,
920
920
  {'bid': [], 'seat': '1'},
921
921
  {'seat': '1'},
@@ -940,7 +940,7 @@ describe('TheMediaGrid Adapter', function () {
940
940
  {
941
941
  'requestId': '659423fff799cb',
942
942
  'cpm': 1.15,
943
- 'creativeId': 1,
943
+ 'creativeId': '13_14_4353',
944
944
  'dealId': 11,
945
945
  'width': 300,
946
946
  'height': 250,
@@ -1000,7 +1000,7 @@ describe('TheMediaGrid Adapter', function () {
1000
1000
  {
1001
1001
  'requestId': '659423fff799cb',
1002
1002
  'cpm': 1.15,
1003
- 'creativeId': 1,
1003
+ 'creativeId': '13_14_4353',
1004
1004
  'dealId': 11,
1005
1005
  'width': 300,
1006
1006
  'height': 250,
@@ -1016,7 +1016,7 @@ describe('TheMediaGrid Adapter', function () {
1016
1016
  {
1017
1017
  'requestId': '4dff80cc4ee346',
1018
1018
  'cpm': 0.5,
1019
- 'creativeId': 2,
1019
+ 'creativeId': '13_15_6454',
1020
1020
  'dealId': undefined,
1021
1021
  'width': 300,
1022
1022
  'height': 600,
@@ -1032,7 +1032,7 @@ describe('TheMediaGrid Adapter', function () {
1032
1032
  {
1033
1033
  'requestId': '5703af74d0472a',
1034
1034
  'cpm': 0.15,
1035
- 'creativeId': 1,
1035
+ 'creativeId': '13_16_7654',
1036
1036
  'dealId': undefined,
1037
1037
  'width': 728,
1038
1038
  'height': 90,
@@ -1135,18 +1135,18 @@ describe('TheMediaGrid Adapter', function () {
1135
1135
  }
1136
1136
  ];
1137
1137
  const response = [
1138
- {'bid': [{'impid': '659423fff799cb', 'price': 1.15, 'adm': '<VAST version=\"3.0\">\n<Ad id=\"21341234\"><\/Ad>\n<\/VAST>', 'auid': 11, content_type: 'video', w: 300, h: 600}], 'seat': '2'},
1139
- {'bid': [{'impid': '2bc598e42b6a', 'price': 1.00, 'adm': '<VAST version=\"3.0\">\n<Ad id=\"21331274\"><\/Ad>\n<\/VAST>', 'auid': 12, content_type: 'video'}], 'seat': '2'},
1140
- {'bid': [{'impid': '23312a43bc42', 'price': 2.00, 'nurl': 'https://some_test_vast_url.com', 'auid': 13, content_type: 'video', 'adomain': ['example.com'], w: 300, h: 600}], 'seat': '2'},
1141
- {'bid': [{'impid': '112432ab4f34', 'price': 1.80, 'adm': '<VAST version=\"3.0\">\n<Ad id=\"32115432\"><\/Ad>\n<\/VAST>', 'nurl': 'https://wrong_url.com', 'auid': 14, content_type: 'video', 'adomain': ['example.com'], w: 300, h: 600}], 'seat': '2'},
1142
- {'bid': [{'impid': 'a74b342f8cd', 'price': 1.50, 'nurl': '', 'auid': 15, content_type: 'video'}], 'seat': '2'}
1138
+ {'bid': [{'impid': '659423fff799cb', 'adid': '35_56_6454', 'price': 1.15, 'adm': '<VAST version=\"3.0\">\n<Ad id=\"21341234\"><\/Ad>\n<\/VAST>', 'auid': 11, content_type: 'video', w: 300, h: 600}], 'seat': '2'},
1139
+ {'bid': [{'impid': '2bc598e42b6a', 'adid': '35_57_2344', 'price': 1.00, 'adm': '<VAST version=\"3.0\">\n<Ad id=\"21331274\"><\/Ad>\n<\/VAST>', content_type: 'video'}], 'seat': '2'},
1140
+ {'bid': [{'impid': '23312a43bc42', 'adid': '35_58_5345', 'price': 2.00, 'nurl': 'https://some_test_vast_url.com', 'auid': 13, content_type: 'video', 'adomain': ['example.com'], w: 300, h: 600}], 'seat': '2'},
1141
+ {'bid': [{'impid': '112432ab4f34', 'adid': '35_59_56756', 'price': 1.80, 'adm': '<VAST version=\"3.0\">\n<Ad id=\"32115432\"><\/Ad>\n<\/VAST>', 'nurl': 'https://wrong_url.com', 'auid': 14, content_type: 'video', 'adomain': ['example.com'], w: 300, h: 600}], 'seat': '2'},
1142
+ {'bid': [{'impid': 'a74b342f8cd', 'adid': '35_60_523452', 'price': 1.50, 'nurl': '', 'auid': 15, content_type: 'video'}], 'seat': '2'}
1143
1143
  ];
1144
1144
  const [request] = spec.buildRequests(bidRequests);
1145
1145
  const expectedResponse = [
1146
1146
  {
1147
1147
  'requestId': '659423fff799cb',
1148
1148
  'cpm': 1.15,
1149
- 'creativeId': 11,
1149
+ 'creativeId': '35_56_6454',
1150
1150
  'dealId': undefined,
1151
1151
  'width': 300,
1152
1152
  'height': 600,
@@ -1165,7 +1165,7 @@ describe('TheMediaGrid Adapter', function () {
1165
1165
  {
1166
1166
  'requestId': '2bc598e42b6a',
1167
1167
  'cpm': 1.00,
1168
- 'creativeId': 12,
1168
+ 'creativeId': '35_57_2344',
1169
1169
  'dealId': undefined,
1170
1170
  'width': undefined,
1171
1171
  'height': undefined,
@@ -1184,7 +1184,7 @@ describe('TheMediaGrid Adapter', function () {
1184
1184
  {
1185
1185
  'requestId': '23312a43bc42',
1186
1186
  'cpm': 2.00,
1187
- 'creativeId': 13,
1187
+ 'creativeId': '35_58_5345',
1188
1188
  'dealId': undefined,
1189
1189
  'width': 300,
1190
1190
  'height': 600,
@@ -1200,7 +1200,7 @@ describe('TheMediaGrid Adapter', function () {
1200
1200
  {
1201
1201
  'requestId': '112432ab4f34',
1202
1202
  'cpm': 1.80,
1203
- 'creativeId': 14,
1203
+ 'creativeId': '35_59_56756',
1204
1204
  'dealId': undefined,
1205
1205
  'width': 300,
1206
1206
  'height': 600,
@@ -1265,11 +1265,11 @@ describe('TheMediaGrid Adapter', function () {
1265
1265
 
1266
1266
  it('complicated case', function () {
1267
1267
  const fullResponse = [
1268
- {'bid': [{'impid': '2164be6358b9', 'price': 1.15, 'adm': '<div>test content 1</div>', 'auid': 1, 'h': 250, 'w': 300, dealid: 11}], 'seat': '1'},
1269
- {'bid': [{'impid': '4e111f1b66e4', 'price': 0.5, 'adm': '<div>test content 2</div>', 'auid': 2, 'h': 600, 'w': 300, dealid: 12}], 'seat': '1'},
1270
- {'bid': [{'impid': '26d6f897b516', 'price': 0.15, 'adm': '<div>test content 3</div>', 'auid': 1, 'h': 90, 'w': 728}], 'seat': '1'},
1271
- {'bid': [{'impid': '326bde7fbf69', 'price': 0.15, 'adm': '<div>test content 4</div>', 'auid': 1, 'h': 600, 'w': 300}], 'seat': '1'},
1272
- {'bid': [{'impid': '2234f233b22a', 'price': 0.5, 'adm': '<div>test content 5</div>', 'auid': 2, 'h': 600, 'w': 350}], 'seat': '1'},
1268
+ {'bid': [{'impid': '2164be6358b9', 'adid': '32_52_7543', 'price': 1.15, 'adm': '<div>test content 1</div>', 'auid': 1, 'h': 250, 'w': 300, dealid: 11}], 'seat': '1'},
1269
+ {'bid': [{'impid': '4e111f1b66e4', 'adid': '32_54_4535', 'price': 0.5, 'adm': '<div>test content 2</div>', 'auid': 2, 'h': 600, 'w': 300, dealid: 12}], 'seat': '1'},
1270
+ {'bid': [{'impid': '26d6f897b516', 'adid': '32_53_75467', 'price': 0.15, 'adm': '<div>test content 3</div>', 'auid': 1, 'h': 90, 'w': 728}], 'seat': '1'},
1271
+ {'bid': [{'impid': '326bde7fbf69', 'adid': '32_54_12342', 'price': 0.15, 'adm': '<div>test content 4</div>', 'auid': 1, 'h': 600, 'w': 300}], 'seat': '1'},
1272
+ {'bid': [{'impid': '2234f233b22a', 'adid': '32_55_987686', 'price': 0.5, 'adm': '<div>test content 5</div>', 'auid': 2, 'h': 600, 'w': 350}], 'seat': '1'},
1273
1273
  ];
1274
1274
  const bidRequests = [
1275
1275
  {
@@ -1333,7 +1333,7 @@ describe('TheMediaGrid Adapter', function () {
1333
1333
  {
1334
1334
  'requestId': '2164be6358b9',
1335
1335
  'cpm': 1.15,
1336
- 'creativeId': 1,
1336
+ 'creativeId': '32_52_7543',
1337
1337
  'dealId': 11,
1338
1338
  'width': 300,
1339
1339
  'height': 250,
@@ -1349,7 +1349,7 @@ describe('TheMediaGrid Adapter', function () {
1349
1349
  {
1350
1350
  'requestId': '4e111f1b66e4',
1351
1351
  'cpm': 0.5,
1352
- 'creativeId': 2,
1352
+ 'creativeId': '32_54_4535',
1353
1353
  'dealId': 12,
1354
1354
  'width': 300,
1355
1355
  'height': 600,
@@ -1365,7 +1365,7 @@ describe('TheMediaGrid Adapter', function () {
1365
1365
  {
1366
1366
  'requestId': '26d6f897b516',
1367
1367
  'cpm': 0.15,
1368
- 'creativeId': 1,
1368
+ 'creativeId': '32_53_75467',
1369
1369
  'dealId': undefined,
1370
1370
  'width': 728,
1371
1371
  'height': 90,
@@ -1381,7 +1381,7 @@ describe('TheMediaGrid Adapter', function () {
1381
1381
  {
1382
1382
  'requestId': '326bde7fbf69',
1383
1383
  'cpm': 0.15,
1384
- 'creativeId': 1,
1384
+ 'creativeId': '32_54_12342',
1385
1385
  'dealId': undefined,
1386
1386
  'width': 300,
1387
1387
  'height': 600,
@@ -1421,6 +1421,7 @@ describe('TheMediaGrid Adapter', function () {
1421
1421
  'price': 1.15,
1422
1422
  'adm': '<div>test content 1</div>',
1423
1423
  'auid': 1,
1424
+ 'adid': '234_6454_3453',
1424
1425
  'h': 250,
1425
1426
  'w': 300,
1426
1427
  'dealid': 11,
@@ -1440,7 +1441,7 @@ describe('TheMediaGrid Adapter', function () {
1440
1441
  {
1441
1442
  'requestId': '26d6f897b516',
1442
1443
  'cpm': 1.15,
1443
- 'creativeId': 1,
1444
+ 'creativeId': '234_6454_3453',
1444
1445
  'dealId': 11,
1445
1446
  'width': 300,
1446
1447
  'height': 250,
@@ -185,6 +185,7 @@ describe('InsticatorBidAdapter', function () {
185
185
  let getDataFromLocalStorageStub, localStorageIsEnabledStub;
186
186
  let getCookieStub, cookiesAreEnabledStub;
187
187
  let sandbox;
188
+ let serverRequests, serverRequest;
188
189
 
189
190
  beforeEach(() => {
190
191
  $$PREBID_GLOBAL$$.bidderSettings = {
@@ -210,12 +211,15 @@ describe('InsticatorBidAdapter', function () {
210
211
  $$PREBID_GLOBAL$$.bidderSettings = {};
211
212
  });
212
213
 
213
- const serverRequests = spec.buildRequests([bidRequest], bidderRequest);
214
+ before(() => {
215
+ serverRequests = spec.buildRequests([bidRequest], bidderRequest);
216
+ serverRequest = serverRequests[0];
217
+ })
218
+
214
219
  it('should create a request', function () {
215
220
  expect(serverRequests).to.have.length(1);
216
221
  });
217
222
 
218
- const serverRequest = serverRequests[0];
219
223
  it('should create a request object with method, URL, options and data', function () {
220
224
  expect(serverRequest).to.exist;
221
225
  expect(serverRequest.method).to.exist;
@@ -1,15 +1,17 @@
1
1
  import { expect } from 'chai';
2
- import { intentIqIdSubmodule, readData, FIRST_PARTY_KEY } from 'modules/intentIqIdSystem.js';
2
+ import { intentIqIdSubmodule, storage } from 'modules/intentIqIdSystem.js';
3
3
  import * as utils from 'src/utils.js';
4
4
  import { server } from 'test/mocks/xhr.js';
5
5
 
6
6
  const partner = 10;
7
7
  const pai = '11';
8
8
  const pcid = '12';
9
+ const enableCookieStorage = true;
9
10
  const defaultConfigParams = { params: { partner: partner } };
10
11
  const paiConfigParams = { params: { partner: partner, pai: pai } };
11
12
  const pcidConfigParams = { params: { partner: partner, pcid: pcid } };
12
- const allConfigParams = { params: { partner: partner, pai: pai, pcid: pcid } };
13
+ const enableCookieConfigParams = { params: { partner: partner, enableCookieStorage: enableCookieStorage } };
14
+ const allConfigParams = { params: { partner: partner, pai: pai, pcid: pcid, enableCookieStorage: enableCookieStorage } };
13
15
  const responseHeader = { 'Content-Type': 'application/json' }
14
16
 
15
17
  describe('IntentIQ tests', function () {
@@ -62,6 +64,38 @@ describe('IntentIQ tests', function () {
62
64
  expect(submodule).to.be.undefined;
63
65
  });
64
66
 
67
+ it('should not save data in cookie if enableCookieStorage configParam not set', function () {
68
+ let callBackSpy = sinon.spy();
69
+ let submoduleCallback = intentIqIdSubmodule.getId(defaultConfigParams).callback;
70
+ submoduleCallback(callBackSpy);
71
+ let request = server.requests[0];
72
+ expect(request.url).to.contain('https://api.intentiq.com/profiles_engine/ProfilesEngineServlet?at=39&mi=10&dpi=10&pt=17&dpn=1&iiqidtype=2&iiqpcid=');
73
+ request.respond(
74
+ 200,
75
+ responseHeader,
76
+ JSON.stringify({ pid: 'test_pid', data: 'test_personid', ls: true })
77
+ );
78
+ expect(callBackSpy.calledOnce).to.be.true;
79
+ expect(storage.getCookie('_iiq_fdata_' + partner)).to.equal(null);
80
+ });
81
+
82
+ it('should save data in cookie if enableCookieStorage configParam set to true', function () {
83
+ let callBackSpy = sinon.spy();
84
+ let submoduleCallback = intentIqIdSubmodule.getId(allConfigParams).callback;
85
+ submoduleCallback(callBackSpy);
86
+ let request = server.requests[0];
87
+ expect(request.url).to.contain('https://api.intentiq.com/profiles_engine/ProfilesEngineServlet?at=39&mi=10&dpi=10&pt=17&dpn=1&pcid=12&pai=11&iiqidtype=2&iiqpcid=');
88
+ request.respond(
89
+ 200,
90
+ responseHeader,
91
+ JSON.stringify({ pid: 'test_pid', data: 'test_personid', ls: true })
92
+ );
93
+ expect(callBackSpy.calledOnce).to.be.true;
94
+ const cookieValue = storage.getCookie('_iiq_fdata_' + partner)
95
+ expect(cookieValue).to.not.equal(null)
96
+ expect(JSON.parse(cookieValue).data).to.be.equal('test_personid');
97
+ });
98
+
65
99
  it('should call the IntentIQ endpoint with only partner', function () {
66
100
  let callBackSpy = sinon.spy();
67
101
  let submoduleCallback = intentIqIdSubmodule.getId(defaultConfigParams).callback;