Author: ningjiang
Date: Tue Mar 26 08:44:53 2013
New Revision: 1461018
URL: http://svn.apache.org/r1461018
Log:
Move the ScalaTypeConverterTest into ConverterSpec
Modified:
camel/trunk/components/camel-scala/src/test/scala/org/apache/camel/scala/converter/ConverterSpec.scala
Modified:
camel/trunk/components/camel-scala/src/test/scala/org/apache/camel/scala/converter/ConverterSpec.scala
URL:
http://svn.apache.org/viewvc/camel/trunk/components/camel-scala/src/test/scala/org/apache/camel/scala/converter/ConverterSpec.scala?rev=1461018&r1=1461017&r2=1461018&view=diff
==============================================================================
---
camel/trunk/components/camel-scala/src/test/scala/org/apache/camel/scala/converter/ConverterSpec.scala
(original)
+++
camel/trunk/components/camel-scala/src/test/scala/org/apache/camel/scala/converter/ConverterSpec.scala
Tue Mar 26 08:44:53 2013
@@ -23,6 +23,10 @@ import org.scalatest.junit.JUnitRunner
import org.junit.runner.RunWith
import reflect.Manifest
+import org.w3c.dom.Document
+import xml.Elem
+import scala.Some
+import javax.xml.parsers.DocumentBuilderFactory
@RunWith(classOf[JUnitRunner])
class ConverterSpec extends FunSpec with CamelSpec with MustMatchers {
@@ -161,5 +165,40 @@ class ConverterSpec extends FunSpec with
}
}
- private def to[T](x: AnyRef)(implicit m: Manifest[T]): Option[T] = Option(
context.getTypeConverter.mandatoryConvertTo(m.erasure, x).asInstanceOf[T] )
+ describe("scala xml converter") {
+ it("must convert to document") {
+ val v = <persons/>
+ val result = to[Document](v)
+ result must be('defined)
+ Option(result.get.getElementsByTagName("persons")) must be('defined)
+ }
+
+ it("must convert string to document") {
+ val result = to[Elem]("<persons/>")
+ result.get must equal(<persons/>)
+ }
+
+ it("must convert dom to elem") {
+ val doc = createDocument
+ val element = doc.createElement("persons")
+ doc.appendChild(element)
+
+ val result = to[Elem](doc)
+ result must be('defined)
+ result.get must equal(<persons/>)
+ }
+
+ it("must convert dom node to elem") {
+ val result = to[Elem](createDocument.createElement("persons"))
+ result must be('defined)
+ result.get must equal(<persons/>)
+ }
+
+
+ def createDocument =
DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument()
+
+
+ }
+
+ private def to[T](x: AnyRef)(implicit m: Manifest[T]): Option[T] = Option(
context.getTypeConverter.mandatoryConvertTo(m.erasure, createExchange,
x).asInstanceOf[T] )
}