1*a1a3b679SAndreas Boehler<?php 2*a1a3b679SAndreas Boehler 3*a1a3b679SAndreas Boehlernamespace Sabre\DAV\Xml; 4*a1a3b679SAndreas Boehler 5*a1a3b679SAndreas Boehleruse Sabre\Xml\Writer; 6*a1a3b679SAndreas Boehleruse Sabre\Xml\Reader; 7*a1a3b679SAndreas Boehler 8*a1a3b679SAndreas Boehlerabstract class XmlTest extends \PHPUnit_Framework_TestCase { 9*a1a3b679SAndreas Boehler 10*a1a3b679SAndreas Boehler protected $elementMap = []; 11*a1a3b679SAndreas Boehler protected $namespaceMap = ['DAV:' => 'd']; 12*a1a3b679SAndreas Boehler protected $contextUri = '/'; 13*a1a3b679SAndreas Boehler 14*a1a3b679SAndreas Boehler function write($input) { 15*a1a3b679SAndreas Boehler 16*a1a3b679SAndreas Boehler $writer = new Writer(); 17*a1a3b679SAndreas Boehler $writer->contextUri = $this->contextUri; 18*a1a3b679SAndreas Boehler $writer->namespaceMap = $this->namespaceMap; 19*a1a3b679SAndreas Boehler $writer->openMemory(); 20*a1a3b679SAndreas Boehler $writer->setIndent(true); 21*a1a3b679SAndreas Boehler $writer->write($input); 22*a1a3b679SAndreas Boehler return $writer->outputMemory(); 23*a1a3b679SAndreas Boehler 24*a1a3b679SAndreas Boehler } 25*a1a3b679SAndreas Boehler 26*a1a3b679SAndreas Boehler function parse($xml, array $elementMap = []) { 27*a1a3b679SAndreas Boehler 28*a1a3b679SAndreas Boehler $reader = new Reader(); 29*a1a3b679SAndreas Boehler $reader->elementMap = array_merge($this->elementMap, $elementMap); 30*a1a3b679SAndreas Boehler $reader->xml($xml); 31*a1a3b679SAndreas Boehler return $reader->parse(); 32*a1a3b679SAndreas Boehler 33*a1a3b679SAndreas Boehler } 34*a1a3b679SAndreas Boehler 35*a1a3b679SAndreas Boehler function cleanUp() { 36*a1a3b679SAndreas Boehler 37*a1a3b679SAndreas Boehler libxml_clear_errors(); 38*a1a3b679SAndreas Boehler 39*a1a3b679SAndreas Boehler } 40*a1a3b679SAndreas Boehler 41*a1a3b679SAndreas Boehler} 42