fix: allow manual launchbox metadata updates

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-06-12 19:21:00 +00:00
committed by GitHub
parent d28aea0681
commit 6eff73207b
2 changed files with 24 additions and 1 deletions

View File

@@ -33,7 +33,7 @@ class UpdateLaunchboxMetadataTask(RemoteFilePullTask):
title="Scheduled LaunchBox metadata update",
description="Updates the LaunchBox metadata store",
task_type=TaskType.UPDATE,
enabled=ENABLE_SCHEDULED_UPDATE_LAUNCHBOX_METADATA,
enabled=meta_launchbox_handler.is_cloud_enabled(),
cron_string=SCHEDULED_UPDATE_LAUNCHBOX_METADATA_CRON,
manual_run=True,
func="tasks.scheduled.update_launchbox_metadata.update_launchbox_metadata_task.run",

View File

@@ -54,6 +54,29 @@ class TestUpdateLaunchboxMetadataTask:
assert task.description == "Updates the LaunchBox metadata store"
assert task.url == "https://gamesdb.launchbox-app.com/Metadata.zip"
def test_task_enabled_when_launchbox_api_enabled_even_if_schedule_disabled(
self, mocker
):
"""Test the task remains manually runnable when scheduling is disabled."""
mocker.patch.object(LaunchboxHandler, "is_cloud_enabled", return_value=True)
mocker.patch(
"tasks.scheduled.update_launchbox_metadata.ENABLE_SCHEDULED_UPDATE_LAUNCHBOX_METADATA",
False,
)
task = UpdateLaunchboxMetadataTask()
assert task.enabled is True
assert task.manual_run is True
def test_task_disabled_when_launchbox_api_disabled(self, mocker):
"""Test the task is disabled when the LaunchBox API is unavailable."""
mocker.patch.object(LaunchboxHandler, "is_cloud_enabled", return_value=False)
task = UpdateLaunchboxMetadataTask()
assert task.enabled is False
@patch.object(RemoteFilePullTask, "run")
async def test_run_when_launchbox_api_enabled(
self, mock_super_run, task, sample_zip_content