Merge pull request #6205 from vector-im/johannes/fatal
Use fatalError instead of NPE
This commit is contained in:
commit
8e5c96adf5
@ -24,11 +24,14 @@ import androidx.annotation.VisibleForTesting
|
||||
import androidx.fragment.app.FragmentActivity
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||
import im.vector.app.R
|
||||
import im.vector.app.core.error.fatalError
|
||||
import im.vector.app.core.utils.checkPermissions
|
||||
import java.lang.NullPointerException
|
||||
import im.vector.app.features.settings.VectorPreferences
|
||||
import javax.inject.Inject
|
||||
|
||||
class WebviewPermissionUtils @Inject constructor() {
|
||||
class WebviewPermissionUtils @Inject constructor(
|
||||
private val vectorPreferences: VectorPreferences,
|
||||
) {
|
||||
|
||||
private var permissionRequest: PermissionRequest? = null
|
||||
private var selectedPermissions = listOf<String>()
|
||||
@ -75,7 +78,11 @@ class WebviewPermissionUtils @Inject constructor() {
|
||||
|
||||
fun onPermissionResult(result: Map<String, Boolean>) {
|
||||
if (permissionRequest == null) {
|
||||
throw NullPointerException("permissionRequest was null! Make sure to call promptForPermissions first.")
|
||||
fatalError(
|
||||
message = "permissionRequest was null! Make sure to call promptForPermissions first.",
|
||||
failFast = vectorPreferences.failFast()
|
||||
)
|
||||
return
|
||||
}
|
||||
val grantedPermissions = filterPermissionsToBeGranted(selectedPermissions, result)
|
||||
if (grantedPermissions.isNotEmpty()) {
|
||||
|
@ -19,6 +19,7 @@ package im.vector.app.features.widgets
|
||||
import android.Manifest
|
||||
import android.webkit.PermissionRequest
|
||||
import im.vector.app.features.widgets.webview.WebviewPermissionUtils
|
||||
import im.vector.app.test.fakes.FakeVectorPreferences
|
||||
import org.amshove.kluent.shouldBeEqualTo
|
||||
import org.junit.FixMethodOrder
|
||||
import org.junit.Test
|
||||
@ -30,7 +31,8 @@ import org.junit.runners.MethodSorters
|
||||
@FixMethodOrder(MethodSorters.JVM)
|
||||
class WebviewPermissionUtilsTest {
|
||||
|
||||
private val utils = WebviewPermissionUtils()
|
||||
private val prefs = FakeVectorPreferences()
|
||||
private val utils = WebviewPermissionUtils(prefs.instance)
|
||||
|
||||
@Test
|
||||
fun filterPermissionsToBeGranted_selectedAndGrantedNothing() {
|
||||
|
Loading…
Reference in New Issue
Block a user