actingAs($this->user); Bus::fake(); SSH::fake()->outputShouldBe('test'); $database = Database::factory()->create([ 'server_id' => $this->server, ]); $storage = StorageProvider::factory()->create([ 'user_id' => $this->user->id, 'provider' => \App\Enums\StorageProvider::DROPBOX, ]); Livewire::test(DatabaseBackups::class, ['server' => $this->server]) ->set('database', $database->id) ->set('storage', $storage->id) ->set('interval', '0 * * * *') ->set('keep', '10') ->call('create') ->assertSuccessful(); Bus::assertDispatched(RunBackup::class); $this->assertDatabaseHas('backups', [ 'status' => BackupStatus::RUNNING, ]); } public function test_see_backups_list(): void { $this->actingAs($this->user); $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, ]); Livewire::test(DatabaseBackups::class, ['server' => $this->server]) ->assertSee([ $backup->database->name, ]); } public function test_delete_database(): void { $this->actingAs($this->user); $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, ]); Livewire::test(DatabaseBackups::class, ['server' => $this->server]) ->set('deleteId', $backup->id) ->call('delete'); $this->assertDatabaseMissing('backups', [ 'id' => $backup->id, ]); } }