Model Test
Der Model Test dient dazu, operationen auf Models und Dataobjects zu testen, ohne dafür eine Extra action zu haben. Dies ist zum Beispiel sinnvoll, um komplexere Abfolgen mit Laden/Speichern/Löschen zu testen. Als Gegenkontrolle dient immer ein direktes SQL Statement. Um dem Tester den Umgang damit zu vereinfachen gibt es ein paar spezielle Asserts
Asserts
- assertDoPersistant($do)
- Stellt sicher, dass das DO mit dieser ID auch in der Datenbank steht. Der Inhelt jedes einzelnen Feldes wird ebenfalls verglichen
- assertDoEquals($do1, $do2)
- Stellt sicher, dass das DO 1 mit DO 2 identisch ist.
Daten-XML
Der automatische Import von Daten-Mocks via XML ist wie von PHPUnit vorgesehen auch möglich. Hierzu wird auf den Model Test im Kickstart Modul verwiesen.Beispiel
<?php
/**
* Insert a dummy do into database
*/
public function testInsert() {
/* Create new DO */
$do = $this->getModel()->create(Array(
'isbn' => 5678,
'title' => 'My title',
'author' => 'Nobody',
'date' => '1.4.2009',
));
$id = $do->save();
/* Check if do was saved correctly */
$this->assertDoPersistant($do);
$this->assertEquals($id>0, true);
$this->assertEquals($do->id, $id);
}
?>