@@ -44,28 +44,33 @@ void main() {
4444 List <String > eventList = await getEventQueue ();
4545
4646 printQueues (requestList, eventList);
47- expect (requestList.length, Platform .isAndroid ? 4 : 3 );
48- expect (eventList.length, Platform .isAndroid ? anyOf (8 , 9 ) : 3 ); // 3 for iOS
47+ expect (requestList.length, 4 );
48+ expect (eventList.length, Platform .isAndroid ? anyOf (8 , 9 ) : anyOf ( 6 , 7 ));
4949 validateBeginSessionRequest (requestList[0 ]); // validate begin session on 0th idx
5050
5151 Map <String , List <String >> queryParams = Uri .parse ('?${requestList [1 ]}' ).queryParametersAll;
5252 var rqEvents = jsonDecode (queryParams['events' ]! [0 ]);
5353 expect (rqEvents.length, Platform .isAndroid ? 3 : 4 );
5454 int index = 0 ;
55- if (Platform .isAndroid){
55+ if (Platform .isAndroid) {
5656 validateEvent ("[CLY]_orientation" , < String , dynamic > {'mode' : 'portrait' }, eventGiven: rqEvents[index++ ]);
5757 }
5858 validateView ("V1" , true , true , viewGiven: rqEvents[index++ ]);
5959 validateView ("V2" , false , true , viewGiven: rqEvents[index++ ]);
60- if (Platform .isIOS){
61- validateView ("V1" , false , false , viewGiven: rqEvents[index++ ]);
62- validateView ("V2" , false , false , viewGiven: rqEvents[index++ ]);
60+ if (Platform .isIOS) {
61+ int iCached = index;
62+ try {
63+ validateView ("V1" , false , false , viewGiven: rqEvents[index++ ]);
64+ validateView ("V2" , false , false , viewGiven: rqEvents[index++ ]);
65+ } catch (e) {
66+ index = iCached;
67+ validateView ("V2" , false , false , viewGiven: rqEvents[index++ ]);
68+ validateView ("V1" , false , false , viewGiven: rqEvents[index++ ]);
69+ }
6370 }
6471
6572 validateEndSessionRequest (requestList[2 ]); // validate end session on 2nd idx
66- if (Platform .isAndroid) {
67- validateBeginSessionRequest (requestList[3 ]); // validate begin session on 3rd idx
68- }
73+ validateBeginSessionRequest (requestList[3 ]); // validate begin session on 3rd idx
6974
7075 index = 0 ;
7176 if (Platform .isAndroid) {
@@ -82,21 +87,18 @@ void main() {
8287 validateView ("V4" , false , true , viewStr: eventList[index++ ]);
8388 validateView ("V4" , false , false , viewStr: eventList[index++ ]);
8489 validateView ("V3" , false , true , viewStr: eventList[index++ ]);
85- if (Platform .isAndroid){
86- validateEvent ("[CLY]_orientation" , < String , dynamic > {'mode' : 'portrait' }, eventStr: eventList[index++ ]);
87- }
90+ validateEvent ("[CLY]_orientation" , < String , dynamic > {'mode' : 'portrait' }, eventStr: eventList[index++ ]);
91+
8892
8993 int iCached = index;
90- if (Platform .isAndroid) {
91- try {
92- validateView ("V2" , true , true , viewStr: eventList[index++ ]);
93- validateView ("V2" , false , false , viewStr: eventList[index++ ]);
94- validateView ("V1" , false , true , viewStr: eventList[index++ ]);
95- } catch (e) {
96- index = iCached;
97- validateView ("V1" , true , true , viewStr: eventList[index++ ]);
98- validateView ("V2" , false , true , viewStr: eventList[index++ ]);
99- }
94+ try {
95+ validateView ("V2" , true , true , viewStr: eventList[index++ ]);
96+ validateView ("V2" , false , false , viewStr: eventList[index++ ]);
97+ validateView ("V1" , false , true , viewStr: eventList[index++ ]);
98+ } catch (e) {
99+ index = iCached;
100+ validateView ("V1" , true , true , viewStr: eventList[index++ ]);
101+ validateView ("V2" , false , true , viewStr: eventList[index++ ]);
100102 }
101103 });
102104}
@@ -105,10 +107,10 @@ void validateView(String name, bool start, bool visit, {String? viewStr, Map<Str
105107 Map <String , dynamic > segmentation = < String , dynamic > {'name' : name, 'segment' : Platform .isAndroid ? 'Android' : 'iOS' };
106108
107109 if (visit) {
108- segmentation['visit' ] = Platform .isAndroid ? '1' : 1 ;
110+ segmentation['visit' ] = Platform .isAndroid ? '1' : 1 ;
109111 }
110112 if (start) {
111- segmentation['start' ] = Platform .isAndroid ? '1' : 1 ;
113+ segmentation['start' ] = Platform .isAndroid ? '1' : 1 ;
112114 }
113115 validateEvent ("[CLY]_view" , segmentation, eventGiven: viewGiven, eventStr: viewStr);
114116}
0 commit comments