use of org.jboss.weld.environment.se.test.builder.alphas.betas.Beta2 in project core by weld.
the class WeldBuilderTest method testSyntheticBeanArchivePackages.
@Test
public void testSyntheticBeanArchivePackages() throws Exception {
Weld weld = new Weld().disableDiscovery();
try (WeldContainer container = weld.packages(Alpha1.class).initialize()) {
assertEquals(1, container.select(Alpha1.class).get().getVal());
assertEquals(2, container.select(Alpha2.class).get().getVal());
assertTrue(container.select(Beta1.class).isUnsatisfied());
assertTrue(container.select(Beta2.class).isUnsatisfied());
}
try (WeldContainer container = weld.reset().addPackage(true, Alpha2.class).initialize()) {
assertEquals(1, container.select(Alpha1.class).get().getVal());
assertEquals(2, container.select(Alpha2.class).get().getVal());
assertEquals(11, container.select(Beta1.class).get().getVal());
assertEquals(22, container.select(Beta2.class).get().getVal());
}
try (WeldContainer container = weld.reset().addPackages(true, Beta1.class).initialize()) {
assertTrue(container.select(Alpha1.class).isUnsatisfied());
assertTrue(container.select(Alpha2.class).isUnsatisfied());
assertEquals(11, container.select(Beta1.class).get().getVal());
assertEquals(22, container.select(Beta2.class).get().getVal());
}
// Scan the package from cdi-api.jar
try (WeldContainer container = weld.reset().packages(ObserverException.class).initialize()) {
assertFalse(container.select(ObserverException.class).isUnsatisfied());
}
// Scan the package recursively from cdi-api.jar
try (WeldContainer container = weld.reset().addPackage(true, Any.class).initialize()) {
// There is no managed bean discovered, therefore we only check the the bean class was found
boolean found = false;
for (BeanDeploymentArchive beanDeploymentArchive : Container.instance(container.getId()).beanDeploymentArchives().keySet()) {
if (beanDeploymentArchive.getBeanClasses().contains(DefinitionException.class.getName())) {
found = true;
break;
}
}
assertTrue(found);
}
}
Aggregations