Loading packages/SettingsLib/Preference/testutils/com/android/settingslib/preference/PreferenceBindingTestUtils.kt +16 −0 Original line number Diff line number Diff line Loading @@ -17,9 +17,14 @@ package com.android.settingslib.preference import android.content.Context import android.os.Bundle import androidx.annotation.VisibleForTesting import androidx.fragment.app.testing.FragmentScenario import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat import androidx.preference.PreferenceScreen import com.android.settingslib.metadata.EXTRA_BINDING_SCREEN_ARGS import com.android.settingslib.metadata.EXTRA_BINDING_SCREEN_KEY import com.android.settingslib.metadata.PersistentPreference import com.android.settingslib.metadata.PreferenceMetadata import com.android.settingslib.metadata.PreferenceScreenMetadata Loading @@ -46,3 +51,14 @@ fun <P : Preference> PreferenceMetadata.createAndBindWidget( binding.bind(it, this) } } /** Launches fragment for given [PreferenceScreenCreator]. */ @Suppress("UNCHECKED_CAST") fun PreferenceScreenCreator.launchFragmentScenario() = FragmentScenario.launchInContainer( fragmentClass() as Class<out PreferenceFragmentCompat>, Bundle(2).also { it.putString(EXTRA_BINDING_SCREEN_KEY, key) it.putBundle(EXTRA_BINDING_SCREEN_ARGS, arguments) }, ) Loading
packages/SettingsLib/Preference/testutils/com/android/settingslib/preference/PreferenceBindingTestUtils.kt +16 −0 Original line number Diff line number Diff line Loading @@ -17,9 +17,14 @@ package com.android.settingslib.preference import android.content.Context import android.os.Bundle import androidx.annotation.VisibleForTesting import androidx.fragment.app.testing.FragmentScenario import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat import androidx.preference.PreferenceScreen import com.android.settingslib.metadata.EXTRA_BINDING_SCREEN_ARGS import com.android.settingslib.metadata.EXTRA_BINDING_SCREEN_KEY import com.android.settingslib.metadata.PersistentPreference import com.android.settingslib.metadata.PreferenceMetadata import com.android.settingslib.metadata.PreferenceScreenMetadata Loading @@ -46,3 +51,14 @@ fun <P : Preference> PreferenceMetadata.createAndBindWidget( binding.bind(it, this) } } /** Launches fragment for given [PreferenceScreenCreator]. */ @Suppress("UNCHECKED_CAST") fun PreferenceScreenCreator.launchFragmentScenario() = FragmentScenario.launchInContainer( fragmentClass() as Class<out PreferenceFragmentCompat>, Bundle(2).also { it.putString(EXTRA_BINDING_SCREEN_KEY, key) it.putBundle(EXTRA_BINDING_SCREEN_ARGS, arguments) }, )