mirror of
https://github.com/gogcom/galaxy-integrations-python-api.git
synced 2025-12-24 23:48:21 -05:00
57 lines
1.7 KiB
Python
57 lines
1.7 KiB
Python
from galaxy.api.consts import Feature, Platform
|
|
from galaxy.api.plugin import Plugin
|
|
|
|
|
|
def test_base_class():
|
|
plugin = Plugin(Platform.Generic, "0.1", None, None, None)
|
|
assert set(plugin.features) == {
|
|
Feature.ImportInstalledGames,
|
|
Feature.ImportOwnedGames,
|
|
Feature.LaunchGame,
|
|
Feature.InstallGame,
|
|
Feature.UninstallGame,
|
|
Feature.ImportAchievements,
|
|
Feature.ImportGameTime,
|
|
Feature.ImportFriends,
|
|
Feature.ShutdownPlatformClient,
|
|
Feature.LaunchPlatformClient,
|
|
Feature.ImportGameLibrarySettings,
|
|
Feature.ImportOSCompatibility,
|
|
Feature.ImportUserPresence,
|
|
Feature.ImportLocalSize,
|
|
Feature.ImportSubscriptions,
|
|
Feature.ImportSubscriptionGames
|
|
}
|
|
|
|
|
|
def test_no_overloads():
|
|
class PluginImpl(Plugin): # pylint: disable=abstract-method
|
|
pass
|
|
|
|
plugin = PluginImpl(Platform.Generic, "0.1", None, None, None)
|
|
assert plugin.features == []
|
|
|
|
|
|
def test_one_method_feature():
|
|
class PluginImpl(Plugin): # pylint: disable=abstract-method
|
|
async def get_owned_games(self):
|
|
pass
|
|
|
|
plugin = PluginImpl(Platform.Generic, "0.1", None, None, None)
|
|
assert plugin.features == [Feature.ImportOwnedGames]
|
|
|
|
|
|
def test_multi_features():
|
|
class PluginImpl(Plugin): # pylint: disable=abstract-method
|
|
async def get_owned_games(self):
|
|
pass
|
|
|
|
async def get_unlocked_achievements(self, game_id, context):
|
|
pass
|
|
|
|
async def get_game_time(self, game_id, context):
|
|
pass
|
|
|
|
plugin = PluginImpl(Platform.Generic, "0.1", None, None, None)
|
|
assert set(plugin.features) == {Feature.ImportAchievements, Feature.ImportOwnedGames, Feature.ImportGameTime}
|