Package kalix.springsdk.testkit
Class EventSourcedTestKit<S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>>
- Object
-
- kalix.javasdk.testkit.impl.EventSourcedEntityEffectsRunner<S>
-
- kalix.springsdk.testkit.EventSourcedTestKit<S,E>
-
public class EventSourcedTestKit<S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>> extends kalix.javasdk.testkit.impl.EventSourcedEntityEffectsRunner<S>EventSourced Testkit for use in unit tests for EventSourced entities.To test a EventSourced create a testkit instance by calling one of the available
EventSourcedTestKit.ofmethods. The returned testkit is stateful, and it holds internally the state of the entity.Use the
callmethods to interact with the testkit.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <R> kalix.javasdk.testkit.EventSourcedResult<R>call(java.util.function.Function<E,kalix.javasdk.eventsourcedentity.EventSourcedEntity.Effect<R>> func)The call method can be used to simulate a call to the EventSourcedEntity.protected ShandleEvent(S state, Object event)static <S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>>
EventSourcedTestKit<S,E>of(String entityId, java.util.function.Function<kalix.javasdk.eventsourcedentity.EventSourcedEntityContext,E> entityFactory)Creates a new testkit instance from a user defined entity id and a function EventSourcedEntityContext to EventSourcedEntity.static <S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>>
EventSourcedTestKit<S,E>of(String entityId, java.util.function.Supplier<E> entityFactory)Creates a new testkit instance from a user defined entity id and an EventSourcedEntity Supplier.static <S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>>
EventSourcedTestKit<S,E>of(java.util.function.Function<kalix.javasdk.eventsourcedentity.EventSourcedEntityContext,E> entityFactory)Creates a new testkit instance from a function EventSourcedEntityContext to EventSourcedEntity.static <S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>>
EventSourcedTestKit<S,E>of(java.util.function.Supplier<E> entityFactory)Creates a new testkit instance from a EventSourcedEntity Supplier.
-
-
-
Method Detail
-
of
public static <S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>> EventSourcedTestKit<S,E> of(java.util.function.Supplier<E> entityFactory)
Creates a new testkit instance from a EventSourcedEntity Supplier.A default test entity id will be automatically provided.
-
of
public static <S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>> EventSourcedTestKit<S,E> of(java.util.function.Function<kalix.javasdk.eventsourcedentity.EventSourcedEntityContext,E> entityFactory)
Creates a new testkit instance from a function EventSourcedEntityContext to EventSourcedEntity.A default test entity id will be automatically provided.
-
of
public static <S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>> EventSourcedTestKit<S,E> of(String entityId, java.util.function.Supplier<E> entityFactory)
Creates a new testkit instance from a user defined entity id and an EventSourcedEntity Supplier.
-
of
public static <S,E extends kalix.javasdk.eventsourcedentity.EventSourcedEntity<S>> EventSourcedTestKit<S,E> of(String entityId, java.util.function.Function<kalix.javasdk.eventsourcedentity.EventSourcedEntityContext,E> entityFactory)
Creates a new testkit instance from a user defined entity id and a function EventSourcedEntityContext to EventSourcedEntity.
-
call
public <R> kalix.javasdk.testkit.EventSourcedResult<R> call(java.util.function.Function<E,kalix.javasdk.eventsourcedentity.EventSourcedEntity.Effect<R>> func)
The call method can be used to simulate a call to the EventSourcedEntity. The passed java lambda should return an EventSourcedEntity.Effect. The Effect is interpreted into an EventSourcedResult that can be used in test assertions.- Type Parameters:
R- The type of reply that is expected from invoking a command handler- Parameters:
func- A function from EventSourcedEntity to EventSourcedEntity.Effect.- Returns:
- a EventSourcedResult
-
-