1 package com.thoughtworks.xstream.xml.text;
2
3 import com.thoughtworks.xstream.xml.XMLWriter;
4 import junit.framework.TestCase;
5
6 import java.io.StringWriter;
7
8 public class CompactXMLWriterTest extends TestCase {
9 private StringWriter stringWriter;
10 private XMLWriter xmlWriter;
11
12 protected void setUp() throws Exception {
13 super.setUp();
14 stringWriter = new StringWriter();
15 xmlWriter = new CompactXMLWriter(stringWriter);
16 }
17
18 public void testXmlIsIndented() {
19 xmlWriter.startElement("hello");
20 xmlWriter.startElement("world");
21
22 xmlWriter.startElement("one");
23 xmlWriter.writeText("potato");
24 xmlWriter.endElement();
25
26 xmlWriter.startElement("two");
27 xmlWriter.writeText("potatae");
28 xmlWriter.endElement();
29
30 xmlWriter.endElement();
31 xmlWriter.endElement();
32
33 String expected = "<hello><world><one>potato</one><two>potatae</two></world></hello>";
34
35 assertEquals(expected, stringWriter.toString());
36 }
37
38 public void testEncodesFunnyXmlChars() {
39 xmlWriter.startElement("tag");
40 xmlWriter.writeText("hello & this isn't \"really\" <good>");
41 xmlWriter.endElement();
42
43 String expected = "<tag>hello & this isn't \"really\" <good></tag>";
44
45 assertEquals(expected, stringWriter.toString());
46 }
47
48 public void testAttributesCanBeWritten() {
49 xmlWriter.startElement("tag");
50 xmlWriter.addAttribute("hello", "world");
51 xmlWriter.startElement("inner");
52 xmlWriter.addAttribute("foo", "bar");
53 xmlWriter.addAttribute("poo", "par");
54 xmlWriter.writeText("hi");
55 xmlWriter.endElement();
56 xmlWriter.endElement();
57
58 String expected = "" +
59 "<tag hello=\"world\">" +
60 "<inner foo=\"bar\" poo=\"par\">hi</inner>" +
61 "</tag>";
62
63 assertEquals(expected, stringWriter.toString());
64 }
65
66 }
This page was automatically generated by Maven