NetBull
Erfahrenes Mitglied
Hi,
ich arbeite mit phpUnit und habe eine Klasse die mir eine abstrakte Klasse wegmocken soll. Beide heissen gleich sind nur in anderen Strukturen.
Konzept:
../MockedUnits/BaseObject/BaseObject.php
../PhpUnits/BaseObject/BaseObject.php
Nun kommt es beim Testen einzelner Klassen zu keinem Problem. Da ich im Kopf jeder Test-Klasse so was habe:
Effekt:
Nun kann ich je nach Bedarf entweder mit den echten Klassen testen (integration tests) oder mit den gemockten Klassen (unit test).
Problem:
Nur das ich an und wann ein cannot redeclare bekomme..
Frage:
Kann ich mit irgendeinem Befehl alle bekannten Klassen löschen? Oder ein redeclare erzwingen?
cu deAndro....
ich arbeite mit phpUnit und habe eine Klasse die mir eine abstrakte Klasse wegmocken soll. Beide heissen gleich sind nur in anderen Strukturen.
Konzept:
../MockedUnits/BaseObject/BaseObject.php
../PhpUnits/BaseObject/BaseObject.php
Nun kommt es beim Testen einzelner Klassen zu keinem Problem. Da ich im Kopf jeder Test-Klasse so was habe:
Code:
$mPathToMockedClasses = getenv("PathToMockedUnits");
$PathToRealUnits = getenv("PathToRealUnits");
if( empty( $mPathToMockedClasses ) ){
$mFile = __FILE__;
$mFile = str_replace("\\", "/", $mFile);
$mPos = strpos($mFile, "/PhpUnits/");
$mFile = substr($mFile, 0, $mPos);
$mPathToMockedClasses = $mFile . "/MockedUnits";
$PathToRealUnits = $mFile . "/PhpUnits";
}
include_once ($mPathToMockedClasses . "/BaseObject/BaseObject.php");
include_once ($mPathToMockedClasses . "/Page/Page.php");
include_once ($mPathToMockedClasses . "/DocType/DocType.php");
include_once ($mPathToMockedClasses . "/PageHeader/PageHeader.php");
include_once ($mPathToMockedClasses . "/PageBody/PageBody.php");
include_once ("WebDocument.php");
class WebDocumentTest extends PHPUnit_Framework_TestCase{
public function setUp(){}
public function testConstruction(){
$o=new WebDocument();
$this->assertTrue($o->isMocked());
$this->assertSame(4, $o->getCounter());
}.....
Effekt:
Nun kann ich je nach Bedarf entweder mit den echten Klassen testen (integration tests) oder mit den gemockten Klassen (unit test).
Problem:
Nur das ich an und wann ein cannot redeclare bekomme..
Frage:
Kann ich mit irgendeinem Befehl alle bekannten Klassen löschen? Oder ein redeclare erzwingen?
cu deAndro....