@@ -510,4 +510,84 @@ describe('Old model to batch model conversion', () => {
510510 // set screen back on
511511 window . screen = originalScreen ;
512512 } ) ;
513+
514+ it ( 'propagates PageUrl to page_url on the converted event' , ( ) => {
515+ const sdkEvent : SDKEvent = {
516+ EventName : 'Page View' ,
517+ EventCategory : Types . EventType . Navigation ,
518+ ExpandedEventCount : 0 ,
519+ EventDataType : Types . MessageType . PageEvent ,
520+ EventAttributes : null ,
521+ ConsentState : null ,
522+ CurrencyCode : null ,
523+ CustomFlags : { } ,
524+ DataPlan : { } ,
525+ Debug : true ,
526+ DeviceId : '0edd580e-d887-44e4-89ae-cd65aa0ee933' ,
527+ Location : null ,
528+ MPID : '-8433569646818451201' ,
529+ OptOut : null ,
530+ SDKVersion : '2.11.15' ,
531+ SourceMessageId : 'testSMID' ,
532+ SessionId : '64102C03-592F-440D-8BCC-1D27AAA6B188' ,
533+ SessionStartDate : 1603211322698 ,
534+ Timestamp : 1603212299414 ,
535+ ActiveTimeOnSite : 10 ,
536+ PageUrl : 'https://example.com/checkout?utm=should-be-stripped-server-side' ,
537+ UserAttributes : { } ,
538+ UserIdentities : [ ] ,
539+ IsFirstRun : true ,
540+ } ;
541+
542+ const batch = Converter . convertEvents (
543+ '-8433569646818451201' ,
544+ [ sdkEvent ] ,
545+ window . mParticle . getInstance ( )
546+ ) ;
547+
548+ expect ( batch ) . to . be . ok ;
549+ expect ( batch . events . length ) . to . equal ( 1 ) ;
550+ const event = batch . events [ 0 ] as EventsApi . CustomEvent ;
551+ expect ( event . data . page_url ) . to . equal (
552+ 'https://example.com/checkout?utm=should-be-stripped-server-side'
553+ ) ;
554+ } ) ;
555+
556+ it ( 'omits page_url when PageUrl is not set on the SDK event' , ( ) => {
557+ const sdkEvent : SDKEvent = {
558+ EventName : 'Page View' ,
559+ EventCategory : Types . EventType . Navigation ,
560+ ExpandedEventCount : 0 ,
561+ EventDataType : Types . MessageType . PageEvent ,
562+ EventAttributes : null ,
563+ ConsentState : null ,
564+ CurrencyCode : null ,
565+ CustomFlags : { } ,
566+ DataPlan : { } ,
567+ Debug : true ,
568+ DeviceId : '0edd580e-d887-44e4-89ae-cd65aa0ee933' ,
569+ Location : null ,
570+ MPID : '-8433569646818451201' ,
571+ OptOut : null ,
572+ SDKVersion : '2.11.15' ,
573+ SourceMessageId : 'testSMID' ,
574+ SessionId : '64102C03-592F-440D-8BCC-1D27AAA6B188' ,
575+ SessionStartDate : 1603211322698 ,
576+ Timestamp : 1603212299414 ,
577+ ActiveTimeOnSite : 10 ,
578+ UserAttributes : { } ,
579+ UserIdentities : [ ] ,
580+ IsFirstRun : true ,
581+ } ;
582+
583+ const batch = Converter . convertEvents (
584+ '-8433569646818451201' ,
585+ [ sdkEvent ] ,
586+ window . mParticle . getInstance ( )
587+ ) ;
588+
589+ expect ( batch ) . to . be . ok ;
590+ const event = batch . events [ 0 ] as EventsApi . CustomEvent ;
591+ expect ( event . data . page_url ) . to . equal ( undefined ) ;
592+ } ) ;
513593} ) ;
0 commit comments