LazilyInstantiate implements Supplier<T> { public static <T> LazilyInstantiate<T> using(Supplier<T> supplier) { return new LazilyInstantiate<T>(supplier); } private  LazilyInstantiate(Supplier<T> supplier); static LazilyInstantiate<T> using(Supplier<T> supplier); synchronized T get();  }
@Test public void supplierNotCalledInLazyInstantiateFactoryMethod() { LazilyInstantiate.using(this.mockSupplier); verifyNoInteractions(this.mockSupplier); }