mirror of
https://github.com/gogcom/galaxy-integrations-python-api.git
synced 2025-12-30 10:28:17 -05:00
46 lines
1.5 KiB
Python
46 lines
1.5 KiB
Python
from galaxy.api.plugin import Plugin
|
|
from galaxy.api.consts import Platform, Feature
|
|
|
|
def test_base_class():
|
|
plugin = Plugin(Platform.Generic, "0.1", None, None, None)
|
|
assert plugin.features == []
|
|
|
|
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_multiple_methods_feature_all():
|
|
class PluginImpl(Plugin): #pylint: disable=abstract-method
|
|
async def send_message(self, room_id, message):
|
|
pass
|
|
async def mark_as_read(self, room_id, last_message_id):
|
|
pass
|
|
async def get_rooms(self):
|
|
pass
|
|
async def get_room_history_from_message(self, room_id, message_id):
|
|
pass
|
|
async def get_room_history_from_timestamp(self, room_id, timestamp):
|
|
pass
|
|
|
|
plugin = PluginImpl(Platform.Generic, "0.1", None, None, None)
|
|
assert plugin.features == [Feature.Chat]
|
|
|
|
def test_multiple_methods_feature_not_all():
|
|
class PluginImpl(Plugin): #pylint: disable=abstract-method
|
|
async def send_message(self, room_id, message):
|
|
pass
|
|
|
|
plugin = PluginImpl(Platform.Generic, "0.1", None, None, None)
|
|
assert plugin.features == []
|