@@ -556,7 +556,8 @@ void main() {
556
556
});
557
557
558
558
test ("with a valid defaultLogLevel parameter" , () async {
559
- var sdk = OptimizelyFlutterSdk (testSDKKey, defaultLogLevel: OptimizelyLogLevel .debug);
559
+ var sdk = OptimizelyFlutterSdk (testSDKKey,
560
+ defaultLogLevel: OptimizelyLogLevel .debug);
560
561
561
562
var response = await sdk.initializeClient ();
562
563
@@ -1553,6 +1554,75 @@ void main() {
1553
1554
});
1554
1555
});
1555
1556
1556
- group ("arbitary client name" , () {
1557
+ group ("Test client_name and client_version event parsing" , () {
1558
+ test ("Test track event with swift sdk name and version" , () async {
1559
+ var sdk = OptimizelyFlutterSdk (testSDKKey);
1560
+
1561
+ TrackListenerResponse ? response;
1562
+
1563
+ await sdk.addTrackNotificationListener ((msg) {
1564
+ response = msg;
1565
+ });
1566
+ var callHandler = OptimizelyClientWrapper .methodCallHandler;
1567
+ tester? .setMockMethodCallHandler (channel, callHandler);
1568
+ TestUtils .sendTestTrackClientNameAndVersion (
1569
+ callHandler, 0 , testSDKKey, "flutter/swift-sdk" , "2.0.0" );
1570
+
1571
+ expect (response == null , false );
1572
+
1573
+ expect (response! .eventTags! ["client_name" ], "flutter/swift-sdk" );
1574
+
1575
+ });
1576
+
1577
+ test ("Test track event with android sdk name and version" , () async {
1578
+ var sdk = OptimizelyFlutterSdk (testSDKKey);
1579
+
1580
+ var responses = [];
1581
+
1582
+ await sdk.addTrackNotificationListener ((msg) {
1583
+ responses.add (msg);
1584
+ });
1585
+
1586
+ var callHandler = OptimizelyClientWrapper .methodCallHandler;
1587
+ tester? .setMockMethodCallHandler (channel, callHandler);
1588
+
1589
+ TestUtils .sendTestTrackClientNameAndVersion (
1590
+ callHandler, 0 , testSDKKey, "flutter/swift-sdk" , "2.0.0" );
1591
+ TestUtils .sendTestTrackClientNameAndVersion (
1592
+ callHandler, 0 , testSDKKey, "flutter/android-sdk" , "2.0.0-beta" );
1593
+
1594
+ expect (responses.length == 2 , true );
1595
+
1596
+ expect (responses[0 ]! .eventTags! ["client_name" ], "flutter/swift-sdk" );
1597
+ expect (responses[0 ]! .eventTags! ["client_version" ], "2.0.0" );
1598
+ expect (responses[1 ]! .eventTags! ["client_name" ], "flutter/android-sdk" );
1599
+ expect (responses[1 ]! .eventTags! ["client_version" ], "2.0.0-beta" );
1600
+
1601
+ });
1602
+
1603
+ test ("Test log event with client sdk name and version" , () async {
1604
+ var sdk = OptimizelyFlutterSdk (testSDKKey);
1605
+
1606
+ var responses = [];
1607
+
1608
+ await sdk.addLogEventNotificationListener ((msg) {
1609
+ responses.add (msg);
1610
+ });
1611
+ var callHandler = OptimizelyClientWrapper .methodCallHandler;
1612
+ tester? .setMockMethodCallHandler (channel, callHandler);
1613
+ TestUtils .sendTestClientNameAndVersionLogEventNotification (
1614
+ callHandler, 0 , testSDKKey, "flutter/android-sdk" , "2.0.0-beta" );
1615
+
1616
+ TestUtils .sendTestClientNameAndVersionLogEventNotification (
1617
+ callHandler, 0 , testSDKKey, "flutter/swift-sdk" , "2.0.0" );
1618
+
1619
+ expect (responses.length == 2 , true );
1620
+
1621
+ expect (responses[0 ]! .params! ["client_name" ], "flutter/android-sdk" );
1622
+ expect (responses[0 ]! .params! ["client_version" ], "2.0.0-beta" );
1623
+ expect (responses[1 ]! .params! ["client_name" ], "flutter/swift-sdk" );
1624
+ expect (responses[1 ]! .params! ["client_version" ], "2.0.0" );
1625
+ });
1626
+
1557
1627
});
1558
1628
}
0 commit comments