Enable AutoBrightnessScreenTest
NO_IFTTT=Enable test Bug: 374712065 Flag: EXEMPT test Test: atest Change-Id: I1402bbf37644cb9b22aca6b9cae06306524a3b8f
This commit is contained in:
@@ -15,7 +15,8 @@
|
|||||||
*/
|
*/
|
||||||
package com.android.settings.display
|
package com.android.settings.display
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.ContextWrapper
|
||||||
|
import android.content.res.Resources
|
||||||
import android.provider.Settings
|
import android.provider.Settings
|
||||||
import android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC
|
import android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC
|
||||||
import android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL
|
import android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL
|
||||||
@@ -23,26 +24,30 @@ import android.view.LayoutInflater
|
|||||||
import androidx.preference.PreferenceViewHolder
|
import androidx.preference.PreferenceViewHolder
|
||||||
import androidx.test.core.app.ApplicationProvider
|
import androidx.test.core.app.ApplicationProvider
|
||||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||||
import com.android.settings.testutils.shadow.SettingsShadowResources
|
|
||||||
import com.android.settingslib.PrimarySwitchPreference
|
import com.android.settingslib.PrimarySwitchPreference
|
||||||
|
import com.android.settingslib.preference.PreferenceDataStoreAdapter
|
||||||
import com.android.settingslib.widget.SettingsThemeHelper.isExpressiveTheme
|
import com.android.settingslib.widget.SettingsThemeHelper.isExpressiveTheme
|
||||||
import com.android.settingslib.widget.theme.R
|
import com.android.settingslib.widget.theme.R
|
||||||
import com.google.common.truth.Truth.assertThat
|
import com.google.common.truth.Truth.assertThat
|
||||||
import org.junit.Ignore
|
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
import org.junit.runner.RunWith
|
import org.junit.runner.RunWith
|
||||||
import org.robolectric.annotation.Config
|
import org.mockito.kotlin.any
|
||||||
|
import org.mockito.kotlin.doReturn
|
||||||
|
import org.mockito.kotlin.mock
|
||||||
|
|
||||||
// LINT.IfChange
|
// LINT.IfChange
|
||||||
@RunWith(AndroidJUnit4::class)
|
@RunWith(AndroidJUnit4::class)
|
||||||
@Config(shadows = [SettingsShadowResources::class])
|
|
||||||
@Ignore("robolectric runtime")
|
|
||||||
class AutoBrightnessScreenTest {
|
class AutoBrightnessScreenTest {
|
||||||
|
|
||||||
private val context: Context = ApplicationProvider.getApplicationContext()
|
|
||||||
|
|
||||||
private val preferenceScreenCreator = AutoBrightnessScreen()
|
private val preferenceScreenCreator = AutoBrightnessScreen()
|
||||||
|
|
||||||
|
private var mockResources: Resources? = null
|
||||||
|
|
||||||
|
private val context =
|
||||||
|
object : ContextWrapper(ApplicationProvider.getApplicationContext()) {
|
||||||
|
override fun getResources(): Resources = mockResources ?: super.getResources()
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun switchClick_defaultScreenBrightnessModeTurnOffAuto_returnTrue() {
|
fun switchClick_defaultScreenBrightnessModeTurnOffAuto_returnTrue() {
|
||||||
setScreenBrightnessMode(SCREEN_BRIGHTNESS_MODE_MANUAL)
|
setScreenBrightnessMode(SCREEN_BRIGHTNESS_MODE_MANUAL)
|
||||||
@@ -100,20 +105,14 @@ class AutoBrightnessScreenTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun isAvailable_configTrueSet_shouldReturnTrue() {
|
fun isAvailable_configTrueSet_shouldReturnTrue() {
|
||||||
SettingsShadowResources.overrideResource(
|
mockResources = mock { on { getBoolean(any()) } doReturn true }
|
||||||
com.android.internal.R.bool.config_automatic_brightness_available,
|
|
||||||
true,
|
|
||||||
)
|
|
||||||
|
|
||||||
assertThat(preferenceScreenCreator.isAvailable(context)).isTrue()
|
assertThat(preferenceScreenCreator.isAvailable(context)).isTrue()
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun isAvailable_configFalseSet_shouldReturnFalse() {
|
fun isAvailable_configFalseSet_shouldReturnFalse() {
|
||||||
SettingsShadowResources.overrideResource(
|
mockResources = mock { on { getBoolean(any()) } doReturn false }
|
||||||
com.android.internal.R.bool.config_automatic_brightness_available,
|
|
||||||
false,
|
|
||||||
)
|
|
||||||
|
|
||||||
assertThat(preferenceScreenCreator.isAvailable(context)).isFalse()
|
assertThat(preferenceScreenCreator.isAvailable(context)).isFalse()
|
||||||
}
|
}
|
||||||
@@ -121,6 +120,7 @@ class AutoBrightnessScreenTest {
|
|||||||
private fun getPrimarySwitchPreference(): PrimarySwitchPreference =
|
private fun getPrimarySwitchPreference(): PrimarySwitchPreference =
|
||||||
preferenceScreenCreator.run {
|
preferenceScreenCreator.run {
|
||||||
val preference = createWidget(context)
|
val preference = createWidget(context)
|
||||||
|
preference.preferenceDataStore = PreferenceDataStoreAdapter(storage(context))
|
||||||
bind(preference, this)
|
bind(preference, this)
|
||||||
val holder =
|
val holder =
|
||||||
PreferenceViewHolder.createInstanceForTests(
|
PreferenceViewHolder.createInstanceForTests(
|
||||||
|
|||||||
Reference in New Issue
Block a user