X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=support%2Fgeneral%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fgeneral%2FThreadSpecificProxyFactoryTest.java;h=bbb395090f0a49351595d24a6284c208a9366be1;hb=8d9d3071eebb9a14a1ebd44294d7f4c1acb41ac1;hp=310e47a75626aaf14bcd031aefb7c16ef8466bd5;hpb=86b68ca4594c43d09ca57f8a2f9522c604c76f1d;p=utils diff --git a/support/general/src/test/java/org/wamblee/general/ThreadSpecificProxyFactoryTest.java b/support/general/src/test/java/org/wamblee/general/ThreadSpecificProxyFactoryTest.java index 310e47a7..bbb39509 100644 --- a/support/general/src/test/java/org/wamblee/general/ThreadSpecificProxyFactoryTest.java +++ b/support/general/src/test/java/org/wamblee/general/ThreadSpecificProxyFactoryTest.java @@ -23,6 +23,7 @@ import org.junit.After; import org.junit.Before; import org.junit.Test; import org.wamblee.general.ThreadSpecificProxyFactory; +import org.wamblee.general.ThreadSpecificProxyFactory.CreationCallback; public class ThreadSpecificProxyFactoryTest { @@ -57,6 +58,20 @@ public class ThreadSpecificProxyFactoryTest { assertEquals(50, proxy.execute(10)); verify(svc).execute(10); } + + @Test + public void testCreationCallback() throws Exception { + CreationCallback callback = mock(CreationCallback.class); + Service initialService = mock(Service.class); + when(callback.create()).thenReturn(initialService); + + factory = new ThreadSpecificProxyFactory(Service.class, callback); + proxy = factory.getProxy(); + Service svc = factory.get(); + + assertSame(initialService, svc); + verify(callback).create(); + } @Test public void testInvokeThroughProxyWithException() throws Exception { @@ -104,4 +119,9 @@ public class ThreadSpecificProxyFactoryTest { public void testNotAnInterface() { ThreadSpecificProxyFactory f = new ThreadSpecificProxyFactory(String.class); } + + @Test + public void testProxyToStringWhileUninitialized() { + String val = proxy.toString(); + } }