Если разместить вызов "fs->write" в модели, и делать запрос через web все работает, если дергать эту модель из PHPUnit - ошибка.
Догадываюсь, что после подключения конфига, нужно как-то инициализировать компонент, но как не понимаю.
Код теста:
Код: Выделить всё
<?php
namespace tests;
require_once(__DIR__ . '/../_bootstrap.php');
use Yii;
use backend\modules\core\models\Files;
class FilesystemTest extends \PHPUnit\Framework\TestCase
{
public function testSafeFile()
{
Yii::$app->fs->write('filename.ext', 'contents');
}
}
Код: Выделить всё
'components' => [
...
'fs' => [
'class' => 'creocoder\flysystem\LocalFilesystem',
'path' => env('SourcesPath1'),
],
Код: Выделить всё
<?php
require_once dirname(__FILE__, 2) . '/vendor/autoload.php';
require_once(dirname(__FILE__, 2) . '/common/env.php');
require_once(dirname(__FILE__, 2) . '/vendor/yiisoft/yii2/Yii.php');
require_once(dirname(__FILE__, 2) . '/common/config/bootstrap.php');
$config = \yii\helpers\ArrayHelper::merge(
require_once(dirname(__FILE__, 2) . '/common/config/base.php')
);
Yii::setAlias('@tests', dirname(__DIR__));