Exemple #1
0
 def test_udpsession_cancel_operation(self):
     session = UdpTrackerSession("127.0.0.1", ("localhost", 8475),
                                 "/announce", 5)
     d = Deferred(session._on_cancel)
     d.addErrback(lambda _: None)
     session.result_deferred = d
     return session.cleanup()
    def test_udp_scraper_stop_no_connection(self):
        session = UdpTrackerSession("localhost", ("localhost", 4782), "/announce", 5)
        scraper = UDPScraper(session, "127.0.0.1", 4782, 5)
        # Stop it manually, so the transport becomes inactive
        stop_deferred = scraper.stop()

        return DeferredList([stop_deferred, session.cleanup()])
    def test_udpsession_correct_handle(self):
        session = UdpTrackerSession("localhost", ("localhost", 4782), "/announce", 5, self.socket_mgr)
        session.on_ip_address_resolved("127.0.0.1", start_scraper=False)
        session.result_deferred = Deferred()
        self.assertFalse(session.is_failed)
        session._infohash_list = ["test"]
        packet = struct.pack("!iiiii", session.action, session.transaction_id, 0, 1, 2)
        session.handle_scrape_response(packet)

        return session.result_deferred.addCallback(lambda *_: session.cleanup())