Added test for enabling wifi for demo user
Earlier change to resolve merge conflicts was breaking the current test because mocked context was used to get wifi manager. Mocking wifi manager to fix the test and added a check that setWifiEnabled is called when wifi is not already on. Test: adb shell am instrument -e class com.android.server.retaildemo.RetailDemoModeServiceTest -w com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner Bug: 31833031 Change-Id: Idd123d50df6ee6db51417645fc877abebe555dc0
This commit is contained in:
@@ -466,8 +466,8 @@ public class RetailDemoModeService extends SystemService {
|
||||
mInjector.getSystemUsersConfiguration(), userId);
|
||||
mInjector.turnOffAllFlashLights(mCameraIdsWithFlash);
|
||||
muteVolumeStreams();
|
||||
if (!mInjector.isWifiEnabled()) {
|
||||
mInjector.enableWifi();
|
||||
if (!mInjector.getWifiManager().isWifiEnabled()) {
|
||||
mInjector.getWifiManager().setWifiEnabled(true);
|
||||
}
|
||||
// Disable lock screen for demo users.
|
||||
mInjector.getLockPatternUtils().setLockScreenDisabled(true, userId);
|
||||
@@ -535,7 +535,7 @@ public class RetailDemoModeService extends SystemService {
|
||||
return mContext;
|
||||
}
|
||||
|
||||
private WifiManager getWifiManager() {
|
||||
WifiManager getWifiManager() {
|
||||
if (mWifiManager == null) {
|
||||
mWifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);
|
||||
}
|
||||
@@ -644,14 +644,6 @@ public class RetailDemoModeService extends SystemService {
|
||||
mWakeLock.release();
|
||||
}
|
||||
|
||||
boolean isWifiEnabled() {
|
||||
return getWifiManager().isWifiEnabled();
|
||||
}
|
||||
|
||||
void enableWifi() {
|
||||
getWifiManager().setWifiEnabled(true);
|
||||
}
|
||||
|
||||
void logSessionDuration(int duration) {
|
||||
MetricsLogger.histogram(getContext(), DEMO_SESSION_DURATION, duration);
|
||||
}
|
||||
|
||||
@@ -46,6 +46,7 @@ import android.content.pm.UserInfo;
|
||||
import android.content.res.Configuration;
|
||||
import android.media.AudioManager;
|
||||
import android.net.Uri;
|
||||
import android.net.wifi.WifiManager;
|
||||
import android.os.FileUtils;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
@@ -97,6 +98,7 @@ public class RetailDemoModeServiceTest {
|
||||
private @Mock NotificationManager mNm;
|
||||
private @Mock ActivityManagerInternal mAmi;
|
||||
private @Mock AudioManager mAudioManager;
|
||||
private @Mock WifiManager mWifiManager;
|
||||
private @Mock LockPatternUtils mLockPatternUtils;
|
||||
private MockPreloadAppsInstaller mPreloadAppsInstaller;
|
||||
private MockContentResolver mContentResolver;
|
||||
@@ -227,6 +229,7 @@ public class RetailDemoModeServiceTest {
|
||||
final UserInfo userInfo = new UserInfo(TEST_DEMO_USER, "demo_user",
|
||||
UserInfo.FLAG_DEMO | UserInfo.FLAG_EPHEMERAL);
|
||||
when(mUm.getUserInfo(TEST_DEMO_USER)).thenReturn(userInfo);
|
||||
when(mWifiManager.isWifiEnabled()).thenReturn(false);
|
||||
final int minVolume = -111;
|
||||
for (int stream : RetailDemoModeService.VOLUME_STREAMS_TO_MUTE) {
|
||||
when(mAudioManager.getStreamMinVolume(stream)).thenReturn(minVolume);
|
||||
@@ -238,6 +241,7 @@ public class RetailDemoModeServiceTest {
|
||||
verify(mAudioManager).setStreamVolume(stream, minVolume, 0);
|
||||
}
|
||||
verify(mLockPatternUtils).setLockScreenDisabled(true, TEST_DEMO_USER);
|
||||
verify(mWifiManager).setWifiEnabled(true);
|
||||
}
|
||||
|
||||
private void setCameraPackage(String pkgName) {
|
||||
@@ -320,6 +324,11 @@ public class RetailDemoModeServiceTest {
|
||||
return mUm;
|
||||
}
|
||||
|
||||
@Override
|
||||
WifiManager getWifiManager() {
|
||||
return mWifiManager;
|
||||
}
|
||||
|
||||
@Override
|
||||
void switchUser(int userId) {
|
||||
if (mLatch != null) {
|
||||
|
||||
Reference in New Issue
Block a user