package org.needle4j.injection.cdi.instance; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.CoreMatchers.not; import static org.hamcrest.CoreMatchers.nullValue; import static org.junit.Assert.assertThat; import static org.mockito.Mockito.when; import static org.needle4j.junit.NeedleBuilders.needleRule; import javax.enterprise.inject.Instance; import javax.inject.Inject; import org.junit.Ignore; import org.junit.Rule; import org.junit.Test; import org.needle4j.annotation.Mock; import org.needle4j.junit.NeedleRule; @Ignore public class InjectMockForInstanceTest { @Rule public final NeedleRule needle = needleRule("needle-mockito").build(); @Inject private Instance<InstanceTestBean> testBeanInstance; @Mock private InstanceTestBean testBean; @Test public void shouldInjectMockInstance() throws Exception { when(testBean.toString()).thenReturn("foo"); assertThat(testBeanInstance, not(nullValue())); assertThat(testBeanInstance.get(), not(nullValue())); assertThat(testBeanInstance.toString(), is("foo")); } }