def setUp(self):
     site = server.Site(UriResource(), timeout=None)
     wrapper = WrappingFactory(site)
     self.port = reactor.listenTCP(0, wrapper, interface='127.0.0.1')
     self.portno = self.port.getHost().port
     self.download_handler = self.download_handler_cls(Settings())
     self.download_request = self.download_handler.download_request
Esempio n. 2
0
    def setUp(self):
        self.agent = None # for twisted.web.client.Agent test
        self.cleanupServerConnections = 0
        r = resource.Resource()
        r.putChild(b"file", Data(b"0123456789", "text/html"))
        r.putChild(b"redirect", Redirect(b"/file"))
        self.infiniteRedirectResource = CountingRedirect(b"/infiniteRedirect")
        r.putChild(b"infiniteRedirect", self.infiniteRedirectResource)
        r.putChild(b"wait", ForeverTakingResource())
        r.putChild(b"write-then-wait", ForeverTakingResource(write=True))
        r.putChild(b"never-read", ForeverTakingNoReadingResource())
        r.putChild(b"error", ErrorResource())
        r.putChild(b"nolength", NoLengthResource())
        r.putChild(b"host", HostHeaderResource())
        r.putChild(b"payload", PayloadResource())
        r.putChild(b"broken", BrokenDownloadResource())
        r.putChild(b"cookiemirror", CookieMirrorResource())
        r.putChild(b'delay1', DelayResource(1))
        r.putChild(b'delay2', DelayResource(2))

        self.afterFoundGetCounter = CountingResource()
        r.putChild(b"afterFoundGetCounter", self.afterFoundGetCounter)
        r.putChild(b"afterFoundGetRedirect", Redirect(b"/afterFoundGetCounter"))

        miscasedHead = Data(b"miscased-head GET response content", "major/minor")
        miscasedHead.render_Head = lambda request: b"miscased-head content"
        r.putChild(b"miscased-head", miscasedHead)

        self.extendedRedirect = ExtendedRedirect(b'/extendedRedirect')
        r.putChild(b"extendedRedirect", self.extendedRedirect)
        self.site = server.Site(r, timeout=None)
        self.wrapper = WrappingFactory(self.site)
        self.port = self._listen(self.wrapper)
        self.portno = self.port.getHost().port
    def setUp(self):
        self.cleanupServerConnections = 0
        name = self.mktemp()
        os.mkdir(name)
        FilePath(name).child("file").setContent("0123456789")
        r = static.File(name)
        r.putChild("redirect", util.Redirect("/file"))
        self.infiniteRedirectResource = CountingRedirect("/infiniteRedirect")
        r.putChild("infiniteRedirect", self.infiniteRedirectResource)
        r.putChild("wait", ForeverTakingResource())
        r.putChild("write-then-wait", ForeverTakingResource(write=True))
        r.putChild("error", ErrorResource())
        r.putChild("nolength", NoLengthResource())
        r.putChild("host", HostHeaderResource())
        r.putChild("payload", PayloadResource())
        r.putChild("broken", BrokenDownloadResource())
        r.putChild("cookiemirror", CookieMirrorResource())

        miscasedHead = static.Data("miscased-head GET response content",
                                   "major/minor")
        miscasedHead.render_Head = lambda request: "miscased-head content"
        r.putChild("miscased-head", miscasedHead)

        self.extendedRedirect = ExtendedRedirect('/extendedRedirect')
        r.putChild("extendedRedirect", self.extendedRedirect)
        self.site = server.Site(r, timeout=None)
        self.wrapper = WrappingFactory(self.site)
        self.port = self._listen(self.wrapper)
        self.portno = self.port.getHost().port
