From fdb122f2da9e36dd41243a69e8ea9eec20ad3a1d Mon Sep 17 00:00:00 2001
From: tof <>
Date: Wed, 27 Jun 2007 11:51:32 +0000
Subject: Add unit test for TXmlDocument and TXmlElementList
---
tests/unit/Xml/TXmlDocumentTest.php | 58 +++++++++++++++++++++++++++++++++----
1 file changed, 52 insertions(+), 6 deletions(-)
(limited to 'tests/unit/Xml/TXmlDocumentTest.php')
diff --git a/tests/unit/Xml/TXmlDocumentTest.php b/tests/unit/Xml/TXmlDocumentTest.php
index b47f735d..8766b231 100644
--- a/tests/unit/Xml/TXmlDocumentTest.php
+++ b/tests/unit/Xml/TXmlDocumentTest.php
@@ -9,27 +9,73 @@ Prado::using('System.Xml.TXmlDocument');
class TXmlDocumentTest extends PHPUnit_Framework_TestCase {
public function testConstruct() {
- throw new PHPUnit_Framework_IncompleteTestError();
+ $xmldoc=new TXmlDocument ('1.0', 'utf-8');
+ self::assertEquals('1.0', $xmldoc->getVersion());
+ self::assertEquals('utf-8', $xmldoc->getEncoding());
}
public function testSetVersion() {
- throw new PHPUnit_Framework_IncompleteTestError();
+ $xmldoc=new TXmlDocument ('1.0', 'utf-8');
+ self::assertEquals('1.0', $xmldoc->getVersion());
+ $xmldoc->setVersion('2.0');
+ self::assertEquals('2.0', $xmldoc->getVersion());
}
public function testSetEncoding() {
- throw new PHPUnit_Framework_IncompleteTestError();
+ $xmldoc=new TXmlDocument ('1.0', 'utf-8');
+ self::assertEquals('utf-8', $xmldoc->getEncoding());
+ $xmldoc->setEncoding('iso8859-1');
+ self::assertEquals('iso8859-1', $xmldoc->getEncoding());
}
public function testLoadFromFile() {
- throw new PHPUnit_Framework_IncompleteTestError();
+ $file=dirname(__FILE__).'/data/test.xml';
+ $xmldoc=new TXmlDocument();
+ try {
+ $xmldoc->loadFromFile('unexistentXmlFile.xml');
+ self::fail('Expected TIOException not thrown');
+ } catch (TIOException $e) {}
+
+ self::assertTrue($xmldoc->loadFromFile($file));
+ self::assertEquals('1.0', $xmldoc->getVersion());
+ self::assertEquals('UTF-8',$xmldoc->getEncoding());
}
public function testLoadFromString() {
- throw new PHPUnit_Framework_IncompleteTestError();
+ $xmlStr='';
+ $xmldoc=new TXmlDocument();
+ self::assertTrue($xmldoc->loadFromString($xmlStr));
+ self::assertEquals('1.0', $xmldoc->getVersion());
+ self::assertEquals('UTF-8',$xmldoc->getEncoding());
}
public function testSaveToString() {
- throw new PHPUnit_Framework_IncompleteTestError();
+ $xmldoc=new TXmlDocument('1.0','utf-8');
+ $xmldoc->setTagName('root');
+ $node=new TXmlElement('node');
+ $node->setAttribute('param','attribute1');
+ $xmldoc->getElements()->add($node);
+ $xmlString=$xmldoc->saveToString();
+ // test magic method
+ $magicString=(string)$xmldoc;
+ self::assertEquals($magicString,$xmlString);
+ // Result string should be :
+ $resultString="\n\n ";
+ self::assertEquals($xmlString, $magicString);
+
+ }
+
+ public function testSaveToFile() {
+ $file=dirname(__FILE__).'/data/tmp.xml';
+ if (!is_writable(dirname($file))) self::markTestSkipped(dirname($file).' must be writable for this test');
+ $xmldoc=new TXmlDocument('1.0','utf-8');
+ $xmldoc->setTagName('root');
+ $node=new TXmlElement('node');
+ $node->setAttribute('param','attribute1');
+ $xmldoc->getElements()->add($node);
+ $xmldoc->saveToFile($file);
+ self::assertTrue(is_file($file));
+ if (is_file($file)) unlink ($file);
}
}
?>
--
cgit v1.2.3