aboutsummaryrefslogtreecommitdiff
path: root/kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala
diff options
context:
space:
mode:
Diffstat (limited to 'kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala')
-rw-r--r--kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala49
1 files changed, 13 insertions, 36 deletions
diff --git a/kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala b/kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala
index f8801d8e..e9f5d992 100644
--- a/kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala
+++ b/kamon-play/src/test/scala/kamon/play/WSInstrumentationSpec.scala
@@ -1,5 +1,5 @@
/* ===================================================
- * Copyright © 2013 2014 the kamon project <http://kamon.io/>
+ * Copyright © 2013-2014 the kamon project <http://kamon.io/>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,51 +16,28 @@
package kamon.play
-import play.api.test._
import play.api.mvc.Action
import play.api.mvc.Results.Ok
-import scala.Some
-import scala.concurrent.ExecutionContext.Implicits.global
-import org.junit.runner.RunWith
-import org.specs2.runner.JUnitRunner
-import play.api.test.FakeApplication
import play.api.libs.ws.WS
-import play.api.Play.current
-import scala.util._
-import scala.concurrent.Await
-import scala.concurrent.duration._
+import org.scalatestplus.play.{OneServerPerSuite, PlaySpec}
+import play.api.test._
+import play.api.test.Helpers._
-@RunWith(classOf[JUnitRunner])
-class WSInstrumentationSpec extends PlaySpecification {
+class WSInstrumentationSpec extends PlaySpec with OneServerPerSuite {
System.setProperty("config.file", "./kamon-play/src/test/resources/conf/application.conf")
- def appWithRoutes = FakeApplication(withRoutes = {
- case ("GET", "/async") ⇒
- 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)
- }
+ implicit override lazy val app = FakeApplication(withRoutes = {
+ case ("GET", "/async") ⇒ Action { Ok("ok") }
})
"the WS instrumentation" should {
- "respond to the Async Action and complete the WS request" in new WithServer(appWithRoutes) {
- val Some(result) = route(FakeRequest(GET, "/async"))
- result.onComplete {
- case Success(result) ⇒ result.header.status must equalTo(200)
- case Failure(throwable) ⇒ failure(throwable.getMessage)
- }
- Thread.sleep(2000) //wait to complete the future
+ "respond to the Async Action and complete the WS request" in {
+ val response = await(WS.url("http://localhost:19001/async").get())
+
+ response.status mustBe (OK)
+
+ //Thread.sleep(2000) //wait to complete the future
}
}
} \ No newline at end of file