parent
2b37a4c2e7
commit
02cdb1f792
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models\Validation\Messages\Factories;
|
||||
|
||||
use App\Models\Validation\Messages\Factories\MessageFactory;
|
||||
|
||||
class MessageByNameFactory extends MessageFactory
|
||||
{
|
||||
private string $name;
|
||||
|
||||
public function __construct(string $name)
|
||||
{
|
||||
$this->setName($name);
|
||||
}
|
||||
|
||||
public function setName(string $name): void
|
||||
{
|
||||
$this->name = $name;
|
||||
}
|
||||
|
||||
public function getName(): string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
public function create(): array
|
||||
{
|
||||
return [
|
||||
'found' => "A $this->name with the name is valid.",
|
||||
'not_found' => "A $this->name with the name does not exist!!!",
|
||||
'invalid_name' => "The $this->name name is empty, please, write the name!!!",
|
||||
];
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,9 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models\Validation\Messages\Factories;
|
||||
|
||||
abstract class MessageFactory
|
||||
{
|
||||
abstract function create(): array;
|
||||
}
|
||||
|
@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
namespace Tests\Feature;
|
||||
|
||||
use Tests\TestCase;
|
||||
|
||||
use App\Models\Validation\Messages\Factories\MessageByNameFactory;
|
||||
|
||||
class MessageByNameFactoryTest extends TestCase
|
||||
{
|
||||
public function testCreate(): void
|
||||
{
|
||||
$name = 'company';
|
||||
$expected_messages = [
|
||||
'found' => "A company with the name is valid.",
|
||||
'not_found' => "A company with the name does not exist!!!",
|
||||
'invalid_name' => "The company name is empty, please, write the name!!!",
|
||||
];
|
||||
|
||||
$factory = new MessageByNameFactory($name);
|
||||
|
||||
$this->assertEquals($factory->create(), $expected_messages);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in new issue