ForwardReferenceProxy { public T get() { return proxySupplier.get(); } ForwardReferenceProxy(Class<T> clazz); ForwardReferenceProxy<T> setInstance(T instance); T get();  }
@Test(expectedExceptions = NullPointerException.class) public void testInstanceNotSet() throws Exception { TestFunction testFunction = proxy.get(); testFunction.apply("don't care"); }
@Test public void testPartialProxy() throws Exception { TestFunction testFunction = proxy.get(); Assert.assertNotNull(testFunction); }