From cc079f18a2c00678397fae0714eb524dfe8961f2 Mon Sep 17 00:00:00 2001 From: Diego Date: Sat, 15 Mar 2014 11:21:44 -0300 Subject: implementation of IMessageHandler interface in order to control Aspectj weaving messages through kamon --- kamon-play/src/test/resources/META-INF/aop.xml | 2 +- .../scala/kamon/play/WSInstrumentationSpec.scala | 20 +++++++++++++++----- 2 files changed, 16 insertions(+), 6 deletions(-) (limited to 'kamon-play/src/test') diff --git a/kamon-play/src/test/resources/META-INF/aop.xml b/kamon-play/src/test/resources/META-INF/aop.xml index 63cbe8a9..2888a31a 100644 --- a/kamon-play/src/test/resources/META-INF/aop.xml +++ b/kamon-play/src/test/resources/META-INF/aop.xml @@ -5,7 +5,7 @@ - + diff --git a/kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala b/kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala index 3b8a5492..b321d123 100644 --- a/kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala +++ b/kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala @@ -25,8 +25,10 @@ import org.junit.runner.RunWith import org.specs2.runner.JUnitRunner import play.api.test.FakeApplication import play.api.libs.ws.WS - import scala.util._ +import scala.concurrent.Await +import scala.concurrent.duration._ + @RunWith(classOf[JUnitRunner]) class WSInstrumentationSpec extends PlaySpecification { @@ -34,11 +36,19 @@ class WSInstrumentationSpec extends PlaySpecification { val appWithRoutes = FakeApplication(withRoutes = { case ("GET", "/async") ⇒ - Action.async { - WS.url("http://www.google.com").get().map { - response ⇒ - Ok(response.toString()) + Action { + val request = WS.url("http://maps.googleapis.com/maps/api/geocode/json?address=China&sensor=true").get() + + val future = request map { + response ⇒ (response.json \\ "location") } + + val result = Await.result(future, 10 seconds).asInstanceOf[List[play.api.libs.json.JsObject]] + + val latitude = (result(0) \\ "lat")(0).toString + val longitude = (result(0) \\ "lng")(0).toString + + Ok(latitude + " " + longitude) } }) -- cgit v1.2.3