summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorvadimt <vadimt@google.com>2019-08-14 17:45:45 -0700
committerVadim Tryshev <vadimt@google.com>2019-09-17 18:49:42 +0000
commit8c2ae545cf13d6c0aff6ecef1d6b0a0e87f0f980 (patch)
tree127a7e38d8623f2cf2eeeb71bd3ea1a496de0619 /src
parente17a699618b088992d81984428d72d0e475e3796 (diff)
downloadandroid_packages_apps_Trebuchet-8c2ae545cf13d6c0aff6ecef1d6b0a0e87f0f980.tar.gz
android_packages_apps_Trebuchet-8c2ae545cf13d6c0aff6ecef1d6b0a0e87f0f980.tar.bz2
android_packages_apps_Trebuchet-8c2ae545cf13d6c0aff6ecef1d6b0a0e87f0f980.zip
Support for tests that a leak is detected
Bug: 139137636 Change-Id: Ib4f02d6b3798e3fdf3d8e5758c09d2b642404af5 Merged-in: Ib4f02d6b3798e3fdf3d8e5758c09d2b642404af5
Diffstat (limited to 'src')
-rw-r--r--src/com/android/launcher3/testing/TestInformationHandler.java29
-rw-r--r--src/com/android/launcher3/testing/TestProtocol.java2
2 files changed, 31 insertions, 0 deletions
diff --git a/src/com/android/launcher3/testing/TestInformationHandler.java b/src/com/android/launcher3/testing/TestInformationHandler.java
index 243ff6f96..790a2e844 100644
--- a/src/com/android/launcher3/testing/TestInformationHandler.java
+++ b/src/com/android/launcher3/testing/TestInformationHandler.java
@@ -15,7 +15,11 @@
*/
package com.android.launcher3.testing;
+import static android.graphics.Bitmap.Config.ARGB_8888;
+
import android.content.Context;
+import android.graphics.Bitmap;
+import android.graphics.Color;
import android.os.Bundle;
import android.os.Debug;
@@ -29,6 +33,7 @@ import com.android.launcher3.R;
import com.android.launcher3.allapps.AllAppsStore;
import com.android.launcher3.util.ResourceBasedOverride;
+import java.util.LinkedList;
import java.util.concurrent.ExecutionException;
public class TestInformationHandler implements ResourceBasedOverride {
@@ -42,6 +47,7 @@ public class TestInformationHandler implements ResourceBasedOverride {
protected DeviceProfile mDeviceProfile;
protected LauncherAppState mLauncherAppState;
protected Launcher mLauncher;
+ private static LinkedList mLeaks;
public void init(Context context) {
mContext = context;
@@ -120,6 +126,29 @@ public class TestInformationHandler implements ResourceBasedOverride {
response.putInt(TestProtocol.TEST_INFO_RESPONSE_FIELD, mem.getTotalPss());
break;
}
+
+ case TestProtocol.REQUEST_JAVA_LEAK: {
+ if (mLeaks == null) mLeaks = new LinkedList();
+
+ // Allocate and dirty the memory.
+ final int leakSize = 1024 * 1024;
+ final byte[] bytes = new byte[leakSize];
+ for (int i = 0; i < leakSize; i += 239) {
+ bytes[i] = (byte) (i % 256);
+ }
+ mLeaks.add(bytes);
+ break;
+ }
+
+ case TestProtocol.REQUEST_NATIVE_LEAK: {
+ if (mLeaks == null) mLeaks = new LinkedList();
+
+ // Allocate and dirty a bitmap.
+ final Bitmap bitmap = Bitmap.createBitmap(512, 512, ARGB_8888);
+ bitmap.eraseColor(Color.RED);
+ mLeaks.add(bitmap);
+ break;
+ }
}
return response;
}
diff --git a/src/com/android/launcher3/testing/TestProtocol.java b/src/com/android/launcher3/testing/TestProtocol.java
index 60a59ddfa..232a764e0 100644
--- a/src/com/android/launcher3/testing/TestProtocol.java
+++ b/src/com/android/launcher3/testing/TestProtocol.java
@@ -74,6 +74,8 @@ public final class TestProtocol {
public static final String REQUEST_OVERVIEW_LEFT_GESTURE_MARGIN = "overview-left-margin";
public static final String REQUEST_OVERVIEW_RIGHT_GESTURE_MARGIN = "overview-right-margin";
public static final String REQUEST_TOTAL_PSS_KB = "total_pss";
+ public static final String REQUEST_JAVA_LEAK = "java-leak";
+ public static final String REQUEST_NATIVE_LEAK = "native-leak";
public static boolean sDebugTracing = false;
public static final String REQUEST_ENABLE_DEBUG_TRACING = "enable-debug-tracing";