Package kalix.springsdk.testkit
Class ValueEntityTestKit<S,E extends kalix.javasdk.valueentity.ValueEntity<S>>
- Object
-
- kalix.springsdk.testkit.ValueEntityTestKit<S,E>
-
public class ValueEntityTestKit<S,E extends kalix.javasdk.valueentity.ValueEntity<S>> extends ObjectValueEntity Testkit for use in unit tests for Value entities.To test a ValueEntity create a testkit instance by calling one of the available
ValueEntityTestKit.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.ValueEntityResult<R>call(java.util.function.Function<E,kalix.javasdk.valueentity.ValueEntity.Effect<R>> func)The call method can be used to simulate a call to the ValueEntity.SgetState()static <S,E extends kalix.javasdk.valueentity.ValueEntity<S>>
ValueEntityTestKit<S,E>of(String entityId, java.util.function.Function<kalix.javasdk.valueentity.ValueEntityContext,E> entityFactory)Creates a new testkit instance from a user defined entity id and a function ValueEntityContext to ValueEntity.static <S,E extends kalix.javasdk.valueentity.ValueEntity<S>>
ValueEntityTestKit<S,E>of(String entityId, java.util.function.Supplier<E> entityFactory)Creates a new testkit instance from a user defined entity id and a ValueEntity Supplier.static <S,E extends kalix.javasdk.valueentity.ValueEntity<S>>
ValueEntityTestKit<S,E>of(java.util.function.Function<kalix.javasdk.valueentity.ValueEntityContext,E> entityFactory)Creates a new testkit instance from a function ValueEntityContext to ValueEntity.static <S,E extends kalix.javasdk.valueentity.ValueEntity<S>>
ValueEntityTestKit<S,E>of(java.util.function.Supplier<E> entityFactory)Creates a new testkit instance from a ValueEntity Supplier.
-
-
-
Method Detail
-
of
public static <S,E extends kalix.javasdk.valueentity.ValueEntity<S>> ValueEntityTestKit<S,E> of(java.util.function.Supplier<E> entityFactory)
Creates a new testkit instance from a ValueEntity Supplier.A default test entity id will be automatically provided.
-
of
public static <S,E extends kalix.javasdk.valueentity.ValueEntity<S>> ValueEntityTestKit<S,E> of(java.util.function.Function<kalix.javasdk.valueentity.ValueEntityContext,E> entityFactory)
Creates a new testkit instance from a function ValueEntityContext to ValueEntity.A default test entity id will be automatically provided.
-
of
public static <S,E extends kalix.javasdk.valueentity.ValueEntity<S>> ValueEntityTestKit<S,E> of(String entityId, java.util.function.Supplier<E> entityFactory)
Creates a new testkit instance from a user defined entity id and a ValueEntity Supplier.
-
of
public static <S,E extends kalix.javasdk.valueentity.ValueEntity<S>> ValueEntityTestKit<S,E> of(String entityId, java.util.function.Function<kalix.javasdk.valueentity.ValueEntityContext,E> entityFactory)
Creates a new testkit instance from a user defined entity id and a function ValueEntityContext to ValueEntity.
-
getState
public S getState()
- Returns:
- The current state of the value entity under test
-
call
public <R> kalix.javasdk.testkit.ValueEntityResult<R> call(java.util.function.Function<E,kalix.javasdk.valueentity.ValueEntity.Effect<R>> func)
The call method can be used to simulate a call to the ValueEntity. The passed java lambda should return a ValueEntity.Effect. The Effect is interpreted into a ValueEntityResult 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 ValueEntity to ValueEntity.Effect.- Returns:
- a ValueEntityResult
-
-