Improve multi user settings screen

- Added switch and user delete functionality to details screen.
- Added robo tests.

Screenshots: http://shortn/_S6fbIMhAYO
Bug: 142798722
Test: Run robo tests with this command:
  make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.users.*SettingsTest"
Change-Id: Ied67290e8fed87feb0a60a3f2c40eb91cc57988e
This commit is contained in:
Andras Kloczl
2020-04-21 11:32:12 +01:00
parent 73d3367901
commit 4d7d4effa5
16 changed files with 1469 additions and 523 deletions

View File

@@ -18,12 +18,8 @@ package com.android.settings.users;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.os.UserHandle;
import android.view.View;
import com.android.settingslib.RestrictedPreferenceHelper;
@@ -48,28 +44,12 @@ public class UserPreferenceTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mUserPreference = new UserPreference(mContext, null /* attrs */, UserHandle.USER_CURRENT,
null /* settingsListener */, null /* deleteListener */);
mUserPreference = new UserPreference(mContext, null /* attrs */, UserHandle.USER_CURRENT);
ReflectionHelpers.setField(mUserPreference, "mHelper", mRestrictedPreferenceHelper);
}
@Test
public void testShouldHideSecondTarget_noListener_shouldHide() {
public void testShouldHideSecondTarget_shouldHide() {
assertThat(mUserPreference.shouldHideSecondTarget()).isTrue();
}
@Test
public void testShouldHideSecondTarget_disabledByAdmin_shouldHide() {
when(mRestrictedPreferenceHelper.isDisabledByAdmin()).thenReturn(true);
assertThat(mUserPreference.shouldHideSecondTarget()).isTrue();
}
@Test
public void testShouldHideSecondTarget_hasSettingListener_shouldNotHide() {
ReflectionHelpers.setField(mUserPreference, "mSettingsClickListener",
mock(View.OnClickListener.class));
assertThat(mUserPreference.shouldHideSecondTarget()).isFalse();
}
}