aboutsummaryrefslogtreecommitdiff
path: root/src/test/scala/akka/instrumentation/ActorInstrumentationSpec.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/scala/akka/instrumentation/ActorInstrumentationSpec.scala')
-rw-r--r--src/test/scala/akka/instrumentation/ActorInstrumentationSpec.scala28
1 files changed, 14 insertions, 14 deletions
diff --git a/src/test/scala/akka/instrumentation/ActorInstrumentationSpec.scala b/src/test/scala/akka/instrumentation/ActorInstrumentationSpec.scala
index 2921824e..4cc15a2f 100644
--- a/src/test/scala/akka/instrumentation/ActorInstrumentationSpec.scala
+++ b/src/test/scala/akka/instrumentation/ActorInstrumentationSpec.scala
@@ -3,31 +3,31 @@ package akka.instrumentation
import org.scalatest.WordSpec
import org.scalatest.matchers.{ShouldMatchers, MustMatchers}
import akka.actor.{Actor, Props, ActorSystem}
-import kamon.metric.Metrics
-import com.codahale.metrics.Meter
+import kamon.metric.Metrics._
import scala.collection.JavaConverters._
class ActorInstrumentationSpec extends WordSpec with MustMatchers with ShouldMatchers {
- import Metrics.metricsRegistry._
val system = ActorSystem()
-
import system._
+
val echoRef = actorOf(Props(new EchoActor), "Echo-Actor")
+ val meterForEchoActor = "meter-for-akka://default/user/Echo-Actor"
+ val totalMessages = 1000
+
+ "an instrumented Actor" should {
+ "send a message and record a metric on the Metrics Registry with the number of sent messages" in {
- "a instrumented Actor" should {
- "send a message and record a metric on the Metrics Registry and count messages" in {
+ (1 to totalMessages).foreach {x:Int =>
+ echoRef ! s"Message ${x}"
+ }
- echoRef ! "Message 1"
- echoRef ! "Message 2"
- echoRef ! "Message 3"
- echoRef ! "Message 4"
- echoRef ! "Message 5"
- echoRef ! "Message 6"
+ //to ensure that all messages was received
+ Thread.sleep(1000)
- val meter = getMeters.asScala.filterKeys(_.toLowerCase.contains("Echo-Actor".toLowerCase())).collectFirst{case pair:(String, Meter) => pair._2.getCount}.get
+ val messages = metricsRegistry.getMeters.asScala.get(meterForEchoActor).get.getCount
- meter should equal(6)
+ messages should equal(totalMessages)
}
}