public function testXmlWriteFile() { $tmpfname = tempnam("/tmp", "XMLTEST"); file_put_contents($tmpfname, "<trl></trl>"); $model = new Kwf_Model_Xml(array('xpath' => '/trl', 'topNode' => 'text', 'filepath' => $tmpfname)); //check ob file geladen $this->assertTrue((bool) strpos($model->getXmlContentString(), '<trl/>')); $r1 = $model->createRow(array('en' => 'english', 'de' => 'englisch')); $r1->save(); $this->assertEquals(1, $model->getRows()->count()); $r2 = $model->getRow(1); $this->assertEquals('englisch', $r2->de); $this->assertTrue($r1 === $r2); $r2->en = "american"; $this->assertEquals('american', $r1->en); $r3 = $model->createRow(array('en' => 'german', 'de' => 'deutsch')); $r3->save(); $this->assertEquals(2, $model->getRows()->count()); $r4 = $model->getRow(2); $this->assertEquals('deutsch', $r4->de); $r2->delete(); $this->assertEquals(1, $model->getRows()->count()); //check ob der file richtig geschrieben wurde $contents = file_get_contents($tmpfname); $simpleXml = new SimpleXMLElement($contents); $xml = $simpleXml->asXML(); $this->assertTrue((bool) strpos($xml, '<en>german</en>')); $this->assertTrue((bool) strpos($xml, '<de>deutsch</de>')); $this->assertFalse((bool) strpos($xml, '<en>english</en>')); $this->assertFalse((bool) strpos($xml, '<de>englisch</de>')); unlink($tmpfname); }