Не подскажите какой наиболее сейчас годный шаблон чтобы покрыть свое расширение тестами?
В документации к yii2 нашел только общие слова.
Понимаю что есть примеры готового, но оно все разнится, и не всегда понятно как запускать, наполнять фикстурами. Работать надо с БД и AR.
1) Кто то смотрю с codeception пытается, кто то просто с PhpUnit (причем кто то с phpunit/dbunit, а другие без, т.к. уже не поддерживается). Что лучше и когда?
Вот если взять этот способ:
https://github.com/yii2tech/ar-variatio ... se.php#L32
Код: Выделить всё
protected function mockApplication($config = [], $appClass = '\yii\console\Application')
{
new $appClass(ArrayHelper::merge([
'id' => 'testapp',
'basePath' => __DIR__,
'vendorPath' => $this->getVendorPath(),
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'sqlite::memory:',
],
],
], $config));
}
3) Пойдет что ли если только для вот этой sqlite::memory сделать?
4) И структуру вручную тоже(без миграций) самому создавать?
Код: Выделить всё
protected function setupTestDbData()
{
$db = Yii::$app->getDb();
// Structure :
$table = 'Language';
$columns = [
'id' => 'pk',
'name' => 'string',
'locale' => 'string',
];
$db->createCommand()->createTable($table, $columns)->execute();