def test_httpsession_cancel_operation(self): test_deferred = Deferred() session = HttpTrackerSession("127.0.0.1", ("localhost", 8475), "/announce", 5) session.result_deferred = Deferred(session._on_cancel) session.result_deferred.addErrback(lambda _: test_deferred.callback(None)) session.result_deferred.cancel() return test_deferred
def test_httpsession_on_error(self): test_deferred = Deferred() session = HttpTrackerSession("localhost", ("localhost", 4782), "/announce", 5) session.result_deferred = Deferred().addErrback( lambda failure: test_deferred.callback(None)) session.on_error(Failure(RuntimeError(u"test\xf8\xf9"))) return test_deferred
def test_http_unprocessed_infohashes(self): session = HttpTrackerSession("localhost", ("localhost", 8475), "/announce", 5) result_deferred = Deferred() session.result_deferred = result_deferred session._infohash_list.append("test") response = bencode({"files": {"a" * 20: {"complete": 10, "incomplete": 10}}}) session._process_scrape_response(response) self.assertTrue(session.is_finished)
def test_http_unprocessed_infohashes(self): session = HttpTrackerSession("localhost", ("localhost", 8475), "/announce", 5) result_deffered = Deferred() session.result_deferred = result_deffered session._infohash_list.append("test") response = bencode(dict()) session._process_scrape_response(response) self.assertTrue(session.is_finished)
def test_failed_unicode(self): test_deferred = Deferred() session = HttpTrackerSession(u"localhost", ("localhost", 8475), "/announce", 5) def on_error(failure): self.assertEqual(failure.type, ValueError) test_deferred.callback(None) session.result_deferred = Deferred().addErrback(on_error) session._process_scrape_response(bencode({'failure reason': '\xe9'})) return test_deferred
def test_httpsession_on_error(self): test_deferred = Deferred() session = HttpTrackerSession("localhost", ("localhost", 4782), "/announce", 5) session.result_deferred = Deferred().addErrback(lambda failure: test_deferred.callback(None)) session.on_error(Failure(RuntimeError(u"test\xf8\xf9"))) return test_deferred