summaryrefslogtreecommitdiffstats
path: root/support
diff options
context:
space:
mode:
authorPaul Duffin <paulduffin@google.com>2014-05-02 10:58:43 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-05-02 10:58:43 +0000
commit5c727bda02e78806081a0e874cd6ee4d4ed06d2b (patch)
treee0e1f6649e4a018e2851d5db144a0d440e845daa /support
parent3ccc8c748c1d70dd419013242794fb9946648091 (diff)
parentc3eed594ffd6b488b5771cd1e6a9a4c44aa0826b (diff)
downloadlibcore-5c727bda02e78806081a0e874cd6ee4d4ed06d2b.tar.gz
libcore-5c727bda02e78806081a0e874cd6ee4d4ed06d2b.tar.bz2
libcore-5c727bda02e78806081a0e874cd6ee4d4ed06d2b.zip
am c3eed594: am f6696d69: am eec4356c: Merge "Improve detection of CloseGuard protected resource leakage"
* commit 'c3eed594ffd6b488b5771cd1e6a9a4c44aa0826b': Improve detection of CloseGuard protected resource leakage
Diffstat (limited to 'support')
-rw-r--r--support/src/test/java/libcore/dalvik/system/CloseGuardTester.java68
1 files changed, 0 insertions, 68 deletions
diff --git a/support/src/test/java/libcore/dalvik/system/CloseGuardTester.java b/support/src/test/java/libcore/dalvik/system/CloseGuardTester.java
deleted file mode 100644
index e82d33d06..000000000
--- a/support/src/test/java/libcore/dalvik/system/CloseGuardTester.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (C) 2010 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 libcore.dalvik.system;
-
-import dalvik.system.CloseGuard;
-import java.io.Closeable;
-import java.io.IOException;
-import java.util.List;
-import java.util.concurrent.CopyOnWriteArrayList;
-import java.util.logging.ConsoleHandler;
-import java.util.logging.Handler;
-import java.util.logging.LogRecord;
-import java.util.logging.Logger;
-import junit.framework.Assert;
-import libcore.java.lang.ref.FinalizationTester;
-
-public final class CloseGuardTester implements Closeable {
-
- private final List<LogRecord> logRecords = new CopyOnWriteArrayList<LogRecord>();
- private final Logger logger = Logger.getLogger(CloseGuard.class.getName());
-
- private final Handler logWatcher = new Handler() {
- @Override public void close() {}
- @Override public void flush() {}
- @Override public void publish(LogRecord record) {
- logRecords.add(record);
- }
- };
-
- public CloseGuardTester() {
- /*
- * Collect immediately before we start monitoring the CloseGuard logs.
- * This lowers the chance that we'll report an unrelated leak.
- */
- FinalizationTester.induceFinalization();
- logger.addHandler(logWatcher);
- }
-
- public void assertEverythingWasClosed() {
- FinalizationTester.induceFinalization();
-
- if (!logRecords.isEmpty()) {
- // print the log records with the output of this test
- for (LogRecord leak : logRecords) {
- new ConsoleHandler().publish(leak);
- }
- Assert.fail("CloseGuard detected unclosed resources!");
- }
- }
-
- @Override public void close() throws IOException {
- Logger.getLogger(CloseGuard.class.getName()).removeHandler(logWatcher);
- }
-}