@@ -3,6 +3,7 @@ import { config } from 'src/config.js';
3
3
import { expect } from 'chai' ;
4
4
import { newBidder } from 'src/adapters/bidderFactory.js' ;
5
5
import { spec } from 'modules/ixBidAdapter.js' ;
6
+ import { createEidsArray } from 'modules/userId/eids.js' ;
6
7
7
8
describe ( 'IndexexchangeAdapter' , function ( ) {
8
9
const IX_SECURE_ENDPOINT = 'https://htlb.casalemedia.com/cygnus' ;
@@ -351,8 +352,13 @@ describe('IndexexchangeAdapter', function () {
351
352
352
353
const DEFAULT_USERID_DATA = {
353
354
idl_env : '1234-5678-9012-3456' , // Liveramp
355
+ netId : 'testnetid123' , // NetId
356
+ IDP : 'userIDP000' , // IDP
357
+ fabrickId : 'fabrickId9000' , // FabrickId
354
358
} ;
355
359
360
+ const DEFAULT_USERIDASEIDS_DATA = createEidsArray ( DEFAULT_USERID_DATA ) ;
361
+
356
362
const DEFAULT_USERID_PAYLOAD = [
357
363
{
358
364
source : 'liveramp.com' ,
@@ -362,6 +368,30 @@ describe('IndexexchangeAdapter', function () {
362
368
rtiPartner : 'idl'
363
369
}
364
370
} ]
371
+ } , {
372
+ source : 'netid.de' ,
373
+ uids : [ {
374
+ id : DEFAULT_USERID_DATA . netId ,
375
+ ext : {
376
+ rtiPartner : 'NETID'
377
+ }
378
+ } ]
379
+ } , {
380
+ source : 'neustar.biz' ,
381
+ uids : [ {
382
+ id : DEFAULT_USERID_DATA . fabrickId ,
383
+ ext : {
384
+ rtiPartner : 'fabrickId'
385
+ }
386
+ } ]
387
+ } , {
388
+ source : 'zeotap.com' ,
389
+ uids : [ {
390
+ id : DEFAULT_USERID_DATA . IDP ,
391
+ ext : {
392
+ rtiPartner : 'zeotapIdPlus'
393
+ }
394
+ } ]
365
395
}
366
396
] ;
367
397
@@ -761,14 +791,18 @@ describe('IndexexchangeAdapter', function () {
761
791
delete window . headertag ;
762
792
} ) ;
763
793
764
- it ( 'IX adapter reads LiveRamp IDL envelope from Prebid and adds it to Video' , function ( ) {
794
+ it ( 'IX adapter reads supported user modules from Prebid and adds it to Video' , function ( ) {
765
795
const cloneValidBid = utils . deepClone ( DEFAULT_VIDEO_VALID_BID ) ;
766
- cloneValidBid [ 0 ] . userId = utils . deepClone ( DEFAULT_USERID_DATA ) ;
796
+ // cloneValidBid[0].userId = utils.deepClone(DEFAULT_USERID_DATA);
797
+ cloneValidBid [ 0 ] . userIdAsEids = utils . deepClone ( DEFAULT_USERIDASEIDS_DATA ) ;
767
798
const request = spec . buildRequests ( cloneValidBid , DEFAULT_OPTION ) [ 0 ] ;
768
799
const payload = JSON . parse ( request . data . r ) ;
769
800
770
- expect ( payload . user . eids ) . to . have . lengthOf ( 1 ) ;
801
+ expect ( payload . user . eids ) . to . have . lengthOf ( 4 ) ;
771
802
expect ( payload . user . eids ) . to . deep . include ( DEFAULT_USERID_PAYLOAD [ 0 ] ) ;
803
+ expect ( payload . user . eids ) . to . deep . include ( DEFAULT_USERID_PAYLOAD [ 1 ] ) ;
804
+ expect ( payload . user . eids ) . to . deep . include ( DEFAULT_USERID_PAYLOAD [ 2 ] ) ;
805
+ expect ( payload . user . eids ) . to . deep . include ( DEFAULT_USERID_PAYLOAD [ 3 ] ) ;
772
806
} ) ;
773
807
774
808
it ( 'We continue to send in IXL identity info and Prebid takes precedence over IXL' , function ( ) {
@@ -822,11 +856,45 @@ describe('IndexexchangeAdapter', function () {
822
856
}
823
857
}
824
858
]
859
+ } ,
860
+ NetIdIp : {
861
+ source : 'netid.de' ,
862
+ uids : [
863
+ {
864
+ id : 'testnetid' ,
865
+ ext : {
866
+ rtiPartner : 'NETID'
867
+ }
868
+ }
869
+ ]
870
+ } ,
871
+ NeustarIp : {
872
+ source : 'neustar.biz' ,
873
+ uids : [
874
+ {
875
+ id : 'testfabrick' ,
876
+ ext : {
877
+ rtiPartner : 'fabrickId'
878
+ }
879
+ }
880
+ ]
881
+ } ,
882
+ ZeotapIp : {
883
+ source : 'zeotap.com' ,
884
+ uids : [
885
+ {
886
+ id : 'testzeotap' ,
887
+ ext : {
888
+ rtiPartner : 'zeotapIdPlus'
889
+ }
890
+ }
891
+ ]
825
892
}
826
893
} ;
827
894
828
895
const cloneValidBid = utils . deepClone ( DEFAULT_BANNER_VALID_BID ) ;
829
- cloneValidBid [ 0 ] . userId = utils . deepClone ( DEFAULT_USERID_DATA )
896
+ // cloneValidBid[0].userId = utils.deepClone(DEFAULT_USERID_DATA);
897
+ cloneValidBid [ 0 ] . userIdAsEids = utils . deepClone ( DEFAULT_USERIDASEIDS_DATA ) ;
830
898
831
899
const request = spec . buildRequests ( cloneValidBid , DEFAULT_OPTION ) [ 0 ] ;
832
900
const payload = JSON . parse ( request . data . r ) ;
@@ -867,10 +935,14 @@ describe('IndexexchangeAdapter', function () {
867
935
} )
868
936
869
937
expect ( payload . user ) . to . exist ;
870
- expect ( payload . user . eids ) . to . have . lengthOf ( 3 ) ;
938
+ expect ( payload . user . eids ) . to . have . lengthOf ( 6 ) ;
939
+
871
940
expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 0 ] ) ;
872
941
expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 1 ] ) ;
873
942
expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 2 ] ) ;
943
+ expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 3 ] ) ;
944
+ expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 4 ] ) ;
945
+ expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 5 ] ) ;
874
946
} ) ;
875
947
876
948
it ( 'IXL and Prebid are mutually exclusive' , function ( ) {
@@ -892,7 +964,8 @@ describe('IndexexchangeAdapter', function () {
892
964
} ;
893
965
894
966
const cloneValidBid = utils . deepClone ( DEFAULT_VIDEO_VALID_BID ) ;
895
- cloneValidBid [ 0 ] . userId = utils . deepClone ( DEFAULT_USERID_DATA ) ;
967
+ // cloneValidBid[0].userId = utils.deepClone(DEFAULT_USERID_DATA);
968
+ cloneValidBid [ 0 ] . userIdAsEids = utils . deepClone ( DEFAULT_USERIDASEIDS_DATA ) ;
896
969
897
970
const request = spec . buildRequests ( cloneValidBid , DEFAULT_OPTION ) [ 0 ] ;
898
971
@@ -910,9 +983,12 @@ describe('IndexexchangeAdapter', function () {
910
983
} ) ;
911
984
912
985
const payload = JSON . parse ( request . data . r ) ;
913
- expect ( payload . user . eids ) . to . have . lengthOf ( 2 ) ;
986
+ expect ( payload . user . eids ) . to . have . lengthOf ( 5 ) ;
914
987
expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 0 ] ) ;
915
988
expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 1 ] ) ;
989
+ expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 2 ] ) ;
990
+ expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 3 ] ) ;
991
+ expect ( payload . user . eids ) . to . deep . include ( validUserIdPayload [ 4 ] ) ;
916
992
} ) ;
917
993
} ) ;
918
994
0 commit comments