11import { EventListener , EventName , LDLogger } from '../../../src/api' ;
22import { EventStream , Payload , PayloadReader } from '../../../src/internal/fdv2/payloadReader' ;
33
4- class MockEventStreamm implements EventStream {
5- private _listeners : {
6- [ event : EventName ] : EventListener ;
7- } = { } ;
4+ class MockEventStream implements EventStream {
5+ private _listeners : Record < EventName , EventListener > = { } ;
86
97 addEventListener ( eventName : EventName , listener : EventListener ) : void {
108 this . _listeners [ eventName ] = listener ;
@@ -16,7 +14,7 @@ class MockEventStreamm implements EventStream {
1614}
1715
1816it ( 'it sets basis to true when intent code is xfer-full' , ( ) => {
19- const mockStream = new MockEventStreamm ( ) ;
17+ const mockStream = new MockEventStream ( ) ;
2018 const receivedPayloads : Payload [ ] = [ ] ;
2119 const readerUnderTest = new PayloadReader ( mockStream , {
2220 mockKind : ( it ) => it , // obj processor that just returns the same obj
@@ -26,10 +24,10 @@ it('it sets basis to true when intent code is xfer-full', () => {
2624 } ) ;
2725
2826 mockStream . simulateEvent ( 'server-intent' , {
29- data : '{"data": {" payloads": [{"intentCode ": "xfer-full", "id": "mockId"}]} }' ,
27+ data : '{"payloads": [{"code ": "xfer-full", "id": "mockId"}]}' ,
3028 } ) ;
3129 mockStream . simulateEvent ( 'payload-transferred' , {
32- data : '{"data": {" state": "mockState", "version": 1} }' ,
30+ data : '{"state": "mockState", "version": 1}' ,
3331 } ) ;
3432 expect ( receivedPayloads . length ) . toEqual ( 1 ) ;
3533 expect ( receivedPayloads [ 0 ] . id ) . toEqual ( 'mockId' ) ;
@@ -38,7 +36,7 @@ it('it sets basis to true when intent code is xfer-full', () => {
3836} ) ;
3937
4038it ( 'it sets basis to false when intent code is xfer-changes' , ( ) => {
41- const mockStream = new MockEventStreamm ( ) ;
39+ const mockStream = new MockEventStream ( ) ;
4240 const receivedPayloads : Payload [ ] = [ ] ;
4341 const readerUnderTest = new PayloadReader ( mockStream , {
4442 mockKind : ( it ) => it , // obj processor that just returns the same obj
@@ -48,10 +46,10 @@ it('it sets basis to false when intent code is xfer-changes', () => {
4846 } ) ;
4947
5048 mockStream . simulateEvent ( 'server-intent' , {
51- data : '{"data": {" payloads": [{"intentCode ": "xfer-changes", "id": "mockId"}]} }' ,
49+ data : '{"payloads": [{"code ": "xfer-changes", "id": "mockId"}]}' ,
5250 } ) ;
5351 mockStream . simulateEvent ( 'payload-transferred' , {
54- data : '{"data": {" state": "mockState", "version": 1} }' ,
52+ data : '{"state": "mockState", "version": 1}' ,
5553 } ) ;
5654 expect ( receivedPayloads . length ) . toEqual ( 1 ) ;
5755 expect ( receivedPayloads [ 0 ] . id ) . toEqual ( 'mockId' ) ;
@@ -60,7 +58,7 @@ it('it sets basis to false when intent code is xfer-changes', () => {
6058} ) ;
6159
6260it ( 'it includes multiple types of updates in payload' , ( ) => {
63- const mockStream = new MockEventStreamm ( ) ;
61+ const mockStream = new MockEventStream ( ) ;
6462 const receivedPayloads : Payload [ ] = [ ] ;
6563 const readerUnderTest = new PayloadReader ( mockStream , {
6664 mockKind : ( it ) => it , // obj processor that just returns the same obj
@@ -70,19 +68,19 @@ it('it includes multiple types of updates in payload', () => {
7068 } ) ;
7169
7270 mockStream . simulateEvent ( 'server-intent' , {
73- data : '{"data": {" payloads": [{"intentCode ": "xfer-full", "id": "mockId"}]} }' ,
71+ data : '{"payloads": [{"code ": "xfer-full", "id": "mockId"}]}' ,
7472 } ) ;
7573 mockStream . simulateEvent ( 'put-object' , {
76- data : '{"data": {" kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"} }}' ,
74+ data : '{"kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"}}' ,
7775 } ) ;
7876 mockStream . simulateEvent ( 'delete-object' , {
79- data : '{"data": {" kind": "mockKind", "key": "flagB", "version": 123} }' ,
77+ data : '{"kind": "mockKind", "key": "flagB", "version": 123}' ,
8078 } ) ;
8179 mockStream . simulateEvent ( 'put-object' , {
82- data : '{"data": {" kind": "mockKind", "key": "flagC", "version": 123, "object": {"objectFieldC": "objectValueC"} }}' ,
80+ data : '{"kind": "mockKind", "key": "flagC", "version": 123, "object": {"objectFieldC": "objectValueC"}}' ,
8381 } ) ;
8482 mockStream . simulateEvent ( 'payload-transferred' , {
85- data : '{"data": {" state": "mockState", "version": 1} }' ,
83+ data : '{"state": "mockState", "version": 1}' ,
8684 } ) ;
8785 expect ( receivedPayloads . length ) . toEqual ( 1 ) ;
8886 expect ( receivedPayloads [ 0 ] . id ) . toEqual ( 'mockId' ) ;
@@ -98,7 +96,7 @@ it('it includes multiple types of updates in payload', () => {
9896} ) ;
9997
10098it ( 'it does not include messages thats are not between server-intent and payloader-transferred' , ( ) => {
101- const mockStream = new MockEventStreamm ( ) ;
99+ const mockStream = new MockEventStream ( ) ;
102100 const receivedPayloads : Payload [ ] = [ ] ;
103101 const readerUnderTest = new PayloadReader ( mockStream , {
104102 mockKind : ( it ) => it , // obj processor that just returns the same obj
@@ -108,16 +106,16 @@ it('it does not include messages thats are not between server-intent and payload
108106 } ) ;
109107
110108 mockStream . simulateEvent ( 'put-object' , {
111- data : '{"data": {" kind": "mockKind", "key": "flagShouldIgnore", "version": 123, "object": {"objectFieldShouldIgnore": "objectValueShouldIgnore"} }}' ,
109+ data : '{"kind": "mockKind", "key": "flagShouldIgnore", "version": 123, "object": {"objectFieldShouldIgnore": "objectValueShouldIgnore"}}' ,
112110 } ) ;
113111 mockStream . simulateEvent ( 'server-intent' , {
114- data : '{"data": {" payloads": [{"intentCode ": "xfer-full", "id": "mockId"}]} }' ,
112+ data : '{"payloads": [{"code ": "xfer-full", "id": "mockId"}]}' ,
115113 } ) ;
116114 mockStream . simulateEvent ( 'put-object' , {
117- data : '{"data": {" kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"} }}' ,
115+ data : '{"kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"}}' ,
118116 } ) ;
119117 mockStream . simulateEvent ( 'payload-transferred' , {
120- data : '{"data": {" state": "mockState", "version": 1} }' ,
118+ data : '{"state": "mockState", "version": 1}' ,
121119 } ) ;
122120 expect ( receivedPayloads . length ) . toEqual ( 1 ) ;
123121 expect ( receivedPayloads [ 0 ] . updates . length ) . toEqual ( 1 ) ;
@@ -131,7 +129,7 @@ it('logs prescribed message when goodbye event is encountered', () => {
131129 info : jest . fn ( ) ,
132130 debug : jest . fn ( ) ,
133131 } ;
134- const mockStream = new MockEventStreamm ( ) ;
132+ const mockStream = new MockEventStream ( ) ;
135133 const receivedPayloads : Payload [ ] = [ ] ;
136134 const readerUnderTest = new PayloadReader (
137135 mockStream ,
@@ -146,7 +144,7 @@ it('logs prescribed message when goodbye event is encountered', () => {
146144 } ) ;
147145
148146 mockStream . simulateEvent ( 'goodbye' , {
149- data : '{"data": {" reason": "Bye"} }' ,
147+ data : '{"reason": "Bye"}' ,
150148 } ) ;
151149
152150 expect ( receivedPayloads . length ) . toEqual ( 0 ) ;
@@ -162,7 +160,7 @@ it('logs prescribed message when error event is encountered', () => {
162160 info : jest . fn ( ) ,
163161 debug : jest . fn ( ) ,
164162 } ;
165- const mockStream = new MockEventStreamm ( ) ;
163+ const mockStream = new MockEventStream ( ) ;
166164 const receivedPayloads : Payload [ ] = [ ] ;
167165 const readerUnderTest = new PayloadReader (
168166 mockStream ,
@@ -177,16 +175,16 @@ it('logs prescribed message when error event is encountered', () => {
177175 } ) ;
178176
179177 mockStream . simulateEvent ( 'server-intent' , {
180- data : '{"data": {" payloads": [{"intentCode ": "xfer-full", "id": "mockId"}]} }' ,
178+ data : '{"payloads": [{"code ": "xfer-full", "id": "mockId"}]}' ,
181179 } ) ;
182180 mockStream . simulateEvent ( 'put-object' , {
183- data : '{"data": {" kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"} }}' ,
181+ data : '{"kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"}}' ,
184182 } ) ;
185183 mockStream . simulateEvent ( 'error' , {
186- data : '{"data": {" reason": "Womp womp"} }' ,
184+ data : '{"reason": "Womp womp"}' ,
187185 } ) ;
188186 mockStream . simulateEvent ( 'payload-transferred' , {
189- data : '{"data": {" state": "mockState", "version": 1} }' ,
187+ data : '{"state": "mockState", "version": 1}' ,
190188 } ) ;
191189 expect ( receivedPayloads . length ) . toEqual ( 0 ) ;
192190 expect ( mockLogger . info ) . toHaveBeenCalledWith (
@@ -201,7 +199,7 @@ it('discards partially transferred data when an error is encountered', () => {
201199 info : jest . fn ( ) ,
202200 debug : jest . fn ( ) ,
203201 } ;
204- const mockStream = new MockEventStreamm ( ) ;
202+ const mockStream = new MockEventStream ( ) ;
205203 const receivedPayloads : Payload [ ] = [ ] ;
206204 const readerUnderTest = new PayloadReader (
207205 mockStream ,
@@ -216,31 +214,31 @@ it('discards partially transferred data when an error is encountered', () => {
216214 } ) ;
217215
218216 mockStream . simulateEvent ( 'server-intent' , {
219- data : '{"data": {" payloads": [{"intentCode ": "xfer-full", "id": "mockId"}]} }' ,
217+ data : '{"payloads": [{"code ": "xfer-full", "id": "mockId"}]}' ,
220218 } ) ;
221219 mockStream . simulateEvent ( 'put-object' , {
222- data : '{"data": {" kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"} }}' ,
220+ data : '{"kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"}}' ,
223221 } ) ;
224222 mockStream . simulateEvent ( 'error' , {
225- data : '{"data": {" reason": "Womp womp"} }' ,
223+ data : '{"reason": "Womp womp"}' ,
226224 } ) ;
227225 mockStream . simulateEvent ( 'payload-transferred' , {
228- data : '{"data": {" state": "mockState", "version": 1} }' ,
226+ data : '{"state": "mockState", "version": 1}' ,
229227 } ) ;
230228 mockStream . simulateEvent ( 'server-intent' , {
231- data : '{"data": {" payloads": [{"intentCode ": "xfer-full", "id": "mockId2"}]} }' ,
229+ data : '{"payloads": [{"code ": "xfer-full", "id": "mockId2"}]}' ,
232230 } ) ;
233231 mockStream . simulateEvent ( 'put-object' , {
234- data : '{"data": {" kind": "mockKind", "key": "flagX", "version": 123, "object": {"objectFieldX": "objectValueX"} }}' ,
232+ data : '{"kind": "mockKind", "key": "flagX", "version": 123, "object": {"objectFieldX": "objectValueX"}}' ,
235233 } ) ;
236234 mockStream . simulateEvent ( 'delete-object' , {
237- data : '{"data": {" kind": "mockKind", "key": "flagY", "version": 123} }' ,
235+ data : '{"kind": "mockKind", "key": "flagY", "version": 123}' ,
238236 } ) ;
239237 mockStream . simulateEvent ( 'put-object' , {
240- data : '{"data": {" kind": "mockKind", "key": "flagZ", "version": 123, "object": {"objectFieldZ": "objectValueZ"} }}' ,
238+ data : '{"kind": "mockKind", "key": "flagZ", "version": 123, "object": {"objectFieldZ": "objectValueZ"}}' ,
241239 } ) ;
242240 mockStream . simulateEvent ( 'payload-transferred' , {
243- data : '{"data": {" state": "mockState2", "version": 1} }' ,
241+ data : '{"state": "mockState2", "version": 1}' ,
244242 } ) ;
245243 expect ( receivedPayloads . length ) . toEqual ( 1 ) ;
246244 expect ( receivedPayloads [ 0 ] . id ) . toEqual ( 'mockId2' ) ;
@@ -256,7 +254,7 @@ it('discards partially transferred data when an error is encountered', () => {
256254} ) ;
257255
258256it ( 'silently ignores unrecognized kinds' , ( ) => {
259- const mockStream = new MockEventStreamm ( ) ;
257+ const mockStream = new MockEventStream ( ) ;
260258 const receivedPayloads : Payload [ ] = [ ] ;
261259 const readerUnderTest = new PayloadReader ( mockStream , {
262260 mockKind : ( it ) => it , // obj processor that just returns the same obj
@@ -266,16 +264,16 @@ it('silently ignores unrecognized kinds', () => {
266264 } ) ;
267265
268266 mockStream . simulateEvent ( 'server-intent' , {
269- data : '{"data": {" payloads": [{"intentCode ": "xfer-full", "id": "mockId"}]} }' ,
267+ data : '{"payloads": [{"code ": "xfer-full", "id": "mockId"}]}' ,
270268 } ) ;
271269 mockStream . simulateEvent ( 'put-object' , {
272- data : '{"data": {" kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"} }}' ,
270+ data : '{"kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"}}' ,
273271 } ) ;
274272 mockStream . simulateEvent ( 'put-object' , {
275- data : '{"data": {" kind": "ItsMeYourBrotherUnrecognizedKind", "key": "unrecognized", "version": 123, "object": {"unrecognized": "unrecognized"} }}' ,
273+ data : '{"kind": "ItsMeYourBrotherUnrecognizedKind", "key": "unrecognized", "version": 123, "object": {"unrecognized": "unrecognized"}}' ,
276274 } ) ;
277275 mockStream . simulateEvent ( 'payload-transferred' , {
278- data : '{"data": {" state": "mockState", "version": 1} }' ,
276+ data : '{"state": "mockState", "version": 1}' ,
279277 } ) ;
280278 expect ( receivedPayloads . length ) . toEqual ( 1 ) ;
281279 expect ( receivedPayloads [ 0 ] . id ) . toEqual ( 'mockId' ) ;
@@ -286,7 +284,7 @@ it('silently ignores unrecognized kinds', () => {
286284} ) ;
287285
288286it ( 'ignores additional payloads beyond the first payload in the server-intent message' , ( ) => {
289- const mockStream = new MockEventStreamm ( ) ;
287+ const mockStream = new MockEventStream ( ) ;
290288 const receivedPayloads : Payload [ ] = [ ] ;
291289 const readerUnderTest = new PayloadReader ( mockStream , {
292290 mockKind : ( it ) => it , // obj processor that just returns the same obj
@@ -296,16 +294,16 @@ it('ignores additional payloads beyond the first payload in the server-intent me
296294 } ) ;
297295
298296 mockStream . simulateEvent ( 'server-intent' , {
299- data : '{"data": {" payloads": [{"intentCode ": "xfer-full", "id": "mockId"},{"intentCode ": "IShouldBeIgnored", "id": "IShouldBeIgnored"}]} }' ,
297+ data : '{"payloads": [{"code ": "xfer-full", "id": "mockId"},{"code ": "IShouldBeIgnored", "id": "IShouldBeIgnored"}]}' ,
300298 } ) ;
301299 mockStream . simulateEvent ( 'put-object' , {
302- data : '{"data": {" kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"} }}' ,
300+ data : '{"kind": "mockKind", "key": "flagA", "version": 123, "object": {"objectFieldA": "objectValueA"}}' ,
303301 } ) ;
304302 mockStream . simulateEvent ( 'put-object' , {
305- data : '{"data": {" kind": "ItsMeYourBrotherUnrecognizedKind", "key": "unrecognized", "version": 123, "object": {"unrecognized": "unrecognized"} }}' ,
303+ data : '{"kind": "ItsMeYourBrotherUnrecognizedKind", "key": "unrecognized", "version": 123, "object": {"unrecognized": "unrecognized"}}' ,
306304 } ) ;
307305 mockStream . simulateEvent ( 'payload-transferred' , {
308- data : '{"data": {" state": "mockState", "version": 1} }' ,
306+ data : '{"state": "mockState", "version": 1}' ,
309307 } ) ;
310308 expect ( receivedPayloads . length ) . toEqual ( 1 ) ;
311309 expect ( receivedPayloads [ 0 ] . id ) . toEqual ( 'mockId' ) ;
0 commit comments