diff options
author | Ivan Topolnjak <ivantopo@gmail.com> | 2017-08-24 11:23:21 +0200 |
---|---|---|
committer | Ivan Topolnjak <ivantopo@gmail.com> | 2017-08-24 11:23:21 +0200 |
commit | cd54e4ed73734dbabebbf22e4fa288c9b047992e (patch) | |
tree | 73a94488fb9097c3e3fe1ad0271f9caadd53f6cf /kamon-core-tests/src/test/scala/kamon/trace/SpanCustomizerSpec.scala | |
parent | 5291089bcc6bb048dcecad2c931f3408bd539574 (diff) | |
download | Kamon-cd54e4ed73734dbabebbf22e4fa288c9b047992e.tar.gz Kamon-cd54e4ed73734dbabebbf22e4fa288c9b047992e.tar.bz2 Kamon-cd54e4ed73734dbabebbf22e4fa288c9b047992e.zip |
introduce the SpanCustomizer API
Diffstat (limited to 'kamon-core-tests/src/test/scala/kamon/trace/SpanCustomizerSpec.scala')
-rw-r--r-- | kamon-core-tests/src/test/scala/kamon/trace/SpanCustomizerSpec.scala | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/kamon-core-tests/src/test/scala/kamon/trace/SpanCustomizerSpec.scala b/kamon-core-tests/src/test/scala/kamon/trace/SpanCustomizerSpec.scala new file mode 100644 index 00000000..39bd7cd7 --- /dev/null +++ b/kamon-core-tests/src/test/scala/kamon/trace/SpanCustomizerSpec.scala @@ -0,0 +1,31 @@ +package kamon.trace + +import kamon.Kamon +import kamon.context.Context +import kamon.testkit.SpanInspection +import org.scalatest.{Matchers, WordSpec} + +class SpanCustomizerSpec extends WordSpec with Matchers with SpanInspection { + + "a SpanCustomizer" should { + "default to a Noop implementation when none is in the context" in { + val noopCustomizer = Context.Empty.get(SpanCustomizer.ContextKey) + val spanBuilder = noopCustomizer.customize(Kamon.buildSpan("noop")) + val span = inspect(spanBuilder.start()) + + span.operationName() shouldBe "noop" + span.metricTags() shouldBe empty + span.spanTags() shouldBe empty + } + + "have a simple builder for customizing the operation name" in { + val operationNameCustomizer = SpanCustomizer.forOperationName("myCustomOperationName") + val spanBuilder = operationNameCustomizer.customize(Kamon.buildSpan("noop")) + val span = inspect(spanBuilder.start()) + + span.operationName() shouldBe "myCustomOperationName" + span.metricTags() shouldBe empty + span.spanTags() shouldBe empty + } + } +} |