Class TestSubscriber.ManualProbe<I>
- java.lang.Object
-
- akka.stream.testkit.TestSubscriber.ManualProbe<I>
-
- All Implemented Interfaces:
org.reactivestreams.Subscriber<I>
- Direct Known Subclasses:
TestSubscriber.Probe
- Enclosing class:
- TestSubscriber
public static class TestSubscriber.ManualProbe<I> extends java.lang.Object implements org.reactivestreams.Subscriber<I>
Expect and return aSubscription
.
-
-
Constructor Summary
Constructors Constructor Description ManualProbe(ActorSystem system)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description TestSubscriber.ManualProbe
expectComplete()
Fluent DSLjava.lang.Throwable
expectError()
Expect and return the signalledThrowable
.TestSubscriber.ManualProbe
expectError(java.lang.Throwable cause)
Fluent DSLTestSubscriber.SubscriberEvent
expectEvent()
Expect and returnTestSubscriber.SubscriberEvent
(any of:OnSubscribe
,OnNext
,OnError
orOnComplete
).TestSubscriber.ManualProbe
expectEvent(TestSubscriber.SubscriberEvent event)
Fluent DSLTestSubscriber.SubscriberEvent
expectEvent(scala.concurrent.duration.FiniteDuration max)
Expect and returnTestSubscriber.SubscriberEvent
(any of:OnSubscribe
,OnNext
,OnError
orOnComplete
).<T> T
expectEventPF(scala.PartialFunction<TestSubscriber.SubscriberEvent,T> f)
<T> T
expectEventWithTimeoutPF(scala.concurrent.duration.Duration max, scala.PartialFunction<TestSubscriber.SubscriberEvent,T> f)
I
expectNext()
Expect and return a stream element.TestSubscriber.ManualProbe
expectNext(I element)
Fluent DSLTestSubscriber.ManualProbe
expectNext(I e1, I e2, java.lang.Object... es)
Fluent DSLTestSubscriber.ManualProbe
expectNext(I e1, I e2, scala.collection.Seq<I> es)
Fluent DSLI
expectNext(scala.concurrent.duration.FiniteDuration d)
Expect and return a stream element during specified time or timeout.TestSubscriber.ManualProbe
expectNext(scala.concurrent.duration.FiniteDuration d, I element)
Fluent DSLTestSubscriber.ManualProbe
expectNextChainingPF(scala.concurrent.duration.Duration max, scala.PartialFunction<java.lang.Object,java.lang.Object> f)
Expect a stream element during specified time or timeout and test it with partial function.TestSubscriber.ManualProbe
expectNextChainingPF(scala.PartialFunction<java.lang.Object,java.lang.Object> f)
Expect a stream element during specified time or timeout and test it with partial function.scala.collection.immutable.Seq<I>
expectNextN(long n)
Expect and return the nextn
stream elements.TestSubscriber.ManualProbe
expectNextN(scala.collection.immutable.Seq<I> all)
Fluent DSL Expect the given elements to be signalled in order.scala.util.Either<TestSubscriber.OnComplete$,I>
expectNextOrComplete()
Expect next element or stream completion - returning whichever was signalled.TestSubscriber.ManualProbe
expectNextOrComplete(I element)
Fluent DSLscala.util.Either<java.lang.Throwable,I>
expectNextOrError()
Fluent DSLscala.util.Either<java.lang.Throwable,I>
expectNextOrError(I element, java.lang.Throwable cause)
Fluent DSL Expect given next element or error signal.<T> T
expectNextPF(scala.PartialFunction<java.lang.Object,T> f)
Expect a stream element and test it with partial function.TestSubscriber.ManualProbe
expectNextUnordered(I e1, I e2, java.lang.Object... es)
Fluent DSLTestSubscriber.ManualProbe
expectNextUnordered(I e1, I e2, scala.collection.Seq<I> es)
Fluent DSLTestSubscriber.ManualProbe
expectNextUnorderedN(scala.collection.immutable.Seq<I> all)
Fluent DSL Expect the given elements to be signalled in any order.<T> T
expectNextWithTimeoutPF(scala.concurrent.duration.Duration max, scala.PartialFunction<java.lang.Object,T> f)
Expect a stream element and test it with partial function.TestSubscriber.ManualProbe
expectNoMessage(java.time.Duration remaining)
Java API: Assert that no message is received for the specified time.TestSubscriber.ManualProbe
expectNoMessage(scala.concurrent.duration.FiniteDuration remaining)
Fluent DSLTestSubscriber.ManualProbe
expectNoMsg()
Deprecated.Use expectNoMessage instead.TestSubscriber.ManualProbe
expectNoMsg(scala.concurrent.duration.FiniteDuration remaining)
Deprecated.Use expectNoMessage instead.org.reactivestreams.Subscription
expectSubscription()
Expect and return aSubscription
.TestSubscriber.ManualProbe
expectSubscriptionAndComplete()
Fluent DSLTestSubscriber.ManualProbe
expectSubscriptionAndComplete(boolean signalDemand)
Fluent DSLjava.lang.Throwable
expectSubscriptionAndError()
Expect subscription to be followed immediately by an error signal.java.lang.Throwable
expectSubscriptionAndError(boolean signalDemand)
Expect subscription to be followed immediately by an error signal.TestSubscriber.ManualProbe
expectSubscriptionAndError(java.lang.Throwable cause)
Fluent DSLTestSubscriber.ManualProbe
expectSubscriptionAndError(java.lang.Throwable cause, boolean signalDemand)
Fluent DSLvoid
onComplete()
void
onError(java.lang.Throwable cause)
void
onNext(I element)
void
onSubscribe(org.reactivestreams.Subscription subscription)
<T> scala.collection.immutable.Seq<T>
receiveWhile(scala.concurrent.duration.Duration max, scala.concurrent.duration.Duration idle, int messages, scala.PartialFunction<TestSubscriber.SubscriberEvent,T> f)
Receive messages for a given duration or until one does not match a given partial function.<T> scala.concurrent.duration.Duration
receiveWhile$default$1()
<T> scala.concurrent.duration.Duration
receiveWhile$default$2()
<T> int
receiveWhile$default$3()
scala.collection.immutable.Seq<I>
receiveWithin(scala.concurrent.duration.FiniteDuration max, int messages)
Drains a given number of messagesint
receiveWithin$default$2()
scala.collection.immutable.Seq<I>
toStrict(scala.concurrent.duration.FiniteDuration atMost)
Attempt to drain the stream into a strict collection (by requestingLong.MaxValue
elements).<T> T
within(scala.concurrent.duration.FiniteDuration min, scala.concurrent.duration.FiniteDuration max, scala.Function0<T> f)
Execute code block while bounding its execution time betweenmin
andmax
.<T> T
within(scala.concurrent.duration.FiniteDuration max, scala.Function0<T> f)
Same as callingwithin(0 seconds, max)(f)
.
-
-
-
Constructor Detail
-
ManualProbe
public ManualProbe(ActorSystem system)
-
-
Method Detail
-
expectComplete
public TestSubscriber.ManualProbe expectComplete()
Fluent DSLExpect completion.
- Returns:
- (undocumented)
-
expectError
public java.lang.Throwable expectError()
Expect and return the signalledThrowable
.- Returns:
- (undocumented)
-
expectError
public TestSubscriber.ManualProbe expectError(java.lang.Throwable cause)
Fluent DSLExpect given
Throwable
.- Parameters:
cause
- (undocumented)- Returns:
- (undocumented)
-
expectEvent
public TestSubscriber.SubscriberEvent expectEvent()
Expect and returnTestSubscriber.SubscriberEvent
(any of:OnSubscribe
,OnNext
,OnError
orOnComplete
).- Returns:
- (undocumented)
-
expectEvent
public TestSubscriber.SubscriberEvent expectEvent(scala.concurrent.duration.FiniteDuration max)
Expect and returnTestSubscriber.SubscriberEvent
(any of:OnSubscribe
,OnNext
,OnError
orOnComplete
).- Parameters:
max
- (undocumented)- Returns:
- (undocumented)
-
expectEvent
public TestSubscriber.ManualProbe expectEvent(TestSubscriber.SubscriberEvent event)
Fluent DSLExpect
TestSubscriber.SubscriberEvent
(any of:OnSubscribe
,OnNext
,OnError
orOnComplete
).- Parameters:
event
- (undocumented)- Returns:
- (undocumented)
-
expectEventPF
public <T> T expectEventPF(scala.PartialFunction<TestSubscriber.SubscriberEvent,T> f)
-
expectEventWithTimeoutPF
public <T> T expectEventWithTimeoutPF(scala.concurrent.duration.Duration max, scala.PartialFunction<TestSubscriber.SubscriberEvent,T> f)
-
expectNext
public TestSubscriber.ManualProbe expectNext(I e1, I e2, java.lang.Object... es)
Fluent DSLExpect multiple stream elements.
- Parameters:
e1
- (undocumented)e2
- (undocumented)es
- (undocumented)- Returns:
- (undocumented)
-
expectNext
public I expectNext()
Expect and return a stream element.- Returns:
- (undocumented)
-
expectNext
public I expectNext(scala.concurrent.duration.FiniteDuration d)
Expect and return a stream element during specified time or timeout.- Parameters:
d
- (undocumented)- Returns:
- (undocumented)
-
expectNext
public TestSubscriber.ManualProbe expectNext(I element)
Fluent DSLExpect a stream element.
- Parameters:
element
- (undocumented)- Returns:
- (undocumented)
-
expectNext
public TestSubscriber.ManualProbe expectNext(scala.concurrent.duration.FiniteDuration d, I element)
Fluent DSLExpect a stream element during specified time or timeout.
- Parameters:
d
- (undocumented)element
- (undocumented)- Returns:
- (undocumented)
-
expectNext
public TestSubscriber.ManualProbe expectNext(I e1, I e2, scala.collection.Seq<I> es)
Fluent DSLExpect multiple stream elements.
- Parameters:
e1
- (undocumented)e2
- (undocumented)es
- (undocumented)- Returns:
- (undocumented)
-
expectNextChainingPF
public TestSubscriber.ManualProbe expectNextChainingPF(scala.concurrent.duration.Duration max, scala.PartialFunction<java.lang.Object,java.lang.Object> f)
Expect a stream element during specified time or timeout and test it with partial function.Allows chaining probe methods.
- Parameters:
max
- wait no more than max time, otherwise throw AssertionErrorf
- (undocumented)- Returns:
- (undocumented)
-
expectNextChainingPF
public TestSubscriber.ManualProbe expectNextChainingPF(scala.PartialFunction<java.lang.Object,java.lang.Object> f)
Expect a stream element during specified time or timeout and test it with partial function.Allows chaining probe methods.
- Parameters:
f
- (undocumented)- Returns:
- (undocumented)
-
expectNextN
public scala.collection.immutable.Seq<I> expectNextN(long n)
Expect and return the nextn
stream elements.- Parameters:
n
- (undocumented)- Returns:
- (undocumented)
-
expectNextN
public TestSubscriber.ManualProbe expectNextN(scala.collection.immutable.Seq<I> all)
Fluent DSL Expect the given elements to be signalled in order.- Parameters:
all
- (undocumented)- Returns:
- (undocumented)
-
expectNextOrComplete
public scala.util.Either<TestSubscriber.OnComplete$,I> expectNextOrComplete()
Expect next element or stream completion - returning whichever was signalled.- Returns:
- (undocumented)
-
expectNextOrComplete
public TestSubscriber.ManualProbe expectNextOrComplete(I element)
Fluent DSLExpect given next element or stream completion.
- Parameters:
element
- (undocumented)- Returns:
- (undocumented)
-
expectNextOrError
public scala.util.Either<java.lang.Throwable,I> expectNextOrError()
Fluent DSLExpect given next element or error signal, returning whichever was signalled.
- Returns:
- (undocumented)
-
expectNextOrError
public scala.util.Either<java.lang.Throwable,I> expectNextOrError(I element, java.lang.Throwable cause)
Fluent DSL Expect given next element or error signal.- Parameters:
element
- (undocumented)cause
- (undocumented)- Returns:
- (undocumented)
-
expectNextPF
public <T> T expectNextPF(scala.PartialFunction<java.lang.Object,T> f)
Expect a stream element and test it with partial function.- Parameters:
f
- (undocumented)- Returns:
- (undocumented)
-
expectNextUnordered
public TestSubscriber.ManualProbe expectNextUnordered(I e1, I e2, java.lang.Object... es)
Fluent DSLExpect multiple stream elements in arbitrary order.
- Parameters:
e1
- (undocumented)e2
- (undocumented)es
- (undocumented)- Returns:
- (undocumented)
-
expectNextUnordered
public TestSubscriber.ManualProbe expectNextUnordered(I e1, I e2, scala.collection.Seq<I> es)
Fluent DSLExpect multiple stream elements in arbitrary order.
- Parameters:
e1
- (undocumented)e2
- (undocumented)es
- (undocumented)- Returns:
- (undocumented)
-
expectNextUnorderedN
public TestSubscriber.ManualProbe expectNextUnorderedN(scala.collection.immutable.Seq<I> all)
Fluent DSL Expect the given elements to be signalled in any order.- Parameters:
all
- (undocumented)- Returns:
- (undocumented)
-
expectNextWithTimeoutPF
public <T> T expectNextWithTimeoutPF(scala.concurrent.duration.Duration max, scala.PartialFunction<java.lang.Object,T> f)
Expect a stream element and test it with partial function.- Parameters:
max
- wait no more than max time, otherwise throw AssertionErrorf
- (undocumented)- Returns:
- (undocumented)
-
expectNoMessage
public TestSubscriber.ManualProbe expectNoMessage(scala.concurrent.duration.FiniteDuration remaining)
Fluent DSLAssert that no message is received for the specified time.
- Parameters:
remaining
- (undocumented)- Returns:
- (undocumented)
-
expectNoMessage
public TestSubscriber.ManualProbe expectNoMessage(java.time.Duration remaining)
Java API: Assert that no message is received for the specified time.- Parameters:
remaining
- (undocumented)- Returns:
- (undocumented)
-
expectNoMsg
public TestSubscriber.ManualProbe expectNoMsg()
Deprecated.Use expectNoMessage instead. Since 2.5.5.Fluent DSLSame as
expectNoMsg(remaining)
, but correctly treating the timeFactor. NOTE! Timeout value is automatically multiplied by timeFactor.- Returns:
- (undocumented)
-
expectNoMsg
public TestSubscriber.ManualProbe expectNoMsg(scala.concurrent.duration.FiniteDuration remaining)
Deprecated.Use expectNoMessage instead. Since 2.5.5.Fluent DSLAssert that no message is received for the specified time. NOTE! Timeout value is automatically multiplied by timeFactor.
- Parameters:
remaining
- (undocumented)- Returns:
- (undocumented)
-
expectSubscription
public org.reactivestreams.Subscription expectSubscription()
Expect and return aSubscription
.- Returns:
- (undocumented)
-
expectSubscriptionAndComplete
public TestSubscriber.ManualProbe expectSubscriptionAndComplete()
Fluent DSLExpect subscription followed by immediate stream completion. By default
1
demand will be signalled in order to wake up a possibly lazy upstreamSee also {@link #expectSubscriptionAndComplete(signalDemand: Boolean)} if no demand should be signalled.
- Returns:
- (undocumented)
-
expectSubscriptionAndComplete
public TestSubscriber.ManualProbe expectSubscriptionAndComplete(boolean signalDemand)
Fluent DSLExpect subscription followed by immediate stream completion.
Depending on the
signalDemand
parameter demand may be signalled immediately after obtaining the subscription in order to wake up a possibly lazy upstream. You can disable this by setting thesignalDemand
parameter tofalse
.See also
expectSubscriptionAndComplete()
.- Parameters:
signalDemand
- (undocumented)- Returns:
- (undocumented)
-
expectSubscriptionAndError
public java.lang.Throwable expectSubscriptionAndError()
Expect subscription to be followed immediately by an error signal.By default
1
demand will be signalled in order to wake up a possibly lazy upstream.See also
#expectSubscriptionAndError(Boolean)
if no demand should be signalled.- Returns:
- (undocumented)
-
expectSubscriptionAndError
public java.lang.Throwable expectSubscriptionAndError(boolean signalDemand)
Expect subscription to be followed immediately by an error signal.Depending on the
signalDemand
parameter demand may be signalled immediately after obtaining the subscription in order to wake up a possibly lazy upstream. You can disable this by setting thesignalDemand
parameter tofalse
.See also
expectSubscriptionAndError()
.- Parameters:
signalDemand
- (undocumented)- Returns:
- (undocumented)
-
expectSubscriptionAndError
public TestSubscriber.ManualProbe expectSubscriptionAndError(java.lang.Throwable cause)
Fluent DSLExpect subscription followed by immediate stream completion.
By default
1
demand will be signalled in order to wake up a possibly lazy upstream.See also {@link #expectSubscriptionAndComplete(cause: Throwable, signalDemand: Boolean)} if no demand should be signalled.
- Parameters:
cause
- (undocumented)- Returns:
- (undocumented)
-
expectSubscriptionAndError
public TestSubscriber.ManualProbe expectSubscriptionAndError(java.lang.Throwable cause, boolean signalDemand)
Fluent DSLExpect subscription followed by immediate stream completion. By default
1
demand will be signalled in order to wake up a possibly lazy upstreamSee also {@link #expectSubscriptionAndError(cause: Throwable)}.
- Parameters:
cause
- (undocumented)signalDemand
- (undocumented)- Returns:
- (undocumented)
-
onComplete
public void onComplete()
- Specified by:
onComplete
in interfaceorg.reactivestreams.Subscriber<I>
-
onError
public void onError(java.lang.Throwable cause)
- Specified by:
onError
in interfaceorg.reactivestreams.Subscriber<I>
-
onNext
public void onNext(I element)
- Specified by:
onNext
in interfaceorg.reactivestreams.Subscriber<I>
-
onSubscribe
public void onSubscribe(org.reactivestreams.Subscription subscription)
- Specified by:
onSubscribe
in interfaceorg.reactivestreams.Subscriber<I>
-
receiveWhile
public <T> scala.collection.immutable.Seq<T> receiveWhile(scala.concurrent.duration.Duration max, scala.concurrent.duration.Duration idle, int messages, scala.PartialFunction<TestSubscriber.SubscriberEvent,T> f)
Receive messages for a given duration or until one does not match a given partial function.- Parameters:
max
- (undocumented)idle
- (undocumented)messages
- (undocumented)f
- (undocumented)- Returns:
- (undocumented)
-
receiveWhile$default$1
public <T> scala.concurrent.duration.Duration receiveWhile$default$1()
-
receiveWhile$default$2
public <T> scala.concurrent.duration.Duration receiveWhile$default$2()
-
receiveWhile$default$3
public <T> int receiveWhile$default$3()
-
receiveWithin
public scala.collection.immutable.Seq<I> receiveWithin(scala.concurrent.duration.FiniteDuration max, int messages)
Drains a given number of messages- Parameters:
max
- (undocumented)messages
- (undocumented)- Returns:
- (undocumented)
-
receiveWithin$default$2
public int receiveWithin$default$2()
-
toStrict
public scala.collection.immutable.Seq<I> toStrict(scala.concurrent.duration.FiniteDuration atMost)
Attempt to drain the stream into a strict collection (by requestingLong.MaxValue
elements).'''Use with caution: Be warned that this may not be a good idea if the stream is infinite or its elements are very large!'''
- Parameters:
atMost
- (undocumented)- Returns:
- (undocumented)
-
within
public <T> T within(scala.concurrent.duration.FiniteDuration min, scala.concurrent.duration.FiniteDuration max, scala.Function0<T> f)
Execute code block while bounding its execution time betweenmin
andmax
.within
blocks may be nested. All methods in this trait which take maximum wait times are available in a version which implicitly uses the remaining time governed by the innermost enclosingwithin
block.Note that the timeout is scaled using Duration.dilated, which uses the configuration entry "akka.test.timefactor", while the min Duration is not.
val ret = within(50 millis) { test ! "ping" expectMsgClass(classOf[String]) }
- Parameters:
min
- (undocumented)max
- (undocumented)f
- (undocumented)- Returns:
- (undocumented)
-
within
public <T> T within(scala.concurrent.duration.FiniteDuration max, scala.Function0<T> f)
Same as callingwithin(0 seconds, max)(f)
.- Parameters:
max
- (undocumented)f
- (undocumented)- Returns:
- (undocumented)
-
-