Merge "Make volume sliders sliceable" into pi-dev am: 4ef7b5f97b
am: 3fa5b4fad4
Change-Id: Idcbc7acf0343ff74f198ea960b8e6ca3d2e16a20
This commit is contained in:
@@ -43,6 +43,7 @@ import org.robolectric.RuntimeEnvironment;
|
||||
@RunWith(SettingsRobolectricTestRunner.class)
|
||||
public class AdjustVolumeRestrictedPreferenceControllerTest {
|
||||
|
||||
private static final String KEY = "key";
|
||||
@Mock
|
||||
private AccountRestrictionHelper mAccountHelper;
|
||||
|
||||
@@ -54,7 +55,7 @@ public class AdjustVolumeRestrictedPreferenceControllerTest {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
mContext = spy(RuntimeEnvironment.application);
|
||||
mController =
|
||||
new AdjustVolumeRestrictedPreferenceControllerTestable(mContext, mAccountHelper);
|
||||
new AdjustVolumeRestrictedPreferenceControllerTestable(mContext, mAccountHelper, KEY);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -88,13 +89,18 @@ public class AdjustVolumeRestrictedPreferenceControllerTest {
|
||||
extends AdjustVolumeRestrictedPreferenceController {
|
||||
|
||||
private AdjustVolumeRestrictedPreferenceControllerTestable(Context context,
|
||||
AccountRestrictionHelper helper) {
|
||||
super(context, helper);
|
||||
AccountRestrictionHelper helper, String key) {
|
||||
super(context, helper, key);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getAvailabilityStatus() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPreferenceKey() {
|
||||
return null;
|
||||
return KEY;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -103,8 +109,18 @@ public class AdjustVolumeRestrictedPreferenceControllerTest {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isAvailable() {
|
||||
return true;
|
||||
public int getSliderPosition() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean setSliderPosition(int position) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxSteps() {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -45,7 +45,8 @@ public class AlarmVolumePreferenceControllerTest {
|
||||
public void setUp() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
mContext = RuntimeEnvironment.application;
|
||||
mController = new AlarmVolumePreferenceController(mContext, null, null, mHelper);
|
||||
mController = new AlarmVolumePreferenceController(mContext);
|
||||
mController.setAudioHelper(mHelper);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@@ -35,8 +35,7 @@ public class MediaVolumePreferenceControllerTest {
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
mController =
|
||||
new MediaVolumePreferenceController(RuntimeEnvironment.application, null, null);
|
||||
mController = new MediaVolumePreferenceController(RuntimeEnvironment.application);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@@ -57,7 +57,8 @@ public class NotificationVolumePreferenceControllerTest {
|
||||
when(mContext.getSystemService(Context.TELEPHONY_SERVICE)).thenReturn(mTelephonyManager);
|
||||
when(mContext.getSystemService(Context.AUDIO_SERVICE)).thenReturn(mAudioManager);
|
||||
when(mContext.getSystemService(Context.VIBRATOR_SERVICE)).thenReturn(mVibrator);
|
||||
mController = new NotificationVolumePreferenceController(mContext, null, null, mHelper);
|
||||
mController = new NotificationVolumePreferenceController(mContext);
|
||||
mController.setAudioHelper(mHelper);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@@ -65,7 +65,8 @@ public class RingVolumePreferenceControllerTest {
|
||||
shadowContext.setSystemService(Context.NOTIFICATION_SERVICE, mNotificationManager);
|
||||
mContext = RuntimeEnvironment.application;
|
||||
when(mNotificationManager.getEffectsSuppressor()).thenReturn(mSuppressor);
|
||||
mController = new RingVolumePreferenceController(mContext, null, null, mHelper);
|
||||
mController = new RingVolumePreferenceController(mContext);
|
||||
mController.setAudioHelper(mHelper);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.settings.notification;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.mockito.ArgumentMatchers.nullable;
|
||||
import static org.mockito.Matchers.any;
|
||||
import static org.mockito.Matchers.anyInt;
|
||||
@@ -46,6 +47,8 @@ public class VolumeSeekBarPreferenceControllerTest {
|
||||
private VolumeSeekBarPreference mPreference;
|
||||
@Mock
|
||||
private VolumeSeekBarPreference.Callback mCallback;
|
||||
@Mock
|
||||
private AudioHelper mHelper;
|
||||
|
||||
private VolumeSeekBarPreferenceControllerTestable mController;
|
||||
|
||||
@@ -53,7 +56,10 @@ public class VolumeSeekBarPreferenceControllerTest {
|
||||
public void setUp() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
when(mScreen.findPreference(nullable(String.class))).thenReturn(mPreference);
|
||||
mController = new VolumeSeekBarPreferenceControllerTestable(mContext, mCallback);
|
||||
when(mPreference.getKey()).thenReturn("key");
|
||||
mController = new VolumeSeekBarPreferenceControllerTestable(mContext, mCallback,
|
||||
mPreference.getKey());
|
||||
mController.setAudioHelper(mHelper);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -67,7 +73,8 @@ public class VolumeSeekBarPreferenceControllerTest {
|
||||
|
||||
@Test
|
||||
public void displayPreference_notAvailable_shouldNotUpdatePreference() {
|
||||
mController = new VolumeSeekBarPreferenceControllerTestable(mContext, mCallback, false);
|
||||
mController = new VolumeSeekBarPreferenceControllerTestable(mContext, mCallback, false,
|
||||
mPreference.getKey());
|
||||
|
||||
mController.displayPreference(mScreen);
|
||||
|
||||
@@ -94,6 +101,42 @@ public class VolumeSeekBarPreferenceControllerTest {
|
||||
verify(mPreference).onActivityPause();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sliderMethods_handleNullPreference() {
|
||||
when(mHelper.getStreamVolume(mController.getAudioStream())).thenReturn(4);
|
||||
when(mHelper.getMaxVolume(mController.getAudioStream())).thenReturn(10);
|
||||
|
||||
assertThat(mController.getMaxSteps()).isEqualTo(10);
|
||||
assertThat(mController.getSliderPosition()).isEqualTo(4);
|
||||
|
||||
mController.setSliderPosition(9);
|
||||
verify(mHelper).setStreamVolume(mController.getAudioStream(), 9);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void setSliderPosition_passesAlongValue() {
|
||||
mController.displayPreference(mScreen);
|
||||
|
||||
mController.setSliderPosition(2);
|
||||
verify(mPreference).setProgress(2);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getMaxSteps_passesAlongValue() {
|
||||
when(mPreference.getMax()).thenReturn(6);
|
||||
mController.displayPreference(mScreen);
|
||||
|
||||
assertThat(mController.getMaxSteps()).isEqualTo(6);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getSliderPosition_passesAlongValue() {
|
||||
when(mPreference.getProgress()).thenReturn(7);
|
||||
mController.displayPreference(mScreen);
|
||||
|
||||
assertThat(mController.getSliderPosition()).isEqualTo(7);
|
||||
}
|
||||
|
||||
private class VolumeSeekBarPreferenceControllerTestable
|
||||
extends VolumeSeekBarPreferenceController {
|
||||
|
||||
@@ -103,19 +146,20 @@ public class VolumeSeekBarPreferenceControllerTest {
|
||||
private boolean mAvailable;
|
||||
|
||||
VolumeSeekBarPreferenceControllerTestable(Context context,
|
||||
VolumeSeekBarPreference.Callback callback) {
|
||||
this(context, callback, true);
|
||||
VolumeSeekBarPreference.Callback callback, String key) {
|
||||
this(context, callback, true, key);
|
||||
}
|
||||
|
||||
VolumeSeekBarPreferenceControllerTestable(Context context,
|
||||
VolumeSeekBarPreference.Callback callback, boolean available) {
|
||||
super(context, callback, null);
|
||||
VolumeSeekBarPreference.Callback callback, boolean available, String key) {
|
||||
super(context, key);
|
||||
setCallback(callback);
|
||||
mAvailable = available;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPreferenceKey() {
|
||||
return null;
|
||||
return "key";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -124,8 +168,8 @@ public class VolumeSeekBarPreferenceControllerTest {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isAvailable() {
|
||||
return mAvailable;
|
||||
public int getAvailabilityStatus() {
|
||||
return mAvailable ? AVAILABLE : DISABLED_UNSUPPORTED;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user