summaryrefslogtreecommitdiff
path: root/test/files
diff options
context:
space:
mode:
authorBurak Emir <emir@epfl.ch>2006-10-14 13:31:12 +0000
committerBurak Emir <emir@epfl.ch>2006-10-14 13:31:12 +0000
commit470f990722777041a475de2e5cf02ca4504a2237 (patch)
tree4527d5a708f563c53ffcc1e37f908c76062cd201 /test/files
parentf1208fc000438bb03bbb18011659dd4ca25d1127 (diff)
downloadscala-470f990722777041a475de2e5cf02ca4504a2237.tar.gz
scala-470f990722777041a475de2e5cf02ca4504a2237.tar.bz2
scala-470f990722777041a475de2e5cf02ca4504a2237.zip
xml improvements for 2.2.1 (see changes)
Diffstat (limited to 'test/files')
-rw-r--r--test/files/jvm/xml01.check3
-rw-r--r--test/files/jvm/xml01.scala9
-rw-r--r--test/files/jvm/xml02.scala3
-rw-r--r--test/files/jvm/xmlattr.check2
-rw-r--r--test/files/jvm/xmlattr.scala6
-rw-r--r--test/files/run/unittest_xml.scala55
6 files changed, 77 insertions, 1 deletions
diff --git a/test/files/jvm/xml01.check b/test/files/jvm/xml01.check
index 5e9ee2aed0..2a8d2e5625 100644
--- a/test/files/jvm/xml01.check
+++ b/test/files/jvm/xml01.check
@@ -22,6 +22,9 @@ passed ok
-- group nodes
<f><a></a><b></b><c></c></f>
<a></a><f><a></a><b></b><c></c></f><a></a><b></b><c></c>
+passed ok
+passed ok
+passed ok
attribute value normalization
passed ok
passed ok
diff --git a/test/files/jvm/xml01.scala b/test/files/jvm/xml01.scala
index 3558d95100..8c99cfd358 100644
--- a/test/files/jvm/xml01.scala
+++ b/test/files/jvm/xml01.scala
@@ -189,6 +189,15 @@ object Test {
val zx2: Node = Group { List(<a/>,zy1,zx1) }
Console println zx2.toString()
+ val zz1 = <xml:group><a/><b/><c/></xml:group>
+
+ assertTrue(zx1 == zz1)
+ assertTrue(zz1.length == 3)
+
+ // unparsed
+
+ val uup = <xml:unparsed>&<<>""^%@$!#</xml:unparsed>
+ assertTrue(uup == "&<<>\"\"^%@$!#")
// test unicode escapes backslash u
Console println ("attribute value normalization");
diff --git a/test/files/jvm/xml02.scala b/test/files/jvm/xml02.scala
index cbc9b5041b..d0d97e64eb 100644
--- a/test/files/jvm/xml02.scala
+++ b/test/files/jvm/xml02.scala
@@ -21,7 +21,8 @@ def main(args:Array[String]) = {
Console.println("three");
assertEquals(bx \ "@foo", "bar&x")
Console.println("four");
- assertSameElements(bx \ "@foo", List(xml.Text("bar"),xml.EntityRef("amp"),xml.Text("x")))
+ assertSameElements(bx \ "@foo", List(xml.Text("bar&x")))
+ //assertSameElements(bx \ "@foo", List(xml.Text("bar"),xml.EntityRef("amp"),xml.Text("x")))
Console.println("five");
assertEquals(bx.toString, "<hello foo=\"bar&amp;x\"></hello>")
diff --git a/test/files/jvm/xmlattr.check b/test/files/jvm/xmlattr.check
index a1841a78ef..bebcb45081 100644
--- a/test/files/jvm/xmlattr.check
+++ b/test/files/jvm/xmlattr.check
@@ -8,3 +8,5 @@ true
None
null
+<b x="&amp;"></b>
+<b x="&amp;"></b>
diff --git a/test/files/jvm/xmlattr.scala b/test/files/jvm/xmlattr.scala
index 9801e05357..c34f66eafc 100644
--- a/test/files/jvm/xmlattr.scala
+++ b/test/files/jvm/xmlattr.scala
@@ -20,4 +20,10 @@ object Test extends Application {
Console.println(x.get("foo")) // None
Console.println(x("foo")) // null
}
+
+ val x1 = <b x="&amp;"/>
+ val x2 = <b x={"&"}/>
+ Console.println(x1)
+ Console.println(x2)
+
}
diff --git a/test/files/run/unittest_xml.scala b/test/files/run/unittest_xml.scala
new file mode 100644
index 0000000000..5f7c523996
--- /dev/null
+++ b/test/files/run/unittest_xml.scala
@@ -0,0 +1,55 @@
+
+object Test {
+
+ import scala.testing.SUnit._
+ import scala.xml.{MetaData, Null, PrefixedAttribute, UnprefixedAttribute }
+
+ class MetaDataTest extends TestCase("collection.mutable.ArrayBuffer") with Assert {
+
+ import scala.xml.{TopScope, NamespaceBinding, Atom, Text }
+
+ override def runTest = {
+
+ var x: MetaData = Null
+ var s: NamespaceBinding = TopScope
+
+ // testing method def apply(uri:String, scp:NamespaceBinding, k:String): Seq[Node]
+ // def apply(k:String): Seq[Node]
+
+ assertEquals("absent element (prefixed) 1", null, x("za://foo.com", s, "bar" ))
+ assertEquals("absent element (unprefix) 1", null, x("bar"))
+
+ assertEquals("absent element (prefixed) 2", None, x.get("za://foo.com", s, "bar" ))
+ assertEquals("absent element (unprefix) 2", None, x.get("bar"))
+
+ x = new PrefixedAttribute("zo","bar", new Atom(42), x)
+ s = new NamespaceBinding("zo","za://foo.com",s)
+
+ assertEquals("present element (prefixed) 3", new Atom(42), x("za://foo.com", s, "bar" ))
+ assertEquals("present element (unprefix) 3", null, x("bar"))
+
+ assertEquals("present element (prefixed) 4", Some(new Atom(42)), x.get("za://foo.com", s, "bar" ))
+ assertEquals("present element (unprefix) 4", None, x.get("bar"))
+
+ x = new UnprefixedAttribute("bar","meaning", x)
+
+ assertEquals("present element (prefixed) 5", null, x(null, s, "bar" ))
+ assertEquals("present element (unprefix) 5", Text("meaning"), x("bar"))
+
+ assertEquals("present element (prefixed) 6", None, x.get(null, s, "bar" ))
+ assertEquals("present element (unprefix) 6", Some(Text("meaning")), x.get("bar"))
+
+ }
+ }
+
+ def main(args:Array[String]) = {
+ val ts = new TestSuite(
+ new MetaDataTest //,
+ )
+ val tr = new TestResult()
+ ts.run(tr)
+ for(val failure <- tr.failures) {
+ Console.println(failure)
+ }
+ }
+}