@@ -317,6 +317,93 @@ describe('Rokt Forwarder', () => {
317317 ) ;
318318 } ) ;
319319
320+ it ( 'should set integrationName on kit instance after attaching' , async ( ) => {
321+ window . Rokt = new MockRoktForwarder ( ) ;
322+ window . mParticle . Rokt = window . Rokt ;
323+ window . mParticle . Rokt . attachKitCalled = false ;
324+
325+ window . mParticle . Rokt . attachKit = async ( kit ) => {
326+ window . mParticle . Rokt . attachKitCalled = true ;
327+ window . mParticle . Rokt . kit = kit ;
328+ return Promise . resolve ( ) ;
329+ } ;
330+
331+ await mParticle . forwarder . init (
332+ {
333+ accountId : '123456' ,
334+ } ,
335+ reportService . cb ,
336+ true
337+ ) ;
338+
339+ // Wait for initialization to complete
340+ await waitForCondition ( ( ) => window . mParticle . Rokt . isInitialized ) ;
341+
342+ window . mParticle . Rokt . kit . integrationName . should . equal (
343+ `${ sdkVersion } _${ kitVersion } `
344+ ) ;
345+ } ) ;
346+
347+ it ( 'should set integrationName on kit instance with custom name when provided' , async ( ) => {
348+ const customName = 'myCustomName' ;
349+
350+ window . Rokt = new MockRoktForwarder ( ) ;
351+ window . mParticle . Rokt = window . Rokt ;
352+ window . mParticle . Rokt . attachKitCalled = false ;
353+
354+ window . mParticle . Rokt . attachKit = async ( kit ) => {
355+ window . mParticle . Rokt . attachKitCalled = true ;
356+ window . mParticle . Rokt . kit = kit ;
357+ return Promise . resolve ( ) ;
358+ } ;
359+
360+ window . mParticle . Rokt . launcherOptions = {
361+ integrationName : customName ,
362+ } ;
363+
364+ await mParticle . forwarder . init (
365+ {
366+ accountId : '123456' ,
367+ } ,
368+ reportService . cb ,
369+ true
370+ ) ;
371+
372+ // Wait for initialization to complete
373+ await waitForCondition ( ( ) => window . mParticle . Rokt . isInitialized ) ;
374+
375+ window . mParticle . Rokt . kit . integrationName . should . equal (
376+ `${ sdkVersion } _${ kitVersion } _${ customName } `
377+ ) ;
378+ } ) ;
379+
380+ it ( 'should have integrationName available on kit after initialization' , async ( ) => {
381+ window . Rokt = new MockRoktForwarder ( ) ;
382+ window . mParticle . Rokt = window . Rokt ;
383+ window . mParticle . Rokt . attachKitCalled = false ;
384+
385+ window . mParticle . Rokt . attachKit = async ( kit ) => {
386+ window . mParticle . Rokt . attachKitCalled = true ;
387+ window . mParticle . Rokt . kit = kit ;
388+ return Promise . resolve ( ) ;
389+ } ;
390+
391+ await mParticle . forwarder . init (
392+ {
393+ accountId : '123456' ,
394+ } ,
395+ reportService . cb ,
396+ true
397+ ) ;
398+
399+ // Wait for initialization to complete
400+ await waitForCondition ( ( ) => window . mParticle . Rokt . isInitialized ) ;
401+
402+ window . mParticle . Rokt . attachKitCalled . should . equal ( true ) ;
403+ window . mParticle . Rokt . kit . integrationName . should . be . a . String ( ) ;
404+ window . mParticle . Rokt . kit . integrationName . should . not . be . empty ( ) ;
405+ } ) ;
406+
320407 it ( 'should not mutate the global launcherOptions object during initialization' , async ( ) => {
321408 const originalIntegrationName = 'globalIntegrationName' ;
322409
0 commit comments