mirror of
https://github.com/vitodeploy/vito.git
synced 2025-04-20 02:11:36 +00:00
47 lines
1.2 KiB
PHP
47 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace Tests\Unit\Commands;
|
|
|
|
use App\Facades\SSH;
|
|
use App\Models\Backup;
|
|
use App\Models\Database;
|
|
use App\Models\StorageProvider;
|
|
use Illuminate\Foundation\Testing\RefreshDatabase;
|
|
use Tests\TestCase;
|
|
|
|
class RunBackupCommandTest extends TestCase
|
|
{
|
|
use RefreshDatabase;
|
|
|
|
public function test_run_without_any_backups(): void
|
|
{
|
|
$this->artisan('backups:run "* * * * *"')
|
|
->expectsOutput('0 backups started');
|
|
}
|
|
|
|
public function test_run_backups(): void
|
|
{
|
|
SSH::fake();
|
|
|
|
$database = Database::factory()->create([
|
|
'server_id' => $this->server,
|
|
]);
|
|
|
|
$storage = StorageProvider::factory()->create([
|
|
'user_id' => $this->user->id,
|
|
'provider' => \App\Enums\StorageProvider::DROPBOX,
|
|
]);
|
|
|
|
$backup = Backup::factory()->create([
|
|
'server_id' => $this->server->id,
|
|
'database_id' => $database->id,
|
|
'storage_id' => $storage->id,
|
|
'interval' => '1 * * * *',
|
|
'keep_backups' => 10,
|
|
]);
|
|
|
|
$this->artisan('backups:run "1 * * * *"')
|
|
->expectsOutput('1 backups started');
|
|
}
|
|
}
|