/*
* Copyright (c) 2012 Isode Limited, London, England.
* All rights reserved.
*/
/*
* Copyright (c) 2010 Remko Tronçon
* All rights reserved.
*/
package com.isode.stroke.serializer.xml;
import static org.junit.Assert.assertEquals;
import java.util.ArrayList;
import java.util.List;
import org.junit.BeforeClass;
import org.junit.Test;
public class XMLElementTest {
@Test
public void testSerialize() {
XMLElement testling = new XMLElement("foo", "http://example.com");
testling.setAttribute("myatt", "myval");
XMLElement barElement = new XMLElement("bar");
barElement.addNode(new XMLTextNode("Blo"));
testling.addNode(barElement);
XMLElement bazElement = new XMLElement("baz");
bazElement.addNode(new XMLTextNode("Bli&"));
testling.addNode(bazElement);
String result = testling.serialize();
String expectedResult =
""
+ "Blo"
+ "Bli&</stream>"
+ "";
assertEquals(expectedResult, result);
}
@Test
public void testSerialize_NoChildren() {
XMLElement testling = new XMLElement("foo", "http://example.com");
assertEquals("", testling.serialize());
}
@Test
public void testSerialize_SpecialAttributeCharacters() {
XMLElement testling = new XMLElement("foo");
testling.setAttribute("myatt", "<\"'&>");
assertEquals("", testling.serialize());
}
@Test
public void testSerialize_EmptyAttributeValue() {
XMLElement testling = new XMLElement("foo");
testling.setAttribute("myatt", "");
assertEquals("", testling.serialize());
}
}