Amend "Reset notification importance" list item style

Using LayoutPreference here makes list look like abrupt, we would like
to switch to normal Preference to align listitem style.

Bug: 265062898
Test: atest ImportanceResetPreferenceControllerTest -c
Change-Id: I93961de148915699d2cba46bdba71e667e8ea10a
This commit is contained in:
Shen Lin
2023-01-11 11:04:08 +08:00
parent ce5d029670
commit 1721d0f276
4 changed files with 15 additions and 62 deletions

View File

@@ -26,10 +26,10 @@ import static org.mockito.Mockito.when;
import android.content.Context;
import android.view.View;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settingslib.widget.LayoutPreference;
import org.junit.Before;
import org.junit.Test;
@@ -43,12 +43,11 @@ import org.robolectric.util.ReflectionHelpers;
@RunWith(RobolectricTestRunner.class)
public class ImportanceResetPreferenceControllerTest {
private static final String KEY = "asst_importance_reset";
private ImportanceResetPreferenceController mController;
@Mock
private PreferenceScreen mScreen;
private LayoutPreference mPreference;
private Preference mPreference;
private Context mContext;
@Mock
private NotificationBackend mBackend;
@@ -58,9 +57,10 @@ public class ImportanceResetPreferenceControllerTest {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mPreference = new LayoutPreference(mContext, R.layout.reset_importance_button);
mPreference = new Preference(mContext);
mPreference.setKey(ImportanceResetPreferenceController.KEY);
when(mScreen.findPreference(anyString())).thenReturn(mPreference);
mController = new ImportanceResetPreferenceController(mContext, KEY);
mController = new ImportanceResetPreferenceController(mContext, "some_key");
mController.displayPreference(mScreen);
ReflectionHelpers.setField(mController, "mBackend", mBackend);
@@ -68,10 +68,7 @@ public class ImportanceResetPreferenceControllerTest {
@Test
public void onClick_callReset() {
final View view = mPreference.findViewById(R.id.reset_importance_button);
mController.updateState(mPreference);
assertThat(view.getVisibility()).isEqualTo(View.VISIBLE);
view.performClick();
mController.handlePreferenceTreeClick(mPreference);
verify(mBackend, times(1)).resetNotificationImportance();
}