package test.ioc; import com.firefly.core.ApplicationContext; import com.firefly.core.XmlApplicationContext; import org.junit.Assert; import org.junit.Test; import test.component.FieldInject; import test.component.MethodInject; import test.component2.MethodInject2; import static org.hamcrest.Matchers.is; public class TestAnnotationIoc { private static ApplicationContext app = new XmlApplicationContext("annotation-config.xml"); @Test public void testFieldInject() { FieldInject fieldInject = app.getBean("fieldInject"); Assert.assertThat(fieldInject.add(5, 4), is(9)); Assert.assertThat(fieldInject.add2(5, 4), is(9)); fieldInject = app.getBean(FieldInject.class); Assert.assertThat(fieldInject.add(5, 4), is(9)); Assert.assertThat(fieldInject.add2(5, 4), is(9)); } @Test public void testMethodInject() { MethodInject m = app.getBean("methodInject"); Assert.assertThat(m.add(5, 4), is(9)); m = app.getBean(MethodInject.class); Assert.assertThat(m.add(5, 5), is(10)); } @Test public void testMethodInject2() { MethodInject2 m = app.getBean("methodInject2"); Assert.assertThat(m.add(5, 5), is(10)); Assert.assertThat(m.getNum(), is(3)); Assert.assertThat(true, is(m.isInitial())); } }