Files
lutris/tests/_test_resources.py
Daniel Johnson 4d0641e50b Rename the world! All unit tests will start with '_test_' to avoid ambiguity. This means stuff like 'test_config.py' will no longer be loaded as test module.
This means that very module must be explicitly loaded by various tests that need the 'gi.requires_versions' part- they no longer sometimes get this by accident (sometimes).

In turn, _test_cloud_save_progress will no longer stub stuff in sys.modules, which is awful- it breaks later tests. That in turns makes it much chattier since it now actually logs stuff. But it seems to pass for all that.

Yikes!

Resolves #6570

Much research and drudgery done by Claude Code 🤖 before it clocked out.
2026-03-24 09:20:25 -04:00

34 lines
1.4 KiB
Python

from unittest import TestCase
from lutris.api import parse_installer_url
class TestInstallerUrls(TestCase):
def test_legacy_url(self):
result = parse_installer_url("lutris:quake")
self.assertEqual(result["game_slug"], "quake")
self.assertEqual(result["revision"], None)
self.assertEqual(result["action"], None)
self.assertEqual(result["launch_config_name"], None)
def test_action_rungameid(self):
result = parse_installer_url("lutris:rungameid/123")
self.assertEqual(result["game_slug"], "123")
self.assertEqual(result["revision"], None)
self.assertEqual(result["action"], "rungameid")
self.assertEqual(result["launch_config_name"], None)
def test_action_rungame(self):
result = parse_installer_url("lutris:rungame/quake")
self.assertEqual(result["game_slug"], "quake")
self.assertEqual(result["revision"], None)
self.assertEqual(result["action"], "rungame")
self.assertEqual(result["launch_config_name"], None)
def test_action_rungame_launch_config(self):
result = parse_installer_url("lutris:rungame/quake/OpenGL%20Edition")
self.assertEqual(result["game_slug"], "quake")
self.assertEqual(result["revision"], None)
self.assertEqual(result["action"], "rungame")
self.assertEqual(result["launch_config_name"], "OpenGL Edition")