2009-10-01 149 views
10

我想創建一個空的測試表。從digitalsandwich使用示例,我想是這樣的:PHPUnit數據庫擴展 - 如何創建一個空數據集?

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 
    } 
} 

我應該使用比createFlatXMLDataSet不同的方法()?要麼???

回答

22

好吧,我想通了:

... 
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

我只是想補充一點,這是不正確的了較新版本。我認爲自PHPUnit 6.0以來,他們在這裏使用命名空間:'返回新的PHPUnit \ DbUnit \ DataSet \ DefaultDataSet();' –