Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c6977f4f authored by Dmitry Dementyev's avatar Dmitry Dementyev Committed by Android (Google) Code Review
Browse files

Revert^3 "Add biometric scuba tests to presubmit."

b5bced6f

Change-Id: Iac0815ad47a6d2a52abeef27a6ece37f537ac7a6
parent b5bced6f
Loading
Loading
Loading
Loading
+2 −9
Original line number Diff line number Diff line
@@ -34,7 +34,6 @@ import org.junit.runners.model.Statement
import platform.test.screenshot.DeviceEmulationRule
import platform.test.screenshot.DeviceEmulationSpec
import platform.test.screenshot.MaterialYouColorsRule
import platform.test.screenshot.PathConfig
import platform.test.screenshot.ScreenshotTestRule
import platform.test.screenshot.getEmulatedDevicePathConfig
import platform.test.screenshot.matchers.BitmapMatcher
@@ -42,19 +41,13 @@ import platform.test.screenshot.matchers.BitmapMatcher
/** A rule for View screenshot diff unit tests. */
class ViewScreenshotTestRule(
    emulationSpec: DeviceEmulationSpec,
    private val matcher: BitmapMatcher = UnitTestBitmapMatcher,
    pathConfig: PathConfig = getEmulatedDevicePathConfig(emulationSpec),
    assetsPathRelativeToRepo: String = ""
    private val matcher: BitmapMatcher = UnitTestBitmapMatcher
) : TestRule {
    private val colorsRule = MaterialYouColorsRule()
    private val deviceEmulationRule = DeviceEmulationRule(emulationSpec)
    private val screenshotRule =
        ScreenshotTestRule(
            if (assetsPathRelativeToRepo.isBlank()) {
                SystemUIGoldenImagePathManager(pathConfig)
            } else {
                SystemUIGoldenImagePathManager(pathConfig, assetsPathRelativeToRepo)
            }
            SystemUIGoldenImagePathManager(getEmulatedDevicePathConfig(emulationSpec))
        )
    private val activityRule = ActivityScenarioRule(ScreenshotActivity::class.java)
    private val delegateRule =
+0 −16
Original line number Diff line number Diff line
{
  "presubmit": [
    {
      // TODO(b/251476085): Consider merging with SystemUIGoogleScreenshotTests (in U+)
      "name": "SystemUIGoogleBiometricsScreenshotTests",
      "options": [
        {
          "exclude-annotation": "org.junit.Ignore"
        },
        {
          "exclude-annotation": "androidx.test.filters.FlakyTest"
        }
      ]
    }
  ]
}
+3 −5
Original line number Diff line number Diff line
@@ -13,6 +13,7 @@ import com.android.systemui.biometrics.ui.CredentialPasswordView
import com.android.systemui.biometrics.ui.CredentialView
import com.android.systemui.biometrics.ui.viewmodel.CredentialViewModel
import com.android.systemui.lifecycle.repeatWhenAttached
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.launch

/** Sub-binder for the [CredentialPasswordView]. */
@@ -23,17 +24,14 @@ object CredentialPasswordViewBinder {
        view: CredentialPasswordView,
        host: CredentialView.Host,
        viewModel: CredentialViewModel,
        requestFocusForInput: Boolean,
    ) {
        val imeManager = view.context.getSystemService(InputMethodManager::class.java)!!

        val passwordField: ImeAwareEditText = view.requireViewById(R.id.lockPassword)

        view.repeatWhenAttached {
            if (requestFocusForInput) {
            passwordField.requestFocus()
            passwordField.scheduleShowSoftInput()
            }

            repeatOnLifecycle(Lifecycle.State.STARTED) {
                // observe credential validation attempts and submit/cancel buttons
+3 −2
Original line number Diff line number Diff line
@@ -9,6 +9,7 @@ import com.android.systemui.biometrics.ui.CredentialPatternView
import com.android.systemui.biometrics.ui.CredentialView
import com.android.systemui.biometrics.ui.viewmodel.CredentialViewModel
import com.android.systemui.lifecycle.repeatWhenAttached
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.launch

/** Sub-binder for the [CredentialPatternView]. */
@@ -29,7 +30,7 @@ object CredentialPatternViewBinder {
                    viewModel.header.collect { header ->
                        lockPatternView.setOnPatternListener(
                            OnPatternDetectedListener { pattern ->
                                if (pattern.isPatternTooShort()) {
                                if (pattern.isPatternLongEnough()) {
                                    // Pattern size is less than the minimum
                                    // do not count it as a failed attempt
                                    viewModel.showPatternTooShortError()
@@ -70,5 +71,5 @@ private class OnPatternDetectedListener(
    }
}

private fun List<LockPatternView.Cell>.isPatternTooShort(): Boolean =
private fun List<LockPatternView.Cell>.isPatternLongEnough(): Boolean =
    size < LockPatternUtils.MIN_PATTERN_REGISTER_FAIL
+2 −3
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@ import com.android.systemui.biometrics.ui.viewmodel.CredentialViewModel
import com.android.systemui.lifecycle.repeatWhenAttached
import kotlinx.coroutines.Job
import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.flow.filter
import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.launch
@@ -39,7 +40,6 @@ object CredentialViewBinder {
        panelViewController: AuthPanelController,
        animatePanel: Boolean,
        maxErrorDuration: Long = 3_000L,
        requestFocusForInput: Boolean = true,
    ) {
        val titleView: TextView = view.requireViewById(R.id.title)
        val subtitleView: TextView = view.requireViewById(R.id.subtitle)
@@ -110,8 +110,7 @@ object CredentialViewBinder {

        // bind the auth widget
        when (view) {
            is CredentialPasswordView ->
                CredentialPasswordViewBinder.bind(view, host, viewModel, requestFocusForInput)
            is CredentialPasswordView -> CredentialPasswordViewBinder.bind(view, host, viewModel)
            is CredentialPatternView -> CredentialPatternViewBinder.bind(view, host, viewModel)
            else -> throw IllegalStateException("unexpected view type: ${view.javaClass.name}")
        }