Вот упрощенный тест с методами setUp
и tearDown
:
class FooTest extends TestCase
{
private $dbFile;
public function setUp()
{
$this->dbFile = 'test.db';
if (!file_exists($this->dbFile)) {
$pdo = new \PDO('sqlite:'.$this->dbFile);
$pdo->query('
CREATE TABLE `Users` (
`id` INTEGER PRIMARY KEY AUTOINCREMENT,
`foo` TEXT
)');
}
}
public function tearDown()
{
if (file_exists($this->dbFile))
unlink($this->dbFile);
}
public function testFoo()
{
// ...
}
}
Теоретически это выглядит хорошо, но я получаю ошибку unlink(test.db): Text file busy
.
Любые идеио том, как правильно удалить sqlite DB для tearDown()
метода в PHPUnit?