diff options
author | xue <> | 2005-11-10 12:47:19 +0000 |
---|---|---|
committer | xue <> | 2005-11-10 12:47:19 +0000 |
commit | 55c4ac1bfe565f1ca7f537fdd8b7a201be28e581 (patch) | |
tree | a0599d5e36fdbb3f1e169ae56bab7d529597e3eb /tests/UnitTests/framework/Data/utXmlDocument.php |
Initial import of prado framework
Diffstat (limited to 'tests/UnitTests/framework/Data/utXmlDocument.php')
-rw-r--r-- | tests/UnitTests/framework/Data/utXmlDocument.php | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/tests/UnitTests/framework/Data/utXmlDocument.php b/tests/UnitTests/framework/Data/utXmlDocument.php new file mode 100644 index 00000000..f66a4f2d --- /dev/null +++ b/tests/UnitTests/framework/Data/utXmlDocument.php @@ -0,0 +1,68 @@ +<?php
+
+require_once(dirname(__FILE__).'/../common.php');
+
+class utXmlDocument extends UnitTestCase
+{
+ public function setUp()
+ {
+ }
+
+ public function tearDown()
+ {
+ }
+
+ public function testLoadAndSave()
+ {
+ $dir=dirname(__FILE__).'/xml';
+
+ // a regular XML file
+ $doc=new TXmlDocument;
+ $doc->loadFromFile($dir.'/data1.xml');
+ $doc->saveToFile($dir.'/data1.xml.tmp');
+ $this->assertTrue($this->compareFiles($dir.'/data1.xml.tmp',$dir.'/data1.xml.out'));
+ @unlink($dir.'/data1.xml.tmp');
+
+ // an XML file with Chinese characters
+ $doc->loadFromFile($dir.'/data2.xml');
+ $doc->saveToFile($dir.'/data2.xml.tmp');
+ $this->assertTrue($this->compareFiles($dir.'/data2.xml.tmp',$dir.'/data2.xml.out'));
+ @unlink($dir.'/data2.xml.tmp');
+
+ // a typical Prado Application configuration file
+ $doc=new TXmlDocument;
+ $doc->loadFromFile($dir.'/data3.xml');
+ $doc->saveToFile($dir.'/data3.xml.tmp');
+ $this->assertTrue($this->compareFiles($dir.'/data3.xml.tmp',$dir.'/data3.xml.out'));
+ @unlink($dir.'/data3.xml.tmp');
+ }
+
+ protected function compareFiles($file1,$file2)
+ {
+ return file_get_contents($file1)===file_get_contents($file2);
+ }
+
+ public function testAccessDomTree()
+ {
+ $dir=dirname(__FILE__).'/xml';
+ $doc=new TXmlDocument;
+ $doc->loadFromFile($dir.'/data1.xml');
+ $this->assertTrue($doc->getVersion()==='1.0');
+ $this->assertTrue($doc->getEncoding()==='utf-8');
+ $this->assertTrue($doc->getElements()->getCount()===2);
+ $this->assertTrue($doc->getElements()->itemAt(0)->getTagName()==='title');
+ $this->assertTrue($doc->getElements()->itemAt(0)->getValue()==='My lists');
+ $this->assertTrue($doc->getElements()->itemAt(1)->getTagName()==='chapter');
+ $this->assertTrue($doc->getElements()->itemAt(1)->getAttribute('id')==='books');
+ }
+
+ public function testUpdateDomTree()
+ {
+ }
+
+ public function testComposeDomTree()
+ {
+ }
+}
+
+?>
\ No newline at end of file |