summaryrefslogtreecommitdiff
path: root/tools/ahat/test/NativeAllocationTest.java
diff options
context:
space:
mode:
author Richard Uhler <ruhler@google.com> 2016-12-12 13:11:26 +0000
committer Richard Uhler <ruhler@google.com> 2017-02-20 13:33:40 +0000
commitf629cfdbf6da3409aff177352e9ff41209b4570c (patch)
treee59e58924de62f4ff9906a95691f259e94b7fd09 /tools/ahat/test/NativeAllocationTest.java
parentcda4f2e72f569e0a0d6119c1c75284fd44df79ab (diff)
ahat: add support for diffing two heap dumps.
ahat now has the option to specify a --baseline hprof file to use as the basis for comparing two heap dumps. When a baseline hprof file is provided, ahat will highlight how the heap dump has changed relative to the hprof file. Differences that are highlighted include: * overall heap sizes * total bytes and number of allocations by type * new and deleted instances of a given type * retained sizes of objects * instance fields, static fields, and array elements of modified objects Also: * Remove support for showing NativeAllocations, because I haven't ever found it to be useful, it is not obvious what a "native" allocation is, and I don't feel like adding diff support for them. * Remove help page. Because it is outdated, not well maintained, and not very helpful in the first place. Test: m ahat-test Test: Run in diff mode for tests and added new tests for diff. Test: Manually run with and without diff mode on heap dumps from system server. Bug: 33770653 Change-Id: Id9a392ac75588200e716bbc3edbae6e9cd97c26b
Diffstat (limited to 'tools/ahat/test/NativeAllocationTest.java')
-rw-r--r--tools/ahat/test/NativeAllocationTest.java47
1 files changed, 0 insertions, 47 deletions
diff --git a/tools/ahat/test/NativeAllocationTest.java b/tools/ahat/test/NativeAllocationTest.java
deleted file mode 100644
index 9babab903e..0000000000
--- a/tools/ahat/test/NativeAllocationTest.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.ahat;
-
-import com.android.ahat.heapdump.AhatInstance;
-import com.android.ahat.heapdump.AhatSnapshot;
-import com.android.ahat.heapdump.NativeAllocation;
-import java.io.IOException;
-import org.junit.Test;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
-
-public class NativeAllocationTest {
-
- @Test
- public void nativeAllocation() throws IOException {
- TestDump dump = TestDump.getTestDump();
-
- AhatSnapshot snapshot = dump.getAhatSnapshot();
- AhatInstance referent = dump.getDumpedAhatInstance("anObject");
- for (NativeAllocation alloc : snapshot.getNativeAllocations()) {
- if (alloc.referent.equals(referent)) {
- assertEquals(42 , alloc.size);
- assertEquals(referent.getHeap(), alloc.heap);
- assertEquals(0xABCDABCD , alloc.pointer);
- return;
- }
- }
- fail("No native allocation found with anObject as the referent");
- }
-}
-