diff options
Diffstat (limited to 'kamon-core/src/test')
-rw-r--r-- | kamon-core/src/test/scala/kamon/EnvironmentSpec.scala | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/kamon-core/src/test/scala/kamon/EnvironmentSpec.scala b/kamon-core/src/test/scala/kamon/EnvironmentSpec.scala new file mode 100644 index 00000000..2dee46ab --- /dev/null +++ b/kamon-core/src/test/scala/kamon/EnvironmentSpec.scala @@ -0,0 +1,48 @@ +package kamon + +import com.typesafe.config.ConfigFactory +import org.scalatest.{Matchers, WordSpec} + +class EnvironmentSpec extends WordSpec with Matchers { + private val baseConfig = ConfigFactory.parseString( + """ + |kamon.environment { + | service = environment-spec + | host = auto + | instance = auto + |} + """.stripMargin + ) + + "the Kamon environment" should { + "assign a host and instance name when they are set to 'auto'" in { + val env = Environment.fromConfig(baseConfig) + + env.host shouldNot be("auto") + env.instance shouldNot be("auto") + env.instance shouldBe s"environment-spec@${env.host}" + } + + "use the configured host and instance, if provided" in { + val customConfig = ConfigFactory.parseString( + """ + |kamon.environment { + | host = spec-host + | instance = spec-instance + |} + """.stripMargin) + + val env = Environment.fromConfig(customConfig.withFallback(baseConfig)) + + env.host should be("spec-host") + env.instance should be("spec-instance") + } + + "always return the same incarnation name" in { + val envOne = Environment.fromConfig(baseConfig) + val envTwo = Environment.fromConfig(baseConfig) + + envOne.incarnation shouldBe envTwo.incarnation + } + } +} |