refactor(integration): resolver credenciales mediante instancias
Resuelve primero la instancia del cliente y luego la del tipo de sitio cuando existe contexto de tenant. Adapta SMTP y Telepagos, con tokens identificados por instancia y version de credenciales. Separa la edicion de instancias de sus asociaciones y conserva el guardado por cliente creando una instancia nueva. Impide eliminar instancias en uso y adapta las pruebas existentes, incluida la herencia SMTP.
This commit is contained in:
21
tests/Concerns/CreatesIntegrationInstances.php
Normal file
21
tests/Concerns/CreatesIntegrationInstances.php
Normal file
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace Tests\Concerns;
|
||||
|
||||
use App\Domains\Integration\Models\ClientIntegration;
|
||||
use App\Domains\Integration\Models\IntegrationInstance;
|
||||
|
||||
trait CreatesIntegrationInstances
|
||||
{
|
||||
private function createClientIntegration(array $attributes): ClientIntegration
|
||||
{
|
||||
$instance = IntegrationInstance::create([
|
||||
'integration_code' => $attributes['integration_code'],
|
||||
'name' => 'Test instance',
|
||||
'integration_data' => $attributes['integration_data'],
|
||||
]);
|
||||
unset($attributes['integration_data']);
|
||||
|
||||
return ClientIntegration::create($attributes + ['integration_instance_id' => $instance->id]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user