Package org.jboss.weld.junit5
Class WeldInitiator
java.lang.Object
org.jboss.weld.junit.AbstractWeldInitiator
org.jboss.weld.junit5.WeldInitiator
JUnit 5 initiator - can be used to customize the Weld SE container started by
WeldJunit5Extension.
Example:
@ExtendWith(WeldJunit5Extension.class)
public class SimpleTest {
@WeldSetup
public WeldInitiator weld = WeldInitiator.of(Foo.class);
@Test
public void testFoo() {
// Weld container is started automatically
// WeldInitiator can be used to perform programmatic lookup of beans
assertEquals("baz", weld.select(Foo.class).get().getBaz());
}
}
- Author:
- Matej Novotny
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classThis builder can be used to customize the finalWeldInitiatorinstance, e.g. to activate a context for a given normal scope.Nested classes/interfaces inherited from class org.jboss.weld.junit.AbstractWeldInitiator
AbstractWeldInitiator.AbstractBuilder<I extends AbstractWeldInitiator,T extends AbstractWeldInitiator.AbstractBuilder<I, T>>, AbstractWeldInitiator.ToInject Nested classes/interfaces inherited from interface jakarta.enterprise.inject.Instance
Instance.Handle<T extends Object> -
Field Summary
Fields inherited from class org.jboss.weld.junit.AbstractWeldInitiator
beans, container, extension, instancesToInject, scopesToActivate, weld -
Method Summary
Modifier and TypeMethodDescriptionstatic WeldThe returnedWeldinstance has: automatic discovery disabled concurrent deployment disabledstatic WeldInitiator.BuilderCreate a builder instance.static WeldInitiator.BuilderCreate a builder instance.static WeldInitiator.BuilderCreate a builder instance.static WeldInitiatorThe container is configured with the result ofcreateWeld()method and the given bean classes are added.static WeldInitiatorThe container is configured through a providedWeldinstance.static WeldInitiatorThe container is configured with the result ofcreateWeld()method and all the classes from the test class package are added.static WeldInitiatorThe container is instructed to do automatic bean discovery, the resulting bean archive is NOT synthetic.Methods inherited from class org.jboss.weld.junit.AbstractWeldInitiator
container, createToInject, destroy, event, get, getBeanManager, getHandle, getId, handles, initWeldContainer, injectInstances, injectNonContextual, isAmbiguous, isRunning, isUnsatisfied, iterator, releaseInstances, select, select, select, shutdown, shutdownWeldContainerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface jakarta.enterprise.inject.Instance
handlesStream, isResolvable, streamMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
of
The container is configured with the result ofcreateWeld()method and the given bean classes are added. If any of added classes is an extension, it is automatically recognized and enabled.- Parameters:
beanClasses-- Returns:
- a new WeldInitiator instance
- See Also:
-
of
The container is configured through a providedWeldinstance.Provided instance of
Weldshould be kept in the same scope as the resultingWeldInitiator. I.e. ifWeldinstance is kept in a static field, so should be the resultingWeldInitiator. Failing to uphold this can lead to repetitive configuration of the sameWeldinstance which in turn results in unexpected container setup/behavior.- Parameters:
weld- instance ofWeldused to createWeldInitiator- Returns:
- a new WeldInitiator instance
-
ofTestPackage
The container is configured with the result ofcreateWeld()method and all the classes from the test class package are added.- Returns:
- a new WeldInitiator instance
-
performDefaultDiscovery
The container is instructed to do automatic bean discovery, the resulting bean archive is NOT synthetic. Note that this requires beans.xml to be present. It is equals toWeldInitiator.of(new Weld())invocation.- Returns:
- a new WeldInitiator instance
-
from
Create a builder instance.- Parameters:
beanClasses-- Returns:
- a builder instance
- See Also:
-
from
Create a builder instance.Provided instance of
Weldshould be kept in the same scope as the resultingWeldInitiator. I.e. ifWeldinstance is kept in a static field, so should be the resultingWeldInitiator. Failing to uphold this can lead to repetitive configuration of the sameWeldinstance which in turn results in unexpected container setup/behavior.- Parameters:
weld- instance ofWeldused as a basis for thisWeldInitiator.Builder- Returns:
- a builder instance
- See Also:
-
fromTestPackage
Create a builder instance.- Returns:
- a builder instance
- See Also:
-
createWeld
The returnedWeldinstance has:- automatic discovery disabled
- concurrent deployment disabled
- Returns:
- a new
Weldinstance suitable for testing - See Also:
-