27 lines
1.1 KiB
PHP
27 lines
1.1 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
declare(strict_types=1);
|
||
|
|
|
||
|
|
use Tests\TestCase;
|
||
|
|
|
||
|
|
uses(TestCase::class);
|
||
|
|
|
||
|
|
it('defines pgsql_admin connection sharing pgsql base with dev fallback to default role', function () {
|
||
|
|
/** @var array<string, mixed> $admin */
|
||
|
|
$admin = config('database.connections.pgsql_admin');
|
||
|
|
/** @var array<string, mixed> $base */
|
||
|
|
$base = config('database.connections.pgsql');
|
||
|
|
|
||
|
|
expect($admin)->toBeArray();
|
||
|
|
expect($admin['driver'])->toBe('pgsql');
|
||
|
|
// делит базовый pgsql-конфиг (host/database/sslmode), отличается только ролью
|
||
|
|
expect($admin['host'])->toBe($base['host']);
|
||
|
|
expect($admin['database'])->toBe($base['database']);
|
||
|
|
expect($admin['sslmode'])->toBe($base['sslmode']);
|
||
|
|
// на dev/test (DB_ADMIN_USERNAME/DB_ADMIN_PASSWORD не заданы) роль падает на
|
||
|
|
// default DB_USERNAME/DB_PASSWORD — поэтому совпадает с базовым pgsql.
|
||
|
|
// На prod env-ключи DB_ADMIN_* указывают на crm_admin_user (отличается).
|
||
|
|
expect($admin['username'])->toBe($base['username']);
|
||
|
|
expect($admin['password'])->toBe($base['password']);
|
||
|
|
});
|