Esempio n. 4
0
 def setUp(self):
     name = self.mktemp()
     os.mkdir(name)
     FilePath(name).child("file").setContent(b"0123456789")
     r = static.File(name)
     r.putChild(b"redirect", util.Redirect(b"/file"))
     r.putChild(b"wait", ForeverTakingResource())
     r.putChild(b"hang-after-headers", ForeverTakingResource(write=True))
     r.putChild(b"nolength", NoLengthResource())
     r.putChild(b"host", HostHeaderResource())
     r.putChild(b"payload", PayloadResource())
     r.putChild(b"broken", BrokenDownloadResource())
     r.putChild(b"contentlength", ContentLengthHeaderResource())
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.host = 'localhost'
     if self.scheme == 'https':
         self.port = reactor.listenSSL(0,
                                       self.wrapper,
                                       ssl_context_factory(),
                                       interface=self.host)
     else:
         self.port = reactor.listenTCP(0, self.wrapper, interface=self.host)
     self.portno = self.port.getHost().port
     self.download_handler = self.download_handler_cls(Settings())
     self.download_request = self.download_handler.download_request
 def setUp(self):
     self.tmpname = self.mktemp()
     os.mkdir(self.tmpname)
     FilePath(self.tmpname).child("file").setContent(b"0123456789")
     r = static.File(self.tmpname)
     r.putChild(b"redirect", util.Redirect(b"/file"))
     r.putChild(b"wait", ForeverTakingResource())
     r.putChild(b"hang-after-headers", ForeverTakingResource(write=True))
     r.putChild(b"nolength", NoLengthResource())
     r.putChild(b"host", HostHeaderResource())
     r.putChild(b"payload", PayloadResource())
     r.putChild(b"broken", BrokenDownloadResource())
     r.putChild(b"chunked", ChunkedResource())
     r.putChild(b"broken-chunked", BrokenChunkedResource())
     r.putChild(b"contentlength", ContentLengthHeaderResource())
     r.putChild(b"nocontenttype", EmptyContentTypeHeaderResource())
     r.putChild(b"largechunkedfile", LargeChunkedFileResource())
     r.putChild(b"echo", Echo())
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.host = 'localhost'
     if self.scheme == 'https':
         self.port = reactor.listenSSL(0,
                                       self.wrapper,
                                       ssl_context_factory(
                                           self.keyfile, self.certfile),
                                       interface=self.host)
     else:
         self.port = reactor.listenTCP(0, self.wrapper, interface=self.host)
     self.portno = self.port.getHost().port
     self.download_handler = create_instance(self.download_handler_cls,
                                             None, get_crawler())
     self.download_request = self.download_handler.download_request
 def setUp(self):
     site = server.Site(UriResource(), timeout=None)
     wrapper = WrappingFactory(site)
     self.port = reactor.listenTCP(0, wrapper, interface='127.0.0.1')
     self.portno = self.port.getHost().port
     self.download_handler = HttpDownloadHandler(
         Settings({'CONCURRENT_REQUESTS_PER_DOMAIN': 8}))
     self.download_request = self.download_handler.download_request
