Reservas agregar y aprobar Co-authored-by: Juan Pablo Vial <jpvialb@incoviba.cl> Reviewed-on: #30
63 lines
2.2 KiB
PHP
63 lines
2.2 KiB
PHP
<?php
|
|
namespace Incoviba\Test\Repository;
|
|
|
|
use PHPUnit\Framework\TestCase;
|
|
use Faker;
|
|
use Incoviba\Common\Define;
|
|
use Incoviba\Model;
|
|
use Incoviba\Repository;
|
|
|
|
class PersonaTest extends TestCase
|
|
{
|
|
protected Define\Connection $connection;
|
|
|
|
protected function setUp(): void
|
|
{
|
|
$this->connection = $this->getMockBuilder(Define\Connection::class)
|
|
->disableOriginalConstructor()
|
|
->getMock();
|
|
}
|
|
|
|
public function testCreate(): void
|
|
{
|
|
$personaRepository = new Repository\Persona($this->connection);
|
|
$faker = Faker\Factory::create();
|
|
|
|
$data = [
|
|
'rut' => $faker->randomNumber(8),
|
|
'digito' => $faker->boolean(100 - round(1 / 11 * 100)) ? $faker->randomNumber(1) : 'K',
|
|
'nombres' => $faker->name(),
|
|
'apellido_paterno' => $faker->lastName(),
|
|
'apellido_materno' => $faker->lastName()
|
|
];
|
|
$persona = $personaRepository->create($data);
|
|
|
|
$this->assertEquals($data['rut'], $persona->rut);
|
|
$this->assertEquals($data['digito'], $persona->digito);
|
|
$this->assertEquals($data['nombres'], $persona->nombres);
|
|
$this->assertEquals($data['apellido_paterno'], $persona->apellidoPaterno);
|
|
$this->assertEquals($data['apellido_materno'], $persona->apellidoMaterno);
|
|
}
|
|
public function testSave(): void
|
|
{
|
|
$personaRepository = new Repository\Persona($this->connection);
|
|
$faker = Faker\Factory::create();
|
|
|
|
$data = [
|
|
'rut' => $faker->randomNumber(8),
|
|
'digito' => $faker->boolean(100 - round(1 / 11 * 100)) ? $faker->randomNumber(1) : 'K',
|
|
'nombres' => $faker->name(),
|
|
'apellido_paterno' => $faker->lastName(),
|
|
'apellido_materno' => $faker->lastName()
|
|
];
|
|
$persona = new Model\Persona();
|
|
$persona->rut = $data['rut'];
|
|
$persona->digito = $data['digito'];
|
|
$persona->nombres = $data['nombres'];
|
|
$persona->apellidoPaterno = $data['apellido_paterno'];
|
|
$persona->apellidoMaterno = $data['apellido_materno'];
|
|
$persona = $personaRepository->save($persona);
|
|
$this->assertEquals($data['rut'], $persona->rut);
|
|
}
|
|
}
|