def test_registrable_extension_manager_internal_extension(): manager = RegistrableExtensionManager('subliminal.test_providers', [ 'addic7ed = subliminal.providers.addic7ed:Addic7edProvider', 'opensubtitles = subliminal.providers.opensubtitles:OpenSubtitlesProvider', 'podnapisi = subliminal.providers.podnapisi:PodnapisiProvider', 'thesubdb = subliminal.providers.thesubdb:TheSubDBProvider', 'tvsubtitles = subliminal.providers.tvsubtitles:TVsubtitlesProvider' ]) assert len(list(manager)) == 5 assert len(manager.internal_extensions) == 5
def test_registrable_extension_manager_unregister(): manager = RegistrableExtensionManager('subliminal.test_providers', [ 'thesubdb = subliminal.providers.thesubdb:TheSubDBProvider', 'tvsubtitles = subliminal.providers.tvsubtitles:TVsubtitlesProvider' ]) assert len(list(manager)) == 2 manager.register( 'de7cidda = subliminal.providers.addic7ed:Addic7edProvider') manager.unregister( 'de7cidda = subliminal.providers.addic7ed:Addic7edProvider') assert len(list(manager)) == 2 assert set(manager.names()) == {'thesubdb', 'tvsubtitles'}
from subliminal.extensions import RegistrableExtensionManager clients = RegistrableExtensionManager( "oldbeard.clients", [ "deluge = oldbeard.clients.deluge:Client", "deluged = oldbeard.clients.deluged:Client", "download_station = oldbeard.clients.download_station:Client", "mlnet = oldbeard.clients.mlnet:Client", "qbittorrent = oldbeard.clients.qbittorrent:Client", "putio = oldbeard.clients.putio:Client", "rtorrent = oldbeard.clients.rtorrent:Client", "transmission = oldbeard.clients.transmission:Client", "utorrent = oldbeard.clients.utorrent:Client", ], ) providers = RegistrableExtensionManager( "oldbeard.providers", [ "hdspace = oldbeard.providers.hdspace:HDSpaceProvider", "ncore = oldbeard.providers.ncore:NcoreProvider", "tntvillage = oldbeard.providers.tntvillage:TNTVillageProvider", "rarbg = oldbeard.providers.rarbg:RarbgProvider", "elitetorrent = oldbeard.providers.elitetorrent:EliteTorrentProvider", "hd4free = oldbeard.providers.hd4free:HD4FreeProvider", "horriblesubs = oldbeard.providers.horriblesubs:HorribleSubsProvider", "limetorrents = oldbeard.providers.limetorrents:LimeTorrentsProvider", "cpasbien = oldbeard.providers.cpasbien:CpasbienProvider", "bjshare = oldbeard.providers.bjshare:BJShareProvider", "tvchaosuk = oldbeard.providers.tvchaosuk:TVChaosUKProvider",