Blame examples/cppunittest/XmlElementTest.cpp

Packit 8c9aa0
#include <cppunit/config/SourcePrefix.h>
Packit 8c9aa0
#include <cppunit/tools/XmlElement.h>
Packit 8c9aa0
#include "ToolsSuite.h"
Packit 8c9aa0
#include "XmlElementTest.h"
Packit 8c9aa0
#include "XmlUniformiser.h"
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( XmlElementTest, 
Packit 8c9aa0
                                       toolsSuiteName() );
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
XmlElementTest::XmlElementTest()
Packit 8c9aa0
{
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
XmlElementTest::~XmlElementTest()
Packit 8c9aa0
{
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::setUp()
Packit 8c9aa0
{
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::tearDown()
Packit 8c9aa0
{
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testStringContentConstructor()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement element( "aName", "someContent" );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( std::string("aName"), element.name() );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( std::string("someContent"), element.content() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testNumericContentConstructor()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement element( "numericName", 123456789 );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( std::string("numericName"), element.name() );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( std::string("123456789"), element.content() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testSetName()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement element( "aName" );
Packit 8c9aa0
  element.setName( "anotherName" );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( std::string("anotherName"), element.name() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testSetStringContent()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement element( "aName", "someContent" );
Packit 8c9aa0
  element.setContent( "other" );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( std::string("other"), element.content() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testSetNumericContent()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement element( "aName", "someContent" );
Packit 8c9aa0
  element.setContent( 87654321 );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( std::string("87654321"), element.content() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementCount()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element", "content" );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( 0, node.elementCount() );
Packit 8c9aa0
Packit 8c9aa0
  node.addElement( new CPPUNIT_NS::XmlElement( "child1" ) );
Packit 8c9aa0
  node.addElement( new CPPUNIT_NS::XmlElement( "child2" ) );
Packit 8c9aa0
  CPPUNIT_ASSERT_EQUAL( 2, node.elementCount() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementAtNegativeIndexThrow()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element" );
Packit 8c9aa0
  node.elementAt( -1 );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementAtTooLargeIndexThrow()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element" );
Packit 8c9aa0
  node.elementAt( 0 );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementAt()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element" );
Packit 8c9aa0
  CPPUNIT_NS::XmlElement *element1 = new CPPUNIT_NS::XmlElement( "element1" );
Packit 8c9aa0
  CPPUNIT_NS::XmlElement *element2 = new CPPUNIT_NS::XmlElement( "element2" );
Packit 8c9aa0
  node.addElement( element1 );
Packit 8c9aa0
  node.addElement( element2 );
Packit 8c9aa0
Packit 8c9aa0
  CPPUNIT_ASSERT( element1 == node.elementAt(0) );
Packit 8c9aa0
  CPPUNIT_ASSERT( element2 == node.elementAt(1) );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementForThrow()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element" );
Packit 8c9aa0
  node.addElement( new CPPUNIT_NS::XmlElement( "element1" ) );
Packit 8c9aa0
  node.elementFor( "name2" );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementFor()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element" );
Packit 8c9aa0
  CPPUNIT_NS::XmlElement *element1 = new CPPUNIT_NS::XmlElement( "element1" );
Packit 8c9aa0
  CPPUNIT_NS::XmlElement *element2 = new CPPUNIT_NS::XmlElement( "element2" );
Packit 8c9aa0
  node.addElement( element1 );
Packit 8c9aa0
  node.addElement( element2 );
Packit 8c9aa0
Packit 8c9aa0
  CPPUNIT_ASSERT( element2 == node.elementFor( "element2" ) );
Packit 8c9aa0
  CPPUNIT_ASSERT( element1 == node.elementFor( "element1" ) );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testEmptyNodeToString()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element" );
Packit 8c9aa0
  std::string expectedXml = "<element></element>";
Packit 8c9aa0
  CPPUNITTEST_ASSERT_XML_EQUAL( expectedXml, node.toString() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementWithAttributesToString()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element" );
Packit 8c9aa0
  node.addAttribute( "id", 17 );
Packit 8c9aa0
  node.addAttribute( "date-format", "iso-8901" );
Packit 8c9aa0
  std::string expectedXml = "
Packit 8c9aa0
                            "date-format=\"iso-8901\">"
Packit 8c9aa0
                            "</element>";
Packit 8c9aa0
  CPPUNITTEST_ASSERT_XML_EQUAL( expectedXml, node.toString() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testEscapedAttributeValueToString()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element" );
Packit 8c9aa0
  node.addAttribute( "escaped", "&<>\"'" );
Packit 8c9aa0
  std::string expectedXml = "
Packit 8c9aa0
                            "&<>"'"
Packit 8c9aa0
                            "\"></element>";
Packit 8c9aa0
  CPPUNITTEST_ASSERT_XML_EQUAL( expectedXml, node.toString() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementToStringEscapeContent()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element", "ChessTest<class Chess>" );
Packit 8c9aa0
  std::string expectedXml = "<element>"
Packit 8c9aa0
                            "ChessTest<class Chess>"
Packit 8c9aa0
                            "</element>";
Packit 8c9aa0
  CPPUNITTEST_ASSERT_XML_EQUAL( expectedXml, node.toString() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementWithChildrenToString()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element" );
Packit 8c9aa0
  node.addElement( new CPPUNIT_NS::XmlElement( "child1" ) );
Packit 8c9aa0
  node.addElement( new CPPUNIT_NS::XmlElement( "child2" ) );
Packit 8c9aa0
  std::string expectedXml = "<element><child1></child1>"
Packit 8c9aa0
                            "<child2></child2></element>";
Packit 8c9aa0
  CPPUNITTEST_ASSERT_XML_EQUAL( expectedXml, node.toString() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementWithContentToString()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element", "content\nline2" );
Packit 8c9aa0
  std::string expectedXml = "<element>content\nline2</element>";
Packit 8c9aa0
  CPPUNITTEST_ASSERT_XML_EQUAL( expectedXml, node.toString() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementWithNumericContentToString()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element", 123456789 );
Packit 8c9aa0
  std::string expectedXml = "<element>123456789</element>";
Packit 8c9aa0
  CPPUNITTEST_ASSERT_XML_EQUAL( expectedXml, node.toString() );
Packit 8c9aa0
}
Packit 8c9aa0
Packit 8c9aa0
Packit 8c9aa0
void 
Packit 8c9aa0
XmlElementTest::testElementWithContentAndChildToString()
Packit 8c9aa0
{
Packit 8c9aa0
  CPPUNIT_NS::XmlElement node( "element", "content" );
Packit 8c9aa0
  node.addElement( new CPPUNIT_NS::XmlElement( "child1" ) );
Packit 8c9aa0
  std::string expectedXml = "<element><child1></child1>content</element>";
Packit 8c9aa0
  CPPUNITTEST_ASSERT_XML_EQUAL( expectedXml, node.toString() );
Packit 8c9aa0
}