diff options
author | buraq <buraq@epfl.ch> | 2004-05-26 10:44:25 +0000 |
---|---|---|
committer | buraq <buraq@epfl.ch> | 2004-05-26 10:44:25 +0000 |
commit | 65788124d76bf20a08f12685b72fb9d14322f3e0 (patch) | |
tree | 5eb8028ba0f73246874bc463c03727f2bced1352 /test/files/run/xmlLiterals.scala | |
parent | 1f7970f3c60575d1715d1c5dd022dfa0d08bb51a (diff) | |
download | scala-65788124d76bf20a08f12685b72fb9d14322f3e0.tar.gz scala-65788124d76bf20a08f12685b72fb9d14322f3e0.tar.bz2 scala-65788124d76bf20a08f12685b72fb9d14322f3e0.zip |
*** empty log message ***
Diffstat (limited to 'test/files/run/xmlLiterals.scala')
-rw-r--r-- | test/files/run/xmlLiterals.scala | 156 |
1 files changed, 0 insertions, 156 deletions
diff --git a/test/files/run/xmlLiterals.scala b/test/files/run/xmlLiterals.scala deleted file mode 100644 index 63600f7962..0000000000 --- a/test/files/run/xmlLiterals.scala +++ /dev/null @@ -1,156 +0,0 @@ -//############################################################################ -// XML Literals -//############################################################################ -// $Id$ - -import scala.testing.UnitTest._ ; - -import scala.xml._ ; - -object Test with Application { - - def noWS(x:String):String = { - val res = new StringBuffer(); - var i = 0; while( i < x.length() ) { - val c = x.charAt( i ); - c match { - case ' ' | '\n' | '\t' => - case _ => res.append( c ) - } - i = i + 1; - } - res.toString(); - } - - - - /* */ - /* === tags, elements === */ - /* */ - - val x = <hello></hello>.toString(); /* see neg(1) */ - - /* whitespace (ws) handling */ - - val x2 = <hello > </hello>.toString(); /* ws in tags allowed */ - - assertEquals( x, noWS( x2 ) ); - - val x3 = <hello> - <world></world> - <test/> - <mars></mars></hello>.toString(); /* ws in element content */ - - - assertEquals( noWS( x3 ), - Elem("hello", - Elem("world"), - Elem("test"), - Elem("mars")).toString() ); - - - /* */ - /* === attributes === */ - /* */ - - val z = <html> - <body background="#FFFFFF"> - <h1>Hello World</h1> - <p>Check the <a href="scala.epfl.ch">scala</a> page!</p> - </body> - </html>.toString(); - - assertEquals( noWS( z ), noWS( - Elem("html", - Elem("body", - Elem("h1",Text("Hello World")), - Elem("p",Text("Check the "), - Elem("a", Text("scala")) - % Pair("href","scala.epfl.ch"), - Text("page!")) - ) % Pair("background","#FFFFFF") - ).toString() - )); - - /* todo: better way to deal with whitespace in content */ - /* (Canonical XML or even more aggressive normlization) */ - - /* */ - /* === embedded Scala blocks === */ - /* */ - - def computeDate() = { - Elem("date", Text("now!")); - } - - - /* embedding Scala strings as text and elements */ - val sc = <hello>{ "World" }{ Text("42") }{ computeDate() }</hello>; - - assertEquals( sc.child.elements.toList, - List( Text("World"), Text("42"), Elem( "date", Text("now!") ) ) ); - - assertEquals( sc.toString(), - Elem("hello",Text("World42"),Elem("date",Text("now!"))).toString() ); - - def foo( m:Node ):String = m match { - case <hello/> => "hello node" - case <hallo ></hallo > => "hallo node" - case <test>{ z }</test> => "test node:"+z - case <list>{ e1:Node }{ e2:Node }{ _* }</list> => e1.toString() + e2.toString(); - } - - assertEquals( foo(<hello/>), "hello node" ); - assertEquals( foo(<hallo/>), "hallo node" ); - assertEquals( foo(<test>42</test>), "test node:42" ); - assertEquals( foo(<list><a/><b><c/></b><d/><d/></list>), - <a/>.toString() + <b><c/></b>.toString() ); - - val rows = <tr> - <td>1.1</td><td>1.2</td> - </tr> - <tr> - <td>2.1</td><td>2.2</td> - </tr>; - - assertEquals( noWS( rows.toList.toString() ), - noWS( List(Elem("tr", - Elem("td",Text("1.1")),Elem("td",Text("1.2")) - ), - Elem("tr", - Elem("td",Text("2.1")),Elem("td",Text("2.2")) - ) - ).toString() ) - ); - val rows2 = <tr><!-- an XML comment --><td>1.1</td><td>1.2</td> - </tr> - <tr> - <td>2.1</td><td>2.2</td> - </tr>; - - assertEquals( noWS( rows.toList.toString() ), noWS( rows2.toList.toString() ) ); - - val sequence = <foo/> - <bar>Text</bar> - <foo/>; - - Console.println( sequence ); - - val onlyOne = <foo/>; - - Console.println( onlyOne ); - - val tryBrace = <try>Now we try escaped {{ braces } </try>; - - assertEquals( tryBrace, Elem("try",Text("Now we try escaped { braces }"))); - - val tryBrace2 = <try myAttrib={ (3+4).toString() }> cool ?</try>; - - assertEquals( tryBrace2("myAttrib").get, "7" ); - - /* Scala comments are not allowed in XML literals. see neg(2) */ - val zzz = <hello>/* no comment */</hello>; - assertEquals( zzz, Elem("hello", Text("/* no comment */"))); - -} - |