@@ -64,6 +64,19 @@ describe('IterableEmbeddedManager', () => {
6464 } ) ;
6565 } ) ;
6666
67+ describe ( 'syncMessages' , ( ) => {
68+ it ( 'should call IterableApi.syncEmbeddedMessages' , async ( ) => {
69+ // WHEN syncMessages is called
70+ const result = await embeddedManager . syncMessages ( ) ;
71+
72+ // THEN IterableApi.syncEmbeddedMessages is called
73+ expect ( MockRNIterableAPI . syncEmbeddedMessages ) . toHaveBeenCalledTimes ( 1 ) ;
74+
75+ // AND the result is returned
76+ expect ( result ) . toBeUndefined ( ) ;
77+ } ) ;
78+ } ) ;
79+
6780 describe ( 'getPlacementIds' , ( ) => {
6881 it ( 'should call IterableApi.getEmbeddedPlacementIds' , async ( ) => {
6982 // WHEN getPlacementIds is called
@@ -79,6 +92,61 @@ describe('IterableEmbeddedManager', () => {
7992 } ) ;
8093 } ) ;
8194
95+ describe ( 'getMessages' , ( ) => {
96+ it ( 'should call IterableApi.getEmbeddedMessages with placement IDs' , async ( ) => {
97+ // GIVEN placement IDs
98+ const placementIds = [ 1 , 2 ] ;
99+
100+ // WHEN getMessages is called
101+ const result = await embeddedManager . getMessages ( placementIds ) ;
102+
103+ // THEN IterableApi.getEmbeddedMessages is called with placement IDs
104+ expect ( MockRNIterableAPI . getEmbeddedMessages ) . toHaveBeenCalledTimes ( 1 ) ;
105+ expect ( MockRNIterableAPI . getEmbeddedMessages ) . toHaveBeenCalledWith (
106+ placementIds
107+ ) ;
108+
109+ // AND the result contains embedded messages
110+ expect ( result ) . toHaveLength ( 2 ) ;
111+ expect ( result [ 0 ] ) . toEqual ( {
112+ metadata : {
113+ messageId : 'msg-1' ,
114+ campaignId : 123 ,
115+ placementId : 1 ,
116+ } ,
117+ elements : {
118+ title : 'Test Message 1' ,
119+ body : 'Test body 1' ,
120+ } ,
121+ payload : { customKey : 'customValue' } ,
122+ } ) ;
123+ expect ( result [ 1 ] ) . toEqual ( {
124+ metadata : {
125+ messageId : 'msg-2' ,
126+ campaignId : 456 ,
127+ placementId : 2 ,
128+ } ,
129+ elements : {
130+ title : 'Test Message 2' ,
131+ body : 'Test body 2' ,
132+ } ,
133+ payload : null ,
134+ } ) ;
135+ } ) ;
136+
137+ it ( 'should call IterableApi.getEmbeddedMessages with null placement IDs' , async ( ) => {
138+ // WHEN getMessages is called with null
139+ const result = await embeddedManager . getMessages ( null ) ;
140+
141+ // THEN IterableApi.getEmbeddedMessages is called with null
142+ expect ( MockRNIterableAPI . getEmbeddedMessages ) . toHaveBeenCalledTimes ( 1 ) ;
143+ expect ( MockRNIterableAPI . getEmbeddedMessages ) . toHaveBeenCalledWith ( null ) ;
144+
145+ // AND the result is returned
146+ expect ( result ) . toBeDefined ( ) ;
147+ } ) ;
148+ } ) ;
149+
82150 describe ( 'startSession' , ( ) => {
83151 it ( 'should call IterableApi.startEmbeddedSession' , ( ) => {
84152 // WHEN startSession is called
@@ -98,5 +166,6 @@ describe('IterableEmbeddedManager', () => {
98166 expect ( MockRNIterableAPI . endEmbeddedSession ) . toHaveBeenCalledTimes ( 1 ) ;
99167 } ) ;
100168 } ) ;
169+
101170} ) ;
102171
0 commit comments