Add mariadb missing blades (#476)

* Add missing views for Mariadb

* Add missing restore link

* adding test to avoid such issues

---------

Co-authored-by: Saeed Vaziry <mr.saeedvaziry@gmail.com>
This commit is contained in:
Austin Kregel
2025-02-07 14:24:08 -05:00
committed by GitHub
parent 705d029a63
commit fd67097884
9 changed files with 102 additions and 3 deletions

View File

@ -22,11 +22,16 @@ class DatabaseBackupTest extends TestCase
{
use RefreshDatabase;
public function test_create_backup(): void
/**
* @dataProvider data
*/
public function test_create_backup(string $db): void
{
SSH::fake();
Http::fake();
$this->setupDatabase($db);
$this->actingAs($this->user);
$database = Database::factory()->create([
@ -152,8 +157,13 @@ public function test_update_backup(): void
]);
}
public function test_delete_backup(): void
/**
* @dataProvider data
*/
public function test_delete_backup(string $db): void
{
$this->setupDatabase($db);
$this->actingAs($this->user);
$database = Database::factory()->create([
@ -182,11 +192,16 @@ public function test_delete_backup(): void
]);
}
public function test_restore_backup(): void
/**
* @dataProvider data
*/
public function test_restore_backup(string $db): void
{
Http::fake();
SSH::fake();
$this->setupDatabase($db);
$this->actingAs($this->user);
$database = Database::factory()->create([
@ -220,4 +235,24 @@ public function test_restore_backup(): void
'status' => BackupFileStatus::RESTORED,
]);
}
private function setupDatabase(string $database): void
{
$this->server->services()->where('type', 'database')->delete();
$this->server->services()->create([
'type' => 'database',
'name' => config('core.databases_name.'.$database),
'version' => config('core.databases_version.'.$database),
]);
}
public static function data(): array
{
return [
[\App\Enums\Database::MYSQL80],
[\App\Enums\Database::MARIADB104],
[\App\Enums\Database::POSTGRESQL16],
];
}
}