Coverage Summary for Class: GeoSerializationManagerImpl (cloud.mindbox.mobile_sdk.inapp.data.managers)

Class Method, % Branch, % Line, % Instruction, %
GeoSerializationManagerImpl 100% (3/3) 100% (3/3) 100% (30/30)
GeoSerializationManagerImpl$deserializeToGeoTargeting$1 100% (1/1) 100% (2/2) 100% (3/3) 100% (25/25)
GeoSerializationManagerImpl$serializeToGeoString$1 100% (1/1) 100% (1/1) 100% (9/9)
Total 100% (5/5) 100% (2/2) 100% (7/7) 100% (64/64)


 package cloud.mindbox.mobile_sdk.inapp.data.managers
 
 import cloud.mindbox.mobile_sdk.inapp.domain.interfaces.managers.GeoSerializationManager
 import cloud.mindbox.mobile_sdk.inapp.domain.models.GeoTargeting
 import cloud.mindbox.mobile_sdk.utils.LoggingExceptionHandler
 import com.google.gson.Gson
 
 internal class GeoSerializationManagerImpl(private val gson: Gson) : GeoSerializationManager {
 
     override fun deserializeToGeoTargeting(inAppGeo: String): GeoTargeting {
         return LoggingExceptionHandler.runCatching(GeoTargeting("", "", "")) {
             if (inAppGeo.isEmpty()) {
                 GeoTargeting("", "", "")
             } else {
                 gson.fromJson(inAppGeo, GeoTargeting::class.java)
             }
         }
     }
 
     override fun serializeToGeoString(inAppGeo: GeoTargeting): String {
         return LoggingExceptionHandler.runCatching("") {
             gson.toJson(inAppGeo)
         }
     }
 }