Class

akka.stream.testkit.TestSubscriber

ManualProbe

Related Doc: package TestSubscriber

Permalink

class ManualProbe[I] extends Subscriber[I]

Implementation of org.reactivestreams.Subscriber that allows various assertions.

All timeouts are dilated automatically, for more details about time dilation refer to akka.testkit.TestKit.

Source
StreamTestKit.scala
Linear Supertypes
Known Subclasses
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ManualProbe
  2. Subscriber
  3. AnyRef
  4. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. abstract type Self <: ManualProbe[I]

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ManualProbe[I] to any2stringadd[ManualProbe[I]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (ManualProbe[I], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ManualProbe[I] to ArrowAssoc[ManualProbe[I]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def ensuring(cond: (ManualProbe[I]) ⇒ Boolean, msg: ⇒ Any): ManualProbe[I]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ManualProbe[I] to Ensuring[ManualProbe[I]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  9. def ensuring(cond: (ManualProbe[I]) ⇒ Boolean): ManualProbe[I]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ManualProbe[I] to Ensuring[ManualProbe[I]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: Boolean, msg: ⇒ Any): ManualProbe[I]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ManualProbe[I] to Ensuring[ManualProbe[I]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean): ManualProbe[I]

    Permalink
    Implicit information
    This member is added by an implicit conversion from ManualProbe[I] to Ensuring[ManualProbe[I]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  14. def expectComplete(): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect completion.

  15. def expectError(cause: Throwable): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect given Throwable.

  16. def expectError(): Throwable

    Permalink

    Expect and return the signalled Throwable.

  17. def expectEvent(event: SubscriberEvent): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect SubscriberEvent (any of: OnSubscribe, OnNext, OnError or OnComplete).

  18. def expectEvent(max: FiniteDuration): SubscriberEvent

    Permalink

    Expect and return SubscriberEvent (any of: OnSubscribe, OnNext, OnError or OnComplete).

  19. def expectEvent(): SubscriberEvent

    Permalink

    Expect and return SubscriberEvent (any of: OnSubscribe, OnNext, OnError or OnComplete).

  20. def expectEventPF[T](f: PartialFunction[SubscriberEvent, T]): T

    Permalink
  21. def expectEventWithTimeoutPF[T](max: Duration, f: PartialFunction[SubscriberEvent, T]): T

    Permalink
  22. def expectNext(e1: I, e2: I, es: I*): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect multiple stream elements.

    Annotations
    @varargs()
  23. def expectNext(d: FiniteDuration, element: I): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect a stream element during specified time or timeout.

  24. def expectNext(element: I): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect a stream element.

  25. def expectNext(d: FiniteDuration): I

    Permalink

    Expect and return a stream element during specified time or timeout.

  26. def expectNext(): I

    Permalink

    Expect and return a stream element.

  27. def expectNextChainingPF(f: PartialFunction[Any, Any]): Self

    Permalink

    Expect a stream element during specified time or timeout and test it with partial function.

    Expect a stream element during specified time or timeout and test it with partial function.

    Allows chaining probe methods.

  28. def expectNextChainingPF(max: Duration, f: PartialFunction[Any, Any]): Self

    Permalink

    Expect a stream element during specified time or timeout and test it with partial function.

    Expect a stream element during specified time or timeout and test it with partial function.

    Allows chaining probe methods.

    max

    wait no more than max time, otherwise throw AssertionError

  29. def expectNextN(all: Seq[I]): Self

    Permalink

    Fluent DSL Expect the given elements to be signalled in order.

  30. def expectNextN(n: Long): Seq[I]

    Permalink

    Expect and return the next n stream elements.

  31. def expectNextOrComplete(element: I): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect given next element or stream completion.

  32. def expectNextOrComplete(): Either[OnComplete.type, I]

    Permalink

    Expect next element or stream completion - returning whichever was signalled.

  33. def expectNextOrError(element: I, cause: Throwable): Either[Throwable, I]

    Permalink

    Fluent DSL Expect given next element or error signal.

  34. def expectNextOrError(): Either[Throwable, I]

    Permalink

    Fluent DSL

    Fluent DSL

    Expect given next element or error signal, returning whichever was signalled.

  35. def expectNextPF[T](f: PartialFunction[Any, T]): T

    Permalink

    Expect a stream element and test it with partial function.

  36. def expectNextUnordered(e1: I, e2: I, es: I*): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect multiple stream elements in arbitrary order.

    Annotations
    @varargs()
  37. def expectNextUnorderedN(all: Seq[I]): Self

    Permalink

    Fluent DSL Expect the given elements to be signalled in any order.

  38. def expectNextWithTimeoutPF[T](max: Duration, f: PartialFunction[Any, T]): T

    Permalink

    Expect a stream element and test it with partial function.

    Expect a stream element and test it with partial function.

    max

    wait no more than max time, otherwise throw AssertionError

  39. def expectNoMessage(remaining: Duration): Self

    Permalink

    Java API: Assert that no message is received for the specified time.

  40. def expectNoMessage(remaining: FiniteDuration): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Assert that no message is received for the specified time.

  41. def expectSubscription(): Subscription

    Permalink

    Expect and return a org.reactivestreams.Subscription.

  42. def expectSubscriptionAndComplete(signalDemand: Boolean): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect 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 the signalDemand parameter to false.

    See also #expectSubscriptionAndComplete.

  43. def expectSubscriptionAndComplete(): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect subscription followed by immediate stream completion. By default 1 demand will be signalled in order to wake up a possibly lazy upstream

    See also Boolean) if no demand should be signalled.

  44. def expectSubscriptionAndError(cause: Throwable, signalDemand: Boolean): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect subscription followed by immediate stream completion. By default 1 demand will be signalled in order to wake up a possibly lazy upstream

    See also Throwable).

  45. def expectSubscriptionAndError(cause: Throwable): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Expect subscription followed by immediate stream completion.

    By default 1 demand will be signalled in order to wake up a possibly lazy upstream.

    See also Throwable, signalDemand: Boolean) if no demand should be signalled.

  46. def expectSubscriptionAndError(signalDemand: Boolean): Throwable

    Permalink

    Expect subscription to be followed immediately by an error signal.

    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 the signalDemand parameter to false.

    See also #expectSubscriptionAndError().

  47. def expectSubscriptionAndError(): Throwable

    Permalink

    Expect subscription to be followed immediately by an error signal.

    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.

  48. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  49. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ManualProbe[I] to StringFormat[ManualProbe[I]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  50. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  51. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  52. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  53. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  54. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  55. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  56. def onComplete(): Unit

    Permalink
    Definition Classes
    ManualProbe → Subscriber
  57. def onError(cause: Throwable): Unit

    Permalink
    Definition Classes
    ManualProbe → Subscriber
  58. def onNext(element: I): Unit

    Permalink
    Definition Classes
    ManualProbe → Subscriber
  59. def onSubscribe(subscription: Subscription): Unit

    Permalink
    Definition Classes
    ManualProbe → Subscriber
  60. def receiveWhile[T](max: Duration = Duration.Undefined, idle: Duration = Duration.Inf, messages: Int = Int.MaxValue)(f: PartialFunction[SubscriberEvent, T]): Seq[T]

    Permalink

    Receive messages for a given duration or until one does not match a given partial function.

  61. def receiveWithin(max: FiniteDuration, messages: Int = Int.MaxValue): Seq[I]

    Permalink

    Drains a given number of messages

  62. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  63. def toStrict(atMost: FiniteDuration): Seq[I]

    Permalink

    Attempt to drain the stream into a strict collection (by requesting Long.MaxValue elements).

    Attempt to drain the stream into a strict collection (by requesting Long.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!

  64. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  65. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  66. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  67. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  68. def within[T](max: FiniteDuration)(f: ⇒ T): T

    Permalink

    Same as calling within(0 seconds, max)(f).

  69. def within[T](min: FiniteDuration, max: FiniteDuration)(f: ⇒ T): T

    Permalink

    Execute code block while bounding its execution time between min and max.

    Execute code block while bounding its execution time between min and max. 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 enclosing within 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])
    }
  70. def [B](y: B): (ManualProbe[I], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from ManualProbe[I] to ArrowAssoc[ManualProbe[I]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Deprecated Value Members

  1. def expectNoMsg(remaining: FiniteDuration): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Assert that no message is received for the specified time. NOTE! Timeout value is automatically multiplied by timeFactor.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.5.5) Use expectNoMessage instead

  2. def expectNoMsg(): Self

    Permalink

    Fluent DSL

    Fluent DSL

    Same as expectNoMsg(remaining), but correctly treating the timeFactor. NOTE! Timeout value is automatically multiplied by timeFactor.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.5.5) Use expectNoMessage instead

Inherited from Subscriber[I]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from ManualProbe[I] to any2stringadd[ManualProbe[I]]

Inherited by implicit conversion StringFormat from ManualProbe[I] to StringFormat[ManualProbe[I]]

Inherited by implicit conversion Ensuring from ManualProbe[I] to Ensuring[ManualProbe[I]]

Inherited by implicit conversion ArrowAssoc from ManualProbe[I] to ArrowAssoc[ManualProbe[I]]

Ungrouped