diff --git a/sickbeard/providers/animenzb.py b/sickbeard/providers/animenzb.py index 57d23009692293c9dd8d8eb504dad521f648180c..93460b5185da94fddbf51cbd56c4a49752159db9 100644 --- a/sickbeard/providers/animenzb.py +++ b/sickbeard/providers/animenzb.py @@ -42,7 +42,7 @@ class animenzb(NZBProvider): self.supports_absolute_numbering = True self.anime_only = True - self.urls = {'base_url': 'http://animenzb.com//'} + self.urls = {'base_url': 'http://animenzb.com/'} self.url = self.urls['base_url'] self.cache = animenzbCache(self) diff --git a/tests/ssl_sni_tests.py b/tests/ssl_sni_tests.py index 1d69b96314025c85b559a9ce04782ce6df0130c3..add4e704002c873d53c440416bd4c4e3a8138e53 100644 --- a/tests/ssl_sni_tests.py +++ b/tests/ssl_sni_tests.py @@ -36,34 +36,49 @@ import requests # pylint: disable=import-error import sickbeard.providers as providers -class SniTests(unittest.TestCase): - """ - Test SNI +def test_generator(_provider): """ - self_signed_cert_providers = ["Womble's Index", "Libertalia"] + Generate tests for each provider - def test_sni_urls(self): + :param test_strings: to generate tests from + :return: test + """ + def _connectivity_test(self): # pylint: disable=unused-argument """ - Test SNI urls - :return: + Generate tests + :param self: + :return: test to run """ - print '' - # Just checking all providers - we should make this error on non-existent urls. - for provider in [provider for provider in providers.makeProviderList() if provider.name not in self.self_signed_cert_providers]: - print 'Checking %s' % provider.name - try: - requests.head(provider.url, verify=certifi.old_where(), timeout=10) - except requests.exceptions.Timeout: - pass - except requests.exceptions.SSLError as error: - if u'SSL3_GET_SERVER_CERTIFICATE' not in ex(error): - print 'SSLError on %s: %s' % (provider.name, ex(error.message)) - raise - else: - print 'Cannot verify certificate for %s' % provider.name - except Exception: # pylint: disable=broad-except - pass + if not _provider.url: + print '%s has no url set, skipping' % _provider.name + return + + try: + requests.head(_provider.url, verify=certifi.old_where(), timeout=10) + except requests.exceptions.SSLError as error: + if 'certificate verify failed' in str(error): + print 'Cannot verify certificate for %s' % _provider.name + else: + print 'SSLError on %s: %s' % (_provider.name, ex(error.message)) + raise + except requests.exceptions.Timeout: + print 'Provider timed out' + + return _connectivity_test + +class SniTests(unittest.TestCase): + pass if __name__ == "__main__": + print("==================") + print("STARTING - Provider Connectivity TESTS and SSL/SNI") + print("==================") + print("######################################################################") + # Just checking all providers - we should make this error on non-existent urls. + for provider in [p for p in providers.makeProviderList()]: + test_name = 'test_%s' % provider.name + test = test_generator(provider) + setattr(SniTests, test_name, test) + SUITE = unittest.TestLoader().loadTestsFromTestCase(SniTests) unittest.TextTestRunner(verbosity=2).run(SUITE)