<?php require_once dirname(__FILE__).'/../phpunit.php'; Prado::using('System.Xml.TXmlDocument'); /** * @package System.Xml */ class TXmlElementTest extends PHPUnit_Framework_TestCase { public function setUp() { } public function testConstruct() { $element = new TXmlElement('tag'); self::assertEquals('tag', $element->getTagName()); } public function testSetParent() { $parent = new TXmlElement('parent'); $child = new TXmlElement('child'); $child->setParent($parent); self::assertEquals($parent, $child->getParent()); } public function testSetTagName() { $element = new TXmlElement('tag'); $element->setTagName('newtag'); self::assertEquals('newtag', $element->getTagName()); } public function testSetValue() { $element = new TXmlElement('tag'); $element->setValue('value'); self::assertEquals('value', $element->getValue()); } public function testHasElement() { $element = new TXmlElement('first'); self::assertEquals(false, $element->getHasElement()); $element->Elements[] = new TXmlElement('second'); self::assertEquals(true, $element->getHasElement()); } public function testHasAttribute() { $element = new TXmlElement('tag'); self::assertEquals(false, $element->getHasAttribute()); $element->Attributes[] = new TMap(array('key' => 'value')); self::assertEquals(true, $element->getHasAttribute()); } public function testSetAttribute() { $element = new TXmlElement('tag'); self::assertEquals(null, $element->getAttribute('key')); $element->setAttribute('key', 'value'); self::assertEquals('value', $element->getAttribute('key')); } public function testGetElementByTagName() { $element = new TXmlElement('tag'); self::assertEquals(null, $element->getElementByTagName('first')); $element->Elements[] = new TXmlElement('first'); $first = $element->getElementByTagName('first'); self::assertType('TXmlElement', $first); self::assertEquals('first', $first->getTagName()); } public function testGetElementsByTagName() { $element = new TXmlElement('tag'); $element->Elements[] = new TXmlElement('tag'); $element->Elements[] = new TXmlElement('tag'); self::assertEquals(2, count($element->getElementsByTagName('tag'))); } public function testToString() { $element = new TXmlElement('tag'); self::assertEquals('<tag />', (string)$element); $element->setAttribute('key', 'value'); self::assertEquals('<tag key="value" />', (string)$element); $element->setValue('value'); self::assertEquals('<tag key="value">value</tag>', (string)$element); } } ?>