2009-10-01 8 views
10

Chcę utworzyć tabelę testową, która jest pusta. Na przykładzie z digitalsandwich, chcę coś takiego:Rozszerzenie bazy danych PHPUnit - Jak uzyskać pusty zbiór danych?

require_once 'PHPUnit/Extensions/Database/TestCase.php'; 
class BankAccountDBTest extends PHPUnit_Extensions_Database_TestCase 
{ 
    protected $pdo; 

    public function __construct() 
    { 
     $this->pdo = new PDO('sqlite::memory:'); 
     BankAccount::createTable($this->pdo); 
    } 

    protected function getConnection() 
    { 
     return $this->createDefaultDBConnection($this->pdo, 'sqlite'); 
    } 

    protected function getDataSet() 
    { 
     return $this->createFlatXMLDataSet(dirname(__FILE__).'/_files/empty-seed.xml'); 
    } 

    public function testEmptyTableBehavior() 
    { 
     // test stuff 
    } 
} 

powinienem być przy użyciu innej metody niż createFlatXMLDataSet()? Lub???

Odpowiedz

22

Ok, ja zorientowaliśmy się:

... 
require_once 'PHPUnit/Extensions/Database/DataSet/DefaultDataSet.php'; 
class BankAccountDBTest extends PHPUnit_Extensions_Database_TestCase 
{ 
... 
    protected function getDataSet() 
    { 
     return new PHPUnit_Extensions_Database_DataSet_DefaultDataSet(); 
    } 
+2

Chciałem tylko dodać, że nie jest to już prawdą dla nowszych wersjach. Myślę, że od PHPUnit 6.0 używają tutaj przestrzeni nazw: 'return new PHPUnit \ DbUnit \ DataSet \ DefaultDataSet();' –

Powiązane problemy