Esempio n. 7
0
 def setUp(self):
     self.cleanupServerConnections = 0
     self.site = server.Site(MiyamotoResource.setup(), timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.port = reactor.listenTCP(8080,
                                   self.wrapper,
                                   interface="127.0.0.1")
     self.portno = self.port.getHost().port
Esempio n. 8
0
 def setUp(self):
     self.cleanupServerConnections = 0
     name = self.mktemp()
     os.mkdir(name)
     FilePath(name).child("file").setContent("0123456789")
     r = static.File(name)
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.port = self._listen(self.wrapper)
     self.portno = self.port.getHost().port
Esempio n. 9
0
 def setUp(self):
     self.tmpname = self.mktemp()
     os.mkdir(self.tmpname)
     FilePath(self.tmpname).child("file").setContent(b"0123456789")
     r = static.File(self.tmpname)
     r.putChild(b"payload", PayloadResource())
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.port = self._listen(self.wrapper)
     self.portno = self.port.getHost().port
Esempio n. 10
0
 def setUp(self):
     self.tmpname = self.mktemp()
     os.mkdir(self.tmpname)
     FilePath(self.tmpname).child("file").setContent(b"0123456789")
     r = static.File(self.tmpname)
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.host = 'localhost'
     self.port = reactor.listenSSL(
         0, self.wrapper, ssl_context_factory(self.keyfile, self.certfile, cipher_string='CAMELLIA256-SHA'),
         interface=self.host)
     self.portno = self.port.getHost().port
     crawler = get_crawler(settings_dict={'DOWNLOADER_CLIENT_TLS_CIPHERS': 'CAMELLIA256-SHA'})
     self.download_handler = create_instance(self.download_handler_cls, None, crawler)
     self.download_request = self.download_handler.download_request
Esempio n. 11
0
 def setUp(self):
     name = self.mktemp()
     os.mkdir(name)
     FilePath(name).child("file").setContent("0123456789")
     r = static.File(name)
     r.putChild("redirect", util.Redirect("/file"))
     r.putChild("wait", ForeverTakingResource())
     r.putChild("error", ErrorResource())
     r.putChild("nolength", NoLengthResource())
     r.putChild("host", HostHeaderResource())
     r.putChild("payload", PayloadResource())
     r.putChild("broken", BrokenDownloadResource())
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.port = self._listen(self.wrapper)
     self.portno = self.port.getHost().port
 def setUp(self):
     name = self.mktemp()
     os.mkdir(name)
     FilePath(name).child("file").setContent("0123456789")
     r = static.File(name)
     r.putChild("redirect", util.Redirect("/file"))
     r.putChild("wait", ForeverTakingResource())
     r.putChild("nolength", NoLengthResource())
     r.putChild("host", HostHeaderResource())
     r.putChild("payload", PayloadResource())
     r.putChild("broken", BrokenDownloadResource())
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.port = reactor.listenTCP(0, self.wrapper, interface='127.0.0.1')
     self.portno = self.port.getHost().port
     self.download_request = HttpDownloadHandler().download_request
Esempio n. 13
0
 def setUp(self):
     name = self.mktemp()
     os.mkdir(name)
     FilePath(name).child('file').setContent('0123456789')
     r = static.File(name)
     r.putChild('redirect', util.Redirect('/file'))
     r.putChild('wait', ForeverTakingResource())
     r.putChild('error', ErrorResource())
     r.putChild('nolength', NoLengthResource())
     r.putChild('host', HostHeaderResource())
     r.putChild('payload', PayloadResource())
     r.putChild('broken', BrokenDownloadResource())
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.port = self._listen(self.wrapper)
     self.portno = self.port.getHost().port
Esempio n. 14
0
 def setUp(self):
     self.cleanupServerConnections = 0
     name = self.mktemp()
     os.mkdir(name)
     FilePath(name).child("file").setContent("0123456789")
     r = static.File(name)
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     pub_key = file(PUBKEY)
     pub_key_data = pub_key.read()
     pub_key.close()
     pub_key_san = file(PUBSANKEY)
     pub_key_san_data = pub_key_san.read()
     pub_key_san.close()
     ssl._ca_certs = [
         load_certificate(FILETYPE_PEM, pub_key_data),
         load_certificate(FILETYPE_PEM, pub_key_san_data)
     ]
 def setUp(self):
     name = self.mktemp()
     os.mkdir(name)
     FilePath(name).child('file').setContent('0123456789')
     r = static.File(name)
     r.putChild('redirect', util.Redirect('/file'))
     r.putChild('wait', ForeverTakingResource())
     r.putChild('hang-after-headers', ForeverTakingResource(write=True))
     r.putChild('nolength', NoLengthResource())
     r.putChild('host', HostHeaderResource())
     r.putChild('payload', PayloadResource())
     r.putChild('broken', BrokenDownloadResource())
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.port = reactor.listenTCP(0, self.wrapper, interface='127.0.0.1')
     self.portno = self.port.getHost().port
     self.download_handler = self.download_handler_cls(
         Settings({'CONCURRENT_REQUESTS_PER_DOMAIN': 8}))
     self.download_request = self.download_handler.download_request
Esempio n. 16
0
def test_download_with_proxy_https_noconnect():
    def _test(response):
        assert response.status == 200
        assert response.url == request.url
        assert response.body == b"0123456789"

    tmpname = tempfile.mkdtemp(dir="/tmp/")
    FilePath(tmpname).child("file").setContent(b"0123456789")
    r = static.File(tmpname)
    site = server.Site(r, timeout=None)
    wrapper = WrappingFactory(site)
    port = reactor.listenTCP(0, wrapper, interface="localhost")
    portno = port.getHost().port

    http_proxy = "http://localhost:%d/file" % (portno, )
    request = Request(http_proxy)
    downloader = get_downloader()
    return downloader.download_request(request,
                                       Spider("foo")).addCallback(_test)
Esempio n. 17
0
 def setUp(self):
     self.cleanupServerConnections = 0
     name = self.mktemp()
     os.mkdir(name)
     FilePath(name).child("file").setContent("0123456789")
     r = static.File(name)
     r.putChild("redirect", util.Redirect("/file"))
     self.infiniteRedirectResource = CountingRedirect("/infiniteRedirect")
     r.putChild("infiniteRedirect", self.infiniteRedirectResource)
     r.putChild("wait", ForeverTakingResource())
     r.putChild("write-then-wait", ForeverTakingResource(write=True))
     r.putChild("error", ErrorResource())
     r.putChild("nolength", NoLengthResource())
     r.putChild("host", HostHeaderResource())
     r.putChild("payload", PayloadResource())
     r.putChild("broken", BrokenDownloadResource())
     r.putChild("cookiemirror", CookieMirrorResource())
     self.site = server.Site(r, timeout=None)
     self.wrapper = WrappingFactory(self.site)
     self.port = self._listen(self.wrapper)
     self.portno = self.port.getHost().port
Esempio n. 18
0
                                              privateKey=privateKey,
                                              verifierDB=verifierDB)
      else:
          Echo.connectionMade(self)

  def connectionLost(self, reason):
      pass #Handle any TLS exceptions here

class Echo2(Echo):
  def lineReceived(self, data):
      if data == "STARTTLS":
          self.transport.setServerHandshakeOp(certChain=certChain,
                                              privateKey=privateKey,
                                              verifierDB=verifierDB)
      else:
          Echo.lineReceived(self, data)

  def connectionLost(self, reason):
      pass #Handle any TLS exceptions here

factory = Factory()
factory.protocol = Echo1
#factory.protocol = Echo2

wrappingFactory = WrappingFactory(factory)
wrappingFactory.protocol = TLSTwistedProtocolWrapper

log.startLogging(sys.stdout)
reactor.listenTCP(1079, wrappingFactory)
reactor.run()
Esempio n. 19
0
 def connect(self, protocolFactory):
     return self._endpoint.connect(WrappingFactory(protocolFactory))
Esempio n. 20
0
 def setUp(self):
     super(GetPageAuthTestCase, self).setUp()
     self.root = Resource()
     self.wrapper = WrappingFactory(Site(self.root, timeout=None))
     self.port = self._listen(self.wrapper)
     self.portno = self.port.getHost().port