object EventFilter

Facilities for selectively filtering out expected events from logging so that you can keep your test run’s console output clean and do not miss real error messages.

Also have a look at the akka.testkit package object’s filterEvents and filterException methods.

The source filters do accept Class[_] arguments, matching any object which is an instance of the given class, e.g.

EventFilter.info(source = classOf[MyActor]) // will match Info events from any MyActor instance

The message object will be converted to a string before matching ("null" if it is null).

Source
TestEventListener.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. EventFilter
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. def apply[A <: Throwable](message: String = null, source: String = null, start: String = "", pattern: String = null, occurrences: Int = Int.MaxValue)(implicit arg0: ClassTag[A]): EventFilter

    Create a filter for Error events.

    Create a filter for Error events. Give up to one of start and pattern:

    EventFilter[MyException]()                                         // filter only on exception type
    EventFilter[MyException]("message")                                // filter on exactly matching message
    EventFilter[MyException](source = obj)                             // filter on event source
    EventFilter[MyException](start = "Expected")                       // filter on start of message
    EventFilter[MyException](source = obj, pattern = "weird.*message") // filter on pattern and message

    Please note that filtering on the source being null does NOT work (passing null disables the source filter).

  2. def custom(test: [, Boolean], occurrences: Int = Int.MaxValue): EventFilter

    Create a custom event filter.

    Create a custom event filter. The filter will affect those events for which the supplied partial function is defined and returns true.

    EventFilter.custom {
      case Warning(ref, "my warning") if ref == actor || ref == null => true
    }
  3. def debug(message: String = null, source: String = null, start: String = "", pattern: String = null, occurrences: Int = Int.MaxValue): EventFilter

    Create a filter for Debug events.

    Create a filter for Debug events. Give up to one of start and pattern:

    EventFilter.debug()                                         // filter only on debug type
    EventFilter.debug(source = obj)                             // filter on event source
    EventFilter.debug(start = "Expected")                       // filter on start of message
    EventFilter.debug(source = obj, pattern = "weird.*message") // filter on pattern and message

    Please note that filtering on the source being null does NOT work (passing null disables the source filter).

  4. def error(message: String = null, source: String = null, start: String = "", pattern: String = null, occurrences: Int = Int.MaxValue): EventFilter

    Create a filter for Error events.

    Create a filter for Error events. See apply() for more details.

  5. def info(message: String = null, source: String = null, start: String = "", pattern: String = null, occurrences: Int = Int.MaxValue): EventFilter

    Create a filter for Info events.

    Create a filter for Info events. Give up to one of start and pattern:

    EventFilter.info()                                         // filter only on info event
    EventFilter.info(source = obj)                             // filter on event source
    EventFilter.info(start = "Expected")                       // filter on start of message
    EventFilter.info(source = obj, pattern = "weird.*message") // filter on pattern and message

    Please note that filtering on the source being null does NOT work (passing null disables the source filter).

  6. def warning(message: String = null, source: String = null, start: String = "", pattern: String = null, occurrences: Int = Int.MaxValue): EventFilter

    Create a filter for Warning events.

    Create a filter for Warning events. Give up to one of start and pattern:

    EventFilter.warning()                                         // filter only on warning event
    EventFilter.warning(source = obj)                             // filter on event source
    EventFilter.warning(start = "Expected")                       // filter on start of message
    EventFilter.warning(source = obj, pattern = "weird.*message") // filter on pattern and message

    Please note that filtering on the source being null does NOT work (passing null disables the source filter).