summaryrefslogtreecommitdiff
path: root/test/files/jvm/xmlattr.scala
diff options
context:
space:
mode:
authorBurak Emir <emir@epfl.ch>2008-01-28 22:27:56 +0000
committerBurak Emir <emir@epfl.ch>2008-01-28 22:27:56 +0000
commit9d7b414f6cbb16d87fefb96e28d4c07afde7c65b (patch)
tree594f4e159aa0bb4096c9441d649a52df48dd9bd3 /test/files/jvm/xmlattr.scala
parentfc0948748007901204e63f704c9d52a16464f109 (diff)
downloadscala-9d7b414f6cbb16d87fefb96e28d4c07afde7c65b.tar.gz
scala-9d7b414f6cbb16d87fefb96e28d4c07afde7c65b.tar.bz2
scala-9d7b414f6cbb16d87fefb96e28d4c07afde7c65b.zip
support for <elem key={x:Option[Seq[Node]]} />,...
support for <elem key={x:Option[Seq[Node]]} />, so that Options can be used for optional attributes.
Diffstat (limited to 'test/files/jvm/xmlattr.scala')
-rw-r--r--test/files/jvm/xmlattr.scala74
1 files changed, 49 insertions, 25 deletions
diff --git a/test/files/jvm/xmlattr.scala b/test/files/jvm/xmlattr.scala
index c34f66eafc..0e519f51df 100644
--- a/test/files/jvm/xmlattr.scala
+++ b/test/files/jvm/xmlattr.scala
@@ -1,29 +1,53 @@
-import scala.xml._
-object Test extends Application {
- {
- var z:NodeSeq = null
-
- Console.println(z)
- Console.println(z==null)
- var x = new UnprefixedAttribute("foo","bar", Null)
- //x = new UnprefixedAttribute("foo", null:Seq[Node], x)
- Console.println(x.toString)
- Console.println(x.get("foo")) // Some(bar)
- Console.println(x("foo")) // bar
-
- val y = x.remove("foo")
- Console.println(y.toString)
- Console.println(y == Null) // true
-
- x = new UnprefixedAttribute("foo", z, x)
- Console.println(x.toString)
- Console.println(x.get("foo")) // None
- Console.println(x("foo")) // null
+import testing.SUnit.{Assert, TestCase, TestConsoleMain, TestSuite}
+import xml.{NodeSeq, Null, Text, UnprefixedAttribute}
+
+object Test extends TestConsoleMain {
+ def suite = new TestSuite()
+
+ object UnprefixedAttributeTest extends TestCase("UnprefixedAttribute") with Assert {
+ override def runTest {
+ var x = new UnprefixedAttribute("foo","bar", Null)
+
+ // always assertX(expected, actual)
+ assertEquals(Some(Text("bar")), x.get("foo"));
+ assertEquals(Text("bar"), x("foo"))
+ assertEquals(None, x.get("no_foo"))
+ assertEquals(null, x("no_foo"))
+
+ val y = x.remove("foo")
+ assertEquals(Null, y)
+
+ val z = new UnprefixedAttribute("foo", null:NodeSeq, x)
+ assertEquals(None, z.get("foo"))
+ }
}
- val x1 = <b x="&amp;"/>
- val x2 = <b x={"&"}/>
- Console.println(x1)
- Console.println(x2)
+ object AttributeWithOptionTest extends TestCase("AttributeWithOption") with Assert {
+ override def runTest {
+ var x = new UnprefixedAttribute("foo", Some(Text("bar")), Null)
+ assertEquals(Some(Text("bar")), x.get("foo"));
+ assertEquals(Text("bar"), x("foo"))
+ assertEquals(None, x.get("no_foo"))
+ assertEquals(null, x("no_foo"))
+
+ val attr1 = Some(Text("foo value"))
+ val attr2 = None
+ val y = <b foo={attr1} bar={attr2} />
+ assertEquals(Some(Text("foo value")), y.attributes.get("foo"));
+ assertEquals(Text("foo value"), y.attributes("foo"))
+ assertEquals(None, y.attributes.get("bar"))
+ assertEquals(null, y.attributes("bar"))
+
+ val z = new UnprefixedAttribute("bar", None, x)
+ assertEquals(z.get("foo"), None) // None
+ }
+ }
+
+ object AttributeOutputTest extends TestCase("AttributeOutput") with Assert {
+ override def runTest {
+ assertEquals(<b x="&amp;"/>.toString, "<b x=\"&amp;\"></b>")
+ assertEquals( <b x={"&"}/>.toString, "<b x=\"&amp;\"></b>")
+ }
+ }
}