Я пытаюсь написать интеграционный тест для моей сеялки БД, но, похоже, он не возвращает экземпляр этой сеялки.поэтому он не может выполнить
, когда я отлаживаю его, $ adminUserSeeder показывает следующее
это мой тест
namespace Tests\Unit\user;
use AdminUserSeeder;
use App\Test;
use Illuminate\Foundation\Testing\DatabaseTransactions;
use PHPUnit\Framework\TestCase;
class AdminSeederTest extends TestCase
{
use DatabaseTransactions;
public function setUp()
{
parent::setUp();
}
public function testRun()
{
$adminUserSeeder = new AdminUserSeeder();
$adminUserSeeder->run();
$this->assertDatabaseHas('users', ['name' => 'admin']);
}
}
и это мой класс сеялки
используйте Illuminate \ Database \ Seeder;
class AdminUserSeeder extends Seeder
{
public function run()
{
$user = (new App\User)->where('name','admin')->first();
if($user)
{
$user->delete();
}
factory(App\User::class,'admin')->create();
}
}
добавлена трассировка стека
/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:1138
/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:1104
/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:936
/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:880
/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:843
/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:1477
/database/seeds/AdminUserSeeder.php:10
/tests/Unit/AdminSeederTest.php:21