Merge "Fix CTS failures on fugu" into nyc-dev
diff --git a/hostsidetests/services/activitymanager/src/android/server/cts/ActivityAndWindowManagersState.java b/hostsidetests/services/activitymanager/src/android/server/cts/ActivityAndWindowManagersState.java
index f2445c0..54892de 100644
--- a/hostsidetests/services/activitymanager/src/android/server/cts/ActivityAndWindowManagersState.java
+++ b/hostsidetests/services/activitymanager/src/android/server/cts/ActivityAndWindowManagersState.java
@@ -31,6 +31,7 @@
import java.util.Objects;
import static android.server.cts.ActivityManagerTestBase.FREEFORM_WORKSPACE_STACK_ID;
+import static android.server.cts.ActivityManagerTestBase.PINNED_STACK_ID;
import static android.server.cts.StateLogger.log;
/** Combined state of the activity manager and window manager. */
@@ -349,7 +350,8 @@
}
if (aStackBounds.getWidth() >= aTaskMinWidth
- && aStackBounds.getHeight() >= aTaskMinHeight) {
+ && aStackBounds.getHeight() >= aTaskMinHeight
+ || stackId == PINNED_STACK_ID) {
// Bounds are not smaller then minimal possible, so stack and task
// bounds must be equal.
assertEquals("Task bounds must be equal to stack bounds taskId="
diff --git a/hostsidetests/services/activitymanager/src/android/server/cts/ActivityManagerState.java b/hostsidetests/services/activitymanager/src/android/server/cts/ActivityManagerState.java
index 8eb0361..e56c32f 100644
--- a/hostsidetests/services/activitymanager/src/android/server/cts/ActivityManagerState.java
+++ b/hostsidetests/services/activitymanager/src/android/server/cts/ActivityManagerState.java
@@ -33,6 +33,7 @@
import static android.server.cts.ActivityManagerTestBase.HOME_STACK_ID;
import static android.server.cts.StateLogger.log;
+import static android.server.cts.StateLogger.logE;
class ActivityManagerState {
private static final String DUMPSYS_ACTIVITY_ACTIVITIES = "dumpsys activity activities";
@@ -96,16 +97,16 @@
}
if (mStacks.isEmpty()) {
- log("No stacks found...");
+ logE("No stacks found...");
}
if (mFocusedStackId == -1) {
- log("No focused stack found...");
+ logE("No focused stack found...");
}
if (mFocusedActivityRecord == null) {
- log("No focused activity found...");
+ logE("No focused activity found...");
}
if (mResumedActivities.isEmpty()) {
- log("No resumed activities found...");
+ logE("No resumed activities found...");
}
}
diff --git a/hostsidetests/services/activitymanager/src/android/server/cts/ActivityManagerTestBase.java b/hostsidetests/services/activitymanager/src/android/server/cts/ActivityManagerTestBase.java
index e330a9d..d91983d 100644
--- a/hostsidetests/services/activitymanager/src/android/server/cts/ActivityManagerTestBase.java
+++ b/hostsidetests/services/activitymanager/src/android/server/cts/ActivityManagerTestBase.java
@@ -98,6 +98,7 @@
protected ActivityAndWindowManagersState mAmWmState = new ActivityAndWindowManagersState();
private int mInitialAccelerometerRotation;
+ private int mUserRotation;
@Override
protected void setUp() throws Exception {
@@ -106,6 +107,7 @@
// Get the device, this gives a handle to run commands and install APKs.
mDevice = getDevice();
mInitialAccelerometerRotation = getAccelerometerRotation();
+ mUserRotation = getUserRotation();
}
@Override
@@ -114,6 +116,7 @@
try {
mDevice.executeShellCommand(AM_FORCE_STOP_TEST_PACKAGE);
setAccelerometerRotation(mInitialAccelerometerRotation);
+ setUserRotation(mUserRotation);
// Remove special stacks.
mDevice.executeShellCommand(AM_REMOVE_STACK + PINNED_STACK_ID);
mDevice.executeShellCommand(AM_REMOVE_STACK + DOCKED_STACK_ID);
@@ -224,13 +227,13 @@
protected void setDeviceRotation(int rotation) throws DeviceNotAvailableException {
setAccelerometerRotation(0);
- runCommandAndPrintOutput("settings put system user_rotation " + rotation);
+ setUserRotation(rotation);
}
private int getAccelerometerRotation() throws DeviceNotAvailableException {
final String rotation =
runCommandAndPrintOutput("settings get system accelerometer_rotation");
- return Integer.valueOf(rotation.trim());
+ return Integer.parseInt(rotation.trim());
}
private void setAccelerometerRotation(int rotation) throws DeviceNotAvailableException {
@@ -238,6 +241,25 @@
"settings put system accelerometer_rotation " + rotation);
}
+ private int getUserRotation() throws DeviceNotAvailableException {
+ final String rotation =
+ runCommandAndPrintOutput("settings get system user_rotation").trim();
+ if ("null".equals(rotation)) {
+ return -1;
+ }
+ return Integer.parseInt(rotation);
+ }
+
+ private void setUserRotation(int rotation) throws DeviceNotAvailableException {
+ if (rotation == -1) {
+ runCommandAndPrintOutput(
+ "settings delete system user_rotation");
+ } else {
+ runCommandAndPrintOutput(
+ "settings put system user_rotation " + rotation);
+ }
+ }
+
protected String runCommandAndPrintOutput(String command) throws DeviceNotAvailableException {
final String output = mDevice.executeShellCommand(command);
CLog.logAndDisplay(LogLevel.INFO, command);
diff --git a/hostsidetests/services/activitymanager/src/android/server/cts/StateLogger.java b/hostsidetests/services/activitymanager/src/android/server/cts/StateLogger.java
index 1266102..335f26c 100644
--- a/hostsidetests/services/activitymanager/src/android/server/cts/StateLogger.java
+++ b/hostsidetests/services/activitymanager/src/android/server/cts/StateLogger.java
@@ -19,6 +19,7 @@
import com.android.tradefed.log.LogUtil.CLog;
import static com.android.ddmlib.Log.LogLevel.INFO;
+import static com.android.ddmlib.Log.LogLevel.ERROR;
/**
* Util class to perform simple state logging.
@@ -32,4 +33,8 @@
CLog.logAndDisplay(INFO, logText);
}
}
+
+ public static void logE(String logText) {
+ CLog.logAndDisplay(ERROR, logText);
+ }
}
diff --git a/hostsidetests/services/activitymanager/src/android/server/cts/WindowManagerState.java b/hostsidetests/services/activitymanager/src/android/server/cts/WindowManagerState.java
index ffa3b83..da346ac 100644
--- a/hostsidetests/services/activitymanager/src/android/server/cts/WindowManagerState.java
+++ b/hostsidetests/services/activitymanager/src/android/server/cts/WindowManagerState.java
@@ -32,6 +32,7 @@
import java.util.regex.Matcher;
import static android.server.cts.StateLogger.log;
+import static android.server.cts.StateLogger.logE;
class WindowManagerState {
private static final String DUMPSYS_WINDOWS_APPS = "dumpsys window apps";
@@ -105,13 +106,13 @@
}
if (mWindows.isEmpty()) {
- log("No Windows found...");
+ logE("No Windows found...");
}
if (mFocusedWindow == null) {
- log("No Focused Window...");
+ logE("No Focused Window...");
}
if (mFocusedApp == null) {
- log("No Focused App...");
+ logE("No Focused App...");
}
}