From 14479536adb2b182d03d718169d43b39811190e5 Mon Sep 17 00:00:00 2001 From: Konrad 'ktoso' Malawski Date: Mon, 19 May 2014 11:30:17 +0200 Subject: [PATCH] =act #15217 the watching message is generated always, so the test should await on both, before it expects the unsubscribing message, otherwise it's racy. Resolves #15217 --- .../src/test/scala/akka/event/EventStreamSpec.scala | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/akka-actor-tests/src/test/scala/akka/event/EventStreamSpec.scala b/akka-actor-tests/src/test/scala/akka/event/EventStreamSpec.scala index 1e311a5f65..b884fa7c04 100644 --- a/akka-actor-tests/src/test/scala/akka/event/EventStreamSpec.scala +++ b/akka-actor-tests/src/test/scala/akka/event/EventStreamSpec.scala @@ -388,7 +388,8 @@ class EventStreamSpec extends AkkaSpec(EventStreamSpec.config) { es.subscribe(a2.ref, classOf[A]) es.subscribe(a2.ref, classOf[T]) - fishForDebugMessage(a1, s"watching ${a2.ref}") + fishForDebugMessage(a1, s"watching ${a2.ref}", 1 second) + fishForDebugMessage(a1, s"watching ${a2.ref}", 1 second) // the unsubscriber "starts to watch" each time, as watching is idempotent es.unsubscribe(a2.ref, classOf[A]) should equal(true) fishForDebugMessage(a1, s"unsubscribing ${a2.ref} from channel class akka.event.EventStreamSpec$$A") @@ -416,8 +417,8 @@ class EventStreamSpec extends AkkaSpec(EventStreamSpec.config) { msg foreach (expectMsg(_)) } - private def fishForDebugMessage(a: TestProbe, messagePrefix: String) { - a.fishForMessage(3 seconds, hint = "expected debug message prefix: " + messagePrefix) { + private def fishForDebugMessage(a: TestProbe, messagePrefix: String, max: Duration = 3 seconds) { + a.fishForMessage(max, hint = "expected debug message prefix: " + messagePrefix) { case Logging.Debug(_, _, msg: String) if msg startsWith messagePrefix ⇒ true case other ⇒ false }