def test_valid_url(): """ Test if the URL is valid """ test_url = "http://anno nce.torrentsmd.com:8080/announce" assert not is_valid_url(test_url) test_url2 = "http://announce.torrentsmd.com:8080/announce " assert is_valid_url(test_url2) test_url3 = "http://localhost:1920/announce" assert is_valid_url(test_url3) test_url4 = "udp://localhost:1264" assert is_valid_url(test_url4)
def test_valid_url(self): """ Test if the URL is valid """ test_url = "http://anno nce.torrentsmd.com:8080/announce" self.assertFalse(is_valid_url(test_url), "%s is not a valid URL" % test_url) test_url2 = "http://announce.torrentsmd.com:8080/announce " self.assertTrue(is_valid_url(test_url2), "%s is a valid URL" % test_url2) test_url3 = "http://localhost:1920/announce" self.assertTrue(is_valid_url(test_url3)) test_url4 = "udp://localhost:1264" self.assertTrue(is_valid_url(test_url4))
def get_valid_trackers_of_torrent(self, torrent_id): """ Get a set of valid trackers for torrent. Also remove any invalid torrent.""" db_tracker_list = self.tribler_session.mds.TorrentState.get( infohash=database_blob(torrent_id)).trackers return { tracker.url for tracker in db_tracker_list if is_valid_url(tracker.url) and not self.is_blacklisted_tracker(tracker.url) }
def set_tracker(self, url): """ Set the tracker of this torrent, according to a given URL. :param url: The tracker url. """ if not is_valid_url(url): raise ValueError("Invalid URL") if url.endswith('/'): # Some tracker code can't deal with / at end url = url[:-1] self.torrent_parameters[b'announce'] = url
def get_valid_next_tracker_for_auto_check(self): tracker = self.get_next_tracker_for_auto_check() while tracker and not is_valid_url(tracker.url): self.remove_tracker(tracker.url) tracker = self.get_next_tracker_for_auto_check() return tracker