Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1744)

Unified Diff: content/public/android/javatests/src/org/chromium/content/common/CleanupReferenceTest.java

Issue 141533006: [Android] Move the java content/ package to content_public/ to start the split. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Small fixes and findbugs line update Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/public/android/javatests/src/org/chromium/content/common/CleanupReferenceTest.java
diff --git a/content/public/android/javatests/src/org/chromium/content/common/CleanupReferenceTest.java b/content/public/android/javatests/src/org/chromium/content/common/CleanupReferenceTest.java
deleted file mode 100644
index 6f56449195e530d9c50cfec672bce130a4831a69..0000000000000000000000000000000000000000
--- a/content/public/android/javatests/src/org/chromium/content/common/CleanupReferenceTest.java
+++ /dev/null
@@ -1,97 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.content.common;
-
-import android.test.InstrumentationTestCase;
-import android.test.suitebuilder.annotation.SmallTest;
-
-import org.chromium.base.test.util.Feature;
-import org.chromium.content.browser.test.util.Criteria;
-import org.chromium.content.browser.test.util.CriteriaHelper;
-
-import java.util.concurrent.atomic.AtomicInteger;
-
-public class CleanupReferenceTest extends InstrumentationTestCase {
-
- private static AtomicInteger sObjectCount = new AtomicInteger();
-
- private static class ReferredObject {
-
- private CleanupReference mRef;
-
- // Remember: this MUST be a static class, to avoid an implicit ref back to the
- // owning ReferredObject instance which would defeat GC of that object.
- private static class DestroyRunnable implements Runnable {
- @Override
- public void run() {
- sObjectCount.decrementAndGet();
- }
- };
-
- public ReferredObject() {
- sObjectCount.incrementAndGet();
- mRef = new CleanupReference(this, new DestroyRunnable());
- }
- }
-
- @Override
- public void setUp() throws Exception {
- super.setUp();
- sObjectCount.set(0);
- }
-
- private void collectGarbage() {
- // While this is only a 'hint' to the VM, it's generally effective and sufficient on
- // dalvik. If this changes in future, maybe try allocating a few gargantuan objects
- // too, to force the GC to work.
- System.gc();
- }
-
- @SmallTest
- @Feature({"AndroidWebView"})
- public void testCreateSingle() throws Throwable {
- assertEquals(0, sObjectCount.get());
-
- ReferredObject instance = new ReferredObject();
- assertEquals(1, sObjectCount.get());
-
- instance = null;
- // Ensure compiler / instrumentation does not strip out the assignment.
- assertTrue(instance == null);
- collectGarbage();
- assertTrue(CriteriaHelper.pollForCriteria(new Criteria() {
- @Override
- public boolean isSatisfied() {
- return sObjectCount.get() == 0;
- }
- }));
- }
-
- @SmallTest
- @Feature({"AndroidWebView"})
- public void testCreateMany() throws Throwable {
- assertEquals(0, sObjectCount.get());
-
- final int INSTANCE_COUNT = 20;
- ReferredObject[] instances = new ReferredObject[INSTANCE_COUNT];
-
- for (int i = 0; i < INSTANCE_COUNT; ++i) {
- instances[i] = new ReferredObject();
- assertEquals(i + 1, sObjectCount.get());
- }
-
- instances = null;
- // Ensure compiler / instrumentation does not strip out the assignment.
- assertTrue(instances == null);
- collectGarbage();
- assertTrue(CriteriaHelper.pollForCriteria(new Criteria() {
- @Override
- public boolean isSatisfied() {
- return sObjectCount.get() == 0;
- }
- }));
- }
-
-}

Powered by Google App Engine
This is Rietveld 408576698