Subversion Repositories DevTools

Rev

Rev 6914 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
6914 dpurdie 1
package com.erggroup.buildtool.utf;
2
 
3
import static org.junit.Assert.*;
4
 
5
import org.junit.Test;
6
 
7
import com.erggroup.buildtool.utilities.XmlBuilder;
8
 
9
public class XmlBuilderTest {
10
	private static final  String mlf = new String( System.getProperty("line.separator") );
11
 
12
	@Test
13
    public void BasicXmlElement()
14
    {
15
		XmlBuilder element = new XmlBuilder("test1");
16
		assertTrue(element.toString("  ").equals("  <test1/>" + mlf));
17
    }
18
 
19
	@Test
20
    public void XmlWith1Attribute()
21
    {
22
		XmlBuilder element = new XmlBuilder("test2");
23
		element.addAttribute("attr1", "value1");
24
		assertTrue(element.toString("  ").equals("  <test2 attr1=\"value1\"/>" + mlf));
25
    }
26
 
27
	@Test
28
    public void XmlWithIntAttribute()
29
    {
30
		XmlBuilder element = new XmlBuilder("test2");
31
		element.addAttribute("attr1", 1234);
32
		assertTrue(element.toString("  ").equals("  <test2 attr1=\"1234\"/>" + mlf));
33
    }
34
 
35
 
36
	@Test
37
    public void XmlWithLongAttribute()
38
    {
39
		XmlBuilder element = new XmlBuilder("test2");
40
		element.addAttribute("attr1", 12345671234567890L);
41
		assertTrue(element.toString("  ").equals("  <test2 attr1=\"12345671234567890\"/>" + mlf));
42
    }
43
 
44
	@Test
45
    public void XmlWith2Attribute()
46
    {
47
		XmlBuilder element = new XmlBuilder("test3");
48
		element.addAttribute("attr1", "value1").addAttribute("attr2", "value2");
49
		assertTrue(element.toString("  ").equals("  <test3 attr1=\"value1\" attr2=\"value2\"/>" + mlf));
50
    }
51
 
52
	@Test
53
    public void XmlWith1Element()
54
    {
55
		XmlBuilder element = new XmlBuilder("test4");
56
		XmlBuilder element1 = new XmlBuilder("testa");
57
		element.addAttribute("attr1", "value1");
58
		element1.addAttribute("attr2", "value2");
59
		element.addElement(element1);
60
 
61
		String expect = "  <test4 attr1=\"value1\">" + mlf +
62
				        "    <testa attr2=\"value2\"/>" + mlf +
63
				        "  </test4>" +mlf;
64
 
65
		assertTrue(element.toString("  ").equals(expect));
66
    }
67
 
68
	@Test
69
    public void XmlWith2Element()
70
    {
71
		XmlBuilder element = new XmlBuilder("test4");
72
		XmlBuilder element1 = new XmlBuilder("testa");
73
		XmlBuilder element2 = new XmlBuilder("testb");
74
		element.addAttribute("attr1", "value1");
75
		element1.addAttribute("attr2", "value2");
76
		element2.addAttribute("attr3", "value3");
77
		element.addElement(element1).addElement(element2);
78
 
79
		String expect = "  <test4 attr1=\"value1\">" + mlf +
80
				        "    <testa attr2=\"value2\"/>" + mlf +
81
				        "    <testb attr3=\"value3\"/>" + mlf +
82
				        "  </test4>" +mlf;
83
 
84
		assertTrue(element.toString("  ").equals(expect));
85
    }
86
 
87
	@Test
88
	public void XmlWithComment()
89
	{
90
		XmlBuilder element = new XmlBuilder("testc").isComment();
91
		//System.out.println("testx:" + mlf +element.toString());
92
		assertTrue(element.toString("  ").equals("  <!-- testc -->" + mlf));
93
	}
94
 
95
	@Test
96
    public void XmlMixed()
97
    {
98
		XmlBuilder element = new XmlBuilder("test4");
99
		XmlBuilder element1 = new XmlBuilder("testa");
100
		XmlBuilder element2 = new XmlBuilder("testb");
101
		XmlBuilder element3 = new XmlBuilder("testc");
102
		XmlBuilder elementc = new XmlBuilder("This is a comment").isComment();
103
 
104
		element.addAttribute("attr1", "value1");
105
		element1.addAttribute("attr2", "value2");
106
		element2.addAttribute("attr3", "value3");
107
		element3.addAttribute("attr4", "value4").addAttribute("attr5", "value6");
108
		element.addElement(elementc).addElement(element1).addElement(element2);
109
		element1.addElement(element3);
110
 
111
 
112
		String expect = "  <test4 attr1=\"value1\">" + mlf +
113
				        "    <!-- This is a comment -->"  + mlf +
114
				        "    <testa attr2=\"value2\">" + mlf +
115
				        "      <testc attr4=\"value4\" attr5=\"value6\"/>" + mlf +
116
				        "    </testa>" + mlf +
117
				        "    <testb attr3=\"value3\"/>" + mlf +
118
				        "  </test4>" +mlf;
119
		//System.out.println("testx:" + mlf +element.toString("  "));
120
		//System.out.println("teste:" + mlf +expect);
121
		assertTrue(element.toString("  ").equals(expect));
122
    }
123
 
124
	@Test
125
    public void XmlMixedConcat()
126
    {
127
		XmlBuilder element = new XmlBuilder("test4");
128
		element.addAttribute("attr1", "value1")
129
			.addNewElement("testa")
130
				.addAttribute("attr2", "value2")
131
			.addComment("This is a comment")
132
			.addNewElement("testb")
133
			    .addAttribute("attr3", "value3")
134
			    .addAttribute("attr4", "value4")
135
		;
136
 
137
		String expect = "  <test4 attr1=\"value1\">" + mlf +
138
				        "    <testa attr2=\"value2\">" + mlf +
139
				        "      <!-- This is a comment -->" + mlf +
140
				        "      <testb attr3=\"value3\" attr4=\"value4\"/>" + mlf +
141
				        "    </testa>" + mlf+
142
				        "  </test4>" +mlf;
143
		//System.out.println("testx:" + mlf +element.toString("  "));
144
		//System.out.println("teste:" + mlf +expect);
145
		assertTrue(element.toString("  ").equals(expect));
146
    }
147
 
148
}