Coverage Summary for Class: ImagePushSizeManagerKt (cloud.mindbox.mobile_sdk.utils)

Class Class, % Method, % Branch, % Line, % Instruction, %
ImagePushSizeManagerKt 0% (0/1) 0% (0/3) 0% (0/36) 0% (0/22) 0% (0/127)


 package cloud.mindbox.mobile_sdk.utils
 
 import android.content.res.Resources
 import android.os.Build
 import cloud.mindbox.mobile_sdk.px
 
 private const val EXPANDED_PUSH_IMAGE_HEIGHT_31_PLUS_TITLE_2_STRING = 250
 private const val EXPANDED_PUSH_IMAGE_HEIGHT_31_WITH_BUTTONS_TITLE_2_STRING = 190
 private const val EXPANDED_PUSH_IMAGE_HEIGHT_31_PLUS = 270
 private const val EXPANDED_PUSH_IMAGE_HEIGHT_31_WITH_BUTTONS = 220
 private const val EXPANDED_PUSH_IMAGE_HEIGHT_28_30 = 175
 private const val EXPANDED_PUSH_IMAGE_HEIGHT_28_30_WITH_BUTTONS = 135
 private const val EXPANDED_PUSH_IMAGE_HEIGHT_24_27 = 180
 private const val EXPANDED_PUSH_IMAGE_HEIGHT_24_27_WITH_BUTTONS = 120
 private const val EXPANDED_PUSH_IMAGE_HEIGHT_23_AND_LESS = 130
 private const val MARGIN_ANDROID_30_AND_LESS = 32
 private const val CHAR_COUNT_WHEN_TITLE_2_STRING = 35
 
 internal val imageWidthInPixels: Int
     get() {
         return runCatching {
             val defaultWidth = Resources.getSystem().displayMetrics.widthPixels
             return if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) defaultWidth - MARGIN_ANDROID_30_AND_LESS.px else defaultWidth
         }.getOrElse { 0 }
     }
 
 internal fun getImageHeightWithoutButtonIxPixels(charCountInTitle: Int): Int =
     when {
         Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ->
             if (charCountInTitle <= CHAR_COUNT_WHEN_TITLE_2_STRING) {
                 EXPANDED_PUSH_IMAGE_HEIGHT_31_PLUS
             } else {
                 EXPANDED_PUSH_IMAGE_HEIGHT_31_PLUS_TITLE_2_STRING
             }
         Build.VERSION.SDK_INT in Build.VERSION_CODES.P..Build.VERSION_CODES.R -> EXPANDED_PUSH_IMAGE_HEIGHT_28_30
         Build.VERSION.SDK_INT in Build.VERSION_CODES.N..Build.VERSION_CODES.O_MR1 -> EXPANDED_PUSH_IMAGE_HEIGHT_24_27
         else -> EXPANDED_PUSH_IMAGE_HEIGHT_23_AND_LESS
     }.px
 
 internal fun getImageHeightWithButtonIxPixels(charCountInTitle: Int): Int =
     when {
         Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ->
             if (charCountInTitle <= CHAR_COUNT_WHEN_TITLE_2_STRING) {
                 EXPANDED_PUSH_IMAGE_HEIGHT_31_WITH_BUTTONS
             } else {
                 EXPANDED_PUSH_IMAGE_HEIGHT_31_WITH_BUTTONS_TITLE_2_STRING
             }
         Build.VERSION.SDK_INT in Build.VERSION_CODES.P..Build.VERSION_CODES.R -> EXPANDED_PUSH_IMAGE_HEIGHT_28_30_WITH_BUTTONS
         Build.VERSION.SDK_INT in Build.VERSION_CODES.N..Build.VERSION_CODES.O_MR1 -> EXPANDED_PUSH_IMAGE_HEIGHT_24_27_WITH_BUTTONS
         else -> EXPANDED_PUSH_IMAGE_HEIGHT_23_AND_LESS
     }.px