Class/Object

com.itv.bucky

RabbitSimulator

Related Docs: object RabbitSimulator | package bucky

Permalink

class RabbitSimulator extends AmqpClient with StrictLogging

Provides an AmqpClient implementation that simulates RabbitMQ server with one main difference: Messages are sent directly to the consumer when published, there is no intermediate queue. This makes it easy for tests to publish a message and see the corresponding ConsumeAction, e.g. Ack, Nack or Requeue. Tests can use RabbitSimulator.watchQueue to see what messages get published to a queue that the application doesn't consume from.

Linear Supertypes
StrictLogging, AmqpClient, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RabbitSimulator
  2. StrictLogging
  3. AmqpClient
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RabbitSimulator(bindings: Bindings = IdentityBindings)(implicit executionContext: ExecutionContext)

    Permalink

    bindings

    A mapping from routing key to queue name, defaults to identity.

Type Members

  1. case class Publication(queueName: QueueName, message: Payload, consumeActionValue: Future[ConsumeAction]) extends Product with Serializable

    Permalink

Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def consumer(queueName: QueueName, handler: Handler[Delivery], exceptionalAction: ConsumeAction = DeadLetter, prefetchCount: Int = 0)(implicit executionContext: ExecutionContext): Lifecycle[Unit]

    Permalink
    Definition Classes
    RabbitSimulator → AmqpClient
  7. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  9. def estimatedMessageCount(queueName: QueueName): Try[Int]

    Permalink
    Definition Classes
    RabbitSimulator → AmqpClient
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

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

    Permalink
    Definition Classes
    AnyRef → Any
  13. def isDefinedAt(publishCommand: PublishCommand): Boolean

    Permalink
  14. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  15. val logger: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    StrictLogging
  16. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  19. def performOps(thunk: (AmqpOps) ⇒ Try[Unit]): Try[Unit]

    Permalink
    Definition Classes
    RabbitSimulator → AmqpClient
  20. def publish(publishCommand: PublishCommand): Future[ConsumeAction]

    Permalink
  21. def publisher(timeout: Duration = ...): Lifecycle[Publisher[PublishCommand]]

    Permalink
    Definition Classes
    RabbitSimulator → AmqpClient
  22. def publisherOf[T](builder: PublishCommandBuilder[T], timeout: Duration)(implicit executionContext: ExecutionContext): Lifecycle[Publisher[T]]

    Permalink
    Definition Classes
    AmqpClient
  23. def queueNameFor(publishCommand: PublishCommand): QueueName

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

    Permalink
    Definition Classes
    AnyRef
  25. def toString(): String

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. def waitForMessagesToBeProcessed()(implicit timeout: Duration): Unit

    Permalink
  30. def watchQueue(queueName: QueueName): ListBuffer[Delivery]

    Permalink

Inherited from StrictLogging

Inherited from AmqpClient

Inherited from AnyRef

Inherited from Any

Ungrouped