diff options
author | Jakob Odersky <jakob@driver.xyz> | 2017-10-04 15:02:55 -0700 |
---|---|---|
committer | Jakob Odersky <jakob@driver.xyz> | 2017-10-04 15:02:55 -0700 |
commit | 50985bc8f889176d360d8ab1ce1d880bd4d9c766 (patch) | |
tree | 588e56c8e253a5b1b38a60d9b228e9a8f66138fb /src/test/scala/GoogleTracerSpec.scala | |
parent | 87182fa750f65ac57c78c42507645b94a4541385 (diff) | |
download | tracing-50985bc8f889176d360d8ab1ce1d880bd4d9c766.tar.gz tracing-50985bc8f889176d360d8ab1ce1d880bd4d9c766.tar.bz2 tracing-50985bc8f889176d360d8ab1ce1d880bd4d9c766.zip |
Update tests
Diffstat (limited to 'src/test/scala/GoogleTracerSpec.scala')
-rw-r--r-- | src/test/scala/GoogleTracerSpec.scala | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/src/test/scala/GoogleTracerSpec.scala b/src/test/scala/GoogleTracerSpec.scala new file mode 100644 index 0000000..fcdd73b --- /dev/null +++ b/src/test/scala/GoogleTracerSpec.scala @@ -0,0 +1,51 @@ +package xyz.driver.tracing + +import java.nio.file._ + +import akka.actor._ +import akka.stream._ +import akka.http.scaladsl.server.Directives._ +import akka.http.scaladsl.server._ +import akka.http.scaladsl.testkit.ScalatestRouteTest +import org.scalatest._ +import xyz.driver.tracing.TracingDirectives._ + +import scala.concurrent._ +import scala.concurrent.duration._ + +class GoogleTracerSpec extends FlatSpec { + + implicit val system = ActorSystem(this.getClass.getSimpleName) + import system.dispatcher + implicit val materializer = ActorMaterializer() + + "Google Tracer" should "submit" in { + val tracer = new GoogleTracer( + "driverinc-sandbox", + Paths.get( + system.settings.config.getString("tracing.google.service-account-file")) + ) + + // create 100 traces, each with 10 nested spans + for (_ <- 0 until 100) { + (0 until 10).foldLeft(Span(name = "trace-test.driver.xyz")) { + case (previous, i) => + val p: Span = previous + val span = Span( + name = s"trace-test.driver.xyz-$i", + traceId = previous.traceId, + parentSpanId = Some(previous.spanId) + ) + Thread.sleep(2) + val done = span.end() + tracer.submit(done) + done + } + } + + // TODO: automatically verify that traces were created on google stack driver + + Await.ready(tracer.close(), 30.seconds) + } + +} |