mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-27 15:26:58 +00:00
Merge "Correctly generating heap dumps for OOP tests"
This commit is contained in:
committed by
Android (Google) Code Review
commit
c32fa4bce0
@@ -100,6 +100,7 @@ public abstract class AbstractLauncherUiTest {
|
||||
private static final String TAG = "AbstractLauncherUiTest";
|
||||
|
||||
private static String sStrictmodeDetectedActivityLeak;
|
||||
private static boolean sDumpWasGenerated = false;
|
||||
private static boolean sActivityLeakReported;
|
||||
private static final String SYSTEMUI_PACKAGE = "com.android.systemui";
|
||||
protected static final ActivityLeakTracker ACTIVITY_LEAK_TRACKER = new ActivityLeakTracker();
|
||||
@@ -151,10 +152,18 @@ public abstract class AbstractLauncherUiTest {
|
||||
}
|
||||
|
||||
public static String dumpHprofData() {
|
||||
if (sDumpWasGenerated) return "dump has already been generated by another test";
|
||||
try {
|
||||
final String fileName = getInstrumentation().getTargetContext().getFilesDir().getPath()
|
||||
+ "/ActivityLeakHeapDump.hprof";
|
||||
Debug.dumpHprofData(fileName);
|
||||
if (TestHelpers.isInLauncherProcess()) {
|
||||
Debug.dumpHprofData(fileName);
|
||||
} else {
|
||||
final UiDevice device = UiDevice.getInstance(getInstrumentation());
|
||||
device.executeShellCommand(
|
||||
"am dumpheap " + device.getLauncherPackageName() + " " + fileName);
|
||||
}
|
||||
sDumpWasGenerated = true;
|
||||
return "memory dump filename: " + fileName;
|
||||
} catch (Throwable e) {
|
||||
Log.e(TAG, "dumpHprofData failed", e);
|
||||
|
||||
Reference in New Issue
Block a user