pekko/akka-camel/src/test/scala/akka/camel/internal/component/DurationConverterTest.scala
2015-03-10 08:17:03 +01:00

42 lines
1.2 KiB
Scala

/**
* Copyright (C) 2009-2014 Typesafe Inc. <http://www.typesafe.com>
*/
package akka.camel.internal.component
import language.postfixOps
import org.scalatest.Matchers
import scala.concurrent.duration._
import org.scalatest.WordSpec
import org.apache.camel.TypeConversionException
class DurationConverterSpec extends WordSpec with Matchers {
import DurationTypeConverter._
"DurationTypeConverter must convert '10 nanos'" in {
convertTo(classOf[Duration], "10 nanos") should ===(10 nanos)
}
"DurationTypeConverter must do the roundtrip" in {
convertTo(classOf[Duration], (10 seconds).toString()) should ===(10 seconds)
}
"DurationTypeConverter must throw if invalid format" in {
tryConvertTo(classOf[Duration], "abc nanos") should ===(null)
intercept[TypeConversionException] {
mandatoryConvertTo(classOf[Duration], "abc nanos") should ===(10 nanos)
}.getValue should ===("abc nanos")
}
"DurationTypeConverter must throw if doesn't end with time unit" in {
tryConvertTo(classOf[Duration], "10233") should ===(null)
intercept[TypeConversionException] {
mandatoryConvertTo(classOf[Duration], "10233") should ===(10 nanos)
}.getValue should ===("10233")
}
}