Yii2 framework backup
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

49 lines
1.4 KiB

<?php
namespace yiiunit\extensions\gii;
use Yii;
use yiiunit\TestCase;
Yii::setAlias('@yii/gii', __DIR__ . '/../../../../extensions/gii');
/**
* GiiTestCase is the base class for all gii related test cases
*/
class GiiTestCase extends TestCase
{
protected $driverName = 'sqlite';
public function setUp()
{
$databases = self::getParam('databases');
$config = $databases[$this->driverName];
$pdo_database = 'pdo_'.$this->driverName;
if (!extension_loaded('pdo') || !extension_loaded($pdo_database)) {
$this->markTestSkipped('pdo and '.$pdo_database.' extension are required.');
}
$this->mockApplication([
'components' => [
'db' => [
'class' => isset($config['class']) ? $config['class'] : 'yii\db\Connection',
'dsn' => $config['dsn'],
'username' => isset($config['username']) ? $config['username'] : null,
'password' => isset($config['password']) ? $config['password'] : null,
],
],
]);
if(isset($config['fixture'])) {
Yii::$app->db->open();
$lines = explode(';', file_get_contents($config['fixture']));
foreach ($lines as $line) {
if (trim($line) !== '') {
Yii::$app->db->pdo->exec($line);
}
}
}
}
}