vito/tests/Unit/Commands/RunBackupCommandTest.php
2024-03-24 09:56:34 +01:00

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');
}
}