1 16 17 package com.google.inject.util; 18 19 import junit.framework.TestCase; 20 21 24 public class FinalizableReferenceQueueTest extends TestCase { 25 26 public void testFinalizeReferentCalled() { 27 MockReference reference = new MockReference(); 28 reference.enqueue(); 29 for (int i = 0; i < 50; i++) { 31 if (reference.finalizeReferentCalled) { 32 return; 33 } 34 try { 35 Thread.sleep(10); 36 } catch (InterruptedException e) { } 37 } 38 fail(); 39 } 40 41 static class MockReference extends FinalizableWeakReference<Object > { 42 43 boolean finalizeReferentCalled; 44 45 MockReference() { 46 super(new Object ()); 47 } 48 49 public void finalizeReferent() { 50 finalizeReferentCalled = true; 51 } 52 } 53 } 54 | Popular Tags |