@Test void testWiringMethodArguments() { PetiteContainer pc = new PetiteContainer(); pc.config().setDefaultWiringMode(WiringMode.OPTIONAL); PetiteRegistry petiteRegistry = pc.createContainerRegistry(); petiteRegistry.bean(DaDrum.class).register(); petiteRegistry.bean(Guitar.class).register(); petiteRegistry.bean(TheBand.class).register(); TheBand theBand = pc.getBean(TheBand.class); assertTrue(theBand.isBandReady()); } }
@Test void testOptionalAndNotAllReferences() { PetiteContainer pc = new PetiteContainer(); pc.config().setDefaultWiringMode(WiringMode.OPTIONAL); pc.config().setUseFullTypeNames(false); pc.config().setLookupReferences(PetiteReferenceType.NAME); registerBean(pc, Koo.class); registerBean(pc, Joo.class); assertEquals(2, pc.beansCount()); Koo koo = pc.getBean(Koo.class); assertNotNull(koo); Joo joo = pc.getBean(Joo.class); assertNotNull(joo); assertNull(koo.someNoJooName); assertNotNull(koo.joo); koo = pc.getBean(Koo.class.getName()); assertNull(koo); joo = pc.getBean(Joo.class.getName()); assertNull(joo); } }
@Test void testCount() { PetiteContainer pc = new PetiteContainer(); pc.registerPetiteBean(Moo.class, null, null, null, false, null); pc.registerPetiteBean(Joo.class, null, null, null, false, null); Moo moo = pc.getBean(Moo.class); assertNotNull(moo.joo); assertNull(moo.jooNo); BeanDefinition bd = pc.lookupBeanDefinition("moo"); assertEquals(1, bd.properties.length); pc = new PetiteContainer(); pc.config().setDefaultWiringMode(WiringMode.AUTOWIRE); pc.registerPetiteBean(Moo.class, null, null, null, false, null); pc.registerPetiteBean(Joo.class, null, null, null, false, null); moo = pc.getBean(Moo.class); assertNotNull(moo.joo); assertNotNull(moo.jooNo); assertEquals(moo.joo, moo.jooNo); bd = pc.lookupBeanDefinition("moo"); assertEquals(2, bd.properties.length); }
@Test void testAutowire() { PetiteContainer pc = new PetiteContainer(); pc.registerPetiteBean(Goo.class, null, ProtoScope.class, null, false, null); pc.registerPetiteBean(Loo.class, null, null, null, false, null); assertEquals(2, pc.beansCount()); Goo goo = pc.getBean("goo"); assertNotNull(goo); assertNotNull(goo.looCustom); assertNull(goo.foo); pc.registerPetiteBean(Foo.class, null, null, null, false, null); goo = pc.getBean("goo"); assertNotNull(goo); assertNotNull(goo.looCustom); assertNull(goo.foo); pc = new PetiteContainer(); pc.config().setDefaultWiringMode(WiringMode.AUTOWIRE); pc.registerPetiteBean(Goo.class, null, ProtoScope.class, null, false, null); pc.registerPetiteBean(Loo.class, null, null, null, false, null); pc.registerPetiteBean(Foo.class, null, null, null, false, null); goo = pc.getBean("goo"); assertNotNull(goo); assertNotNull(goo.looCustom); assertNotNull(goo.foo); pc.removeBean(Goo.class); }