import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
+import android.app.ActivityManager;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.hardware.usb.UsbManager;
import android.os.Handler;
import android.os.Looper;
+import android.os.Message;
import android.os.UserHandle;
import android.provider.Settings;
import android.support.test.InstrumentationRegistry;
}
@SmallTest
+ @Test
public void setFunctionsMtp() {
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_SET_CURRENT_FUNCTIONS,
UsbManager.FUNCTION_MTP));
}
@SmallTest
+ @Test
public void setFunctionsPtp() {
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_SET_CURRENT_FUNCTIONS,
UsbManager.FUNCTION_PTP));
}
@SmallTest
+ @Test
public void setFunctionsMidi() {
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_SET_CURRENT_FUNCTIONS,
UsbManager.FUNCTION_MIDI));
}
@SmallTest
+ @Test
public void setFunctionsRndis() {
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_SET_CURRENT_FUNCTIONS,
UsbManager.FUNCTION_RNDIS));
}
@SmallTest
+ @Test
public void enableAdb() {
sendBootCompleteMessages(mUsbHandler);
- mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_ENABLE_ADB, 1));
+ Message msg = mUsbHandler.obtainMessage(MSG_ENABLE_ADB);
+ msg.arg1 = 1;
+ mUsbHandler.handleMessage(msg);
assertEquals(mUsbHandler.getEnabledFunctions(), UsbManager.FUNCTION_NONE);
- assertTrue(mUsbHandler.mAdbEnabled);
assertEquals(mMockProperties.get(UsbDeviceManager.UsbHandler
.USB_PERSISTENT_CONFIG_PROPERTY), UsbManager.USB_FUNCTION_ADB);
verify(mUsbDebuggingManager).setAdbEnabled(true);
+ assertTrue(mUsbHandler.mAdbEnabled);
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_UPDATE_STATE, 1, 1));
}
@SmallTest
+ @Test
public void disableAdb() {
mMockProperties.put(UsbDeviceManager.UsbHandler.USB_PERSISTENT_CONFIG_PROPERTY,
UsbManager.USB_FUNCTION_ADB);
}
@SmallTest
+ @Test
public void bootCompletedCharging() {
sendBootCompleteMessages(mUsbHandler);
assertEquals(mUsbHandler.getEnabledFunctions(), UsbManager.FUNCTION_NONE);
}
- @Test
@SmallTest
+ @Test
public void bootCompletedAdbEnabled() {
mMockProperties.put(UsbDeviceManager.UsbHandler.USB_PERSISTENT_CONFIG_PROPERTY, "adb");
mUsbHandler = new MockUsbHandler(FgThread.get().getLooper(),
}
@SmallTest
+ @Test
public void userSwitchedDisablesMtp() {
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_SET_CURRENT_FUNCTIONS,
UsbManager.FUNCTION_MTP));
assertNotEquals(mUsbHandler.getEnabledFunctions() & UsbManager.FUNCTION_MTP, 0);
- mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_USER_SWITCHED,
- UserHandle.getCallingUserId() + 1));
+ Message msg = mUsbHandler.obtainMessage(MSG_USER_SWITCHED);
+ msg.arg1 = ActivityManager.getCurrentUser() + 1;
+ mUsbHandler.handleMessage(msg);
assertEquals(mUsbHandler.getEnabledFunctions(), UsbManager.FUNCTION_NONE);
}
@SmallTest
+ @Test
public void changedRestrictionsDisablesMtp() {
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_SET_CURRENT_FUNCTIONS,
UsbManager.FUNCTION_MTP));
}
@SmallTest
+ @Test
public void disconnectResetsCharging() {
sendBootCompleteMessages(mUsbHandler);
}
@SmallTest
+ @Test
public void configuredSendsBroadcast() {
sendBootCompleteMessages(mUsbHandler);
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_SET_CURRENT_FUNCTIONS,
}
@SmallTest
+ @Test
public void setScreenUnlockedFunctions() {
sendBootCompleteMessages(mUsbHandler);
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_UPDATE_SCREEN_LOCK, 0));
}
@SmallTest
+ @Test
public void unlockScreen() {
when(mSharedPreferences.getString(String.format(Locale.ENGLISH,
UsbDeviceManager.UNLOCKED_CONFIG_PREF, mUsbHandler.mCurrentUser), ""))
.thenReturn(UsbManager.USB_FUNCTION_MTP);
+ mUsbHandler = new MockUsbHandler(FgThread.get().getLooper(),
+ InstrumentationRegistry.getContext(), mUsbDeviceManager, mUsbDebuggingManager,
+ mUsbAlsaManager, mUsbSettingsManager);
sendBootCompleteMessages(mUsbHandler);
+ mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_UPDATE_SCREEN_LOCK, 1));
mUsbHandler.handleMessage(mUsbHandler.obtainMessage(MSG_UPDATE_SCREEN_LOCK, 0));
assertNotEquals(mUsbHandler.getScreenUnlockedFunctions() & UsbManager.FUNCTION_MTP, 0);