Welcome Guest, Not a member yet? Register   Sign In
How to run a single seeder during unit test?
#1

I can't get it to work. I set basepath and seeder as per the documentation and get the following errors:
The seeders are in project/tests/_support/Database/Seeds/
tests/_support/Database/Seeds/TestSeeder.php:
PHP Code:
<?php

namespace Tests\Support\Database\Seeds;

use 
CodeIgniter\Database\Seeder;

class 
TestSeeder extends Seeder
{
    public function run()
    {
        $this->call('RolSeeder');
        $this->call('UsuarioSeeder');
    }


With:
PHP Code:
protected $seed 'TestSeeder';
protected 
$basePath 'tests/_support/Database'

I get:
Code:
1) App\Controllers\UsersTest::testCreateUsuarioNuevo                                                                                          Error: Class 'App\Database\Seeds\TestSeeder' not found

With:
PHP Code:
protected $seed 'TestSeeder';
protected 
$basePath '/tests/_support/Database'


I get:
Code:
1) App\Controllers\UsersTest::testCreateUsuarioNuevo                                                                                                          InvalidArgumentException: The specified seeder is not a valid file: /tests/_support/Database/Seeds/TestSeeder.php

I'm running PHP 7.4.33 on wamp64 and CodeIgniter 4.2.11.
Reply


Messages In This Thread
How to run a single seeder during unit test? - by Flurzo - 02-24-2023, 12:43 PM



Theme © iAndrew 2016 - Forum software by © MyBB