Пример #1
0
 def test_userInfo(self):
     urls = [("http://*****:*****@example.com/", "user:secret"),
             ("http://[email protected]/", "user"),
             ("http://:[email protected]/", ":secret"),
             ("http://example.com/", None)]
     for string, userInfo in urls:
         self.assertEquals(Url(string).userInfo, userInfo)
Пример #2
0
 def test_usernameAndPassword(self):
     urls = [("http://*****:*****@example.com/", "user", "secret"),
             ("http://[email protected]/", "user", None),
             ("http://:[email protected]/", "", "secret"),
             ("http://example.com/", None, None)]
     for string, username, password in urls:
         u = Url(string)
         self.assertEquals(u.username, username)
         self.assertEquals(u.password, password)
Пример #3
0
 def test_fetchNotFound(self):
     def page(page):
         self._basicPageTests(page)
         self._testPageContent(page)
         self.assertEquals(page.pageInfo, NOT_FOUND)
     url = Url.join(self.baseUrl, "/not/found")
     config = PageFetchConfig(url)
     d = PageFetcher(config, self.fetchAddress, self.fetchPort).getPage()
     d.addCallback(page)
     return d
Пример #4
0
 def test_fetchSuccess(self):
     def page(page):
         self._basicPageTests(page)
         self._testPageContent(page)
         self.assertEquals(page.pageInfo, SUCCESS)
     url = Url.join(self.baseUrl, "/success")
     config = PageFetchConfig(url)
     d = PageFetcher(config, self.fetchAddress, self.fetchPort).getPage()
     d.addCallback(page)
     return d
Пример #5
0
    def test_fetchSuccess(self):
        def page(page):
            self._basicPageTests(page)
            self._testPageContent(page)
            self.assertEquals(page.pageInfo, SUCCESS)

        url = Url.join(self.baseUrl, "/success")
        config = PageFetchConfig(url)
        d = PageFetcher(config, self.fetchAddress, self.fetchPort).getPage()
        d.addCallback(page)
        return d
Пример #6
0
    def test_fetchNotFound(self):
        def page(page):
            self._basicPageTests(page)
            self._testPageContent(page)
            self.assertEquals(page.pageInfo, NOT_FOUND)

        url = Url.join(self.baseUrl, "/not/found")
        config = PageFetchConfig(url)
        d = PageFetcher(config, self.fetchAddress, self.fetchPort).getPage()
        d.addCallback(page)
        return d
Пример #7
0
 def test_url1(self):
     u = Url("http://*****:*****@example.com/index.html?key=value")
     self.assertEquals(u.scheme, "http")
     self.assertEquals(u.username, "user")
     self.assertEquals(u.password, "secret")
     self.assertEquals(u.userInfo, "user:secret")
     self.assertEquals(u.host, "example.com")
     self.assertEquals(u.port, 80)
     self.assertFalse(u.explicitPort)
     self.assertEquals(str(u.path), "/index.html")
     self.assertEquals(str(u.query), "key=value")
Пример #8
0
 def test_fetchPageRedirectWithNoLocation(self):
     def page(page):
         self._basicPageTests(page)
         self._testPageContent(page)
         self.assertIsNone(PageTools.getLocation(page.headers))
         self.assertEquals(page.pageInfo, REDIRECT)
     url = Url.join(self.baseUrl, "/redirect/with/no/location")
     config = PageFetchConfig(url)
     d = PageFetcher(config, self.fetchAddress, self.fetchPort).getPage()
     d.addCallback(page)
     return d
Пример #9
0
 def test_configDefaults(self):
     u = Url("http://example.com/path")
     config = PageFetchConfig(u)
     self.assertEquals(config.url, u)
     self.assertEquals(config.method, "GET")
     self.assertIsNone(config.postData)
     self.assertIsInstance(config.headers, list)
     self.assertEquals(config.headers, [])
     self.assertIsNone(config.agent)
     self.assertEquals(config.timeout, 0)
     self.assertIsInstance(config.cookies, list)
     self.assertEquals(config.cookies, [])
Пример #10
0
    def test_fetchPageRedirectWithNoLocation(self):
        def page(page):
            self._basicPageTests(page)
            self._testPageContent(page)
            self.assertIsNone(PageTools.getLocation(page.headers))
            self.assertEquals(page.pageInfo, REDIRECT)

        url = Url.join(self.baseUrl, "/redirect/with/no/location")
        config = PageFetchConfig(url)
        d = PageFetcher(config, self.fetchAddress, self.fetchPort).getPage()
        d.addCallback(page)
        return d
Пример #11
0
 def test_fetchRedirect(self):
     def page(page):
         self._basicPageTests(page)
         self._testPageNoContent(page)
         redirectUrl = Url("http://localhost/another/path")
         self.assertEquals(PageTools.getLocation(page.headers), redirectUrl)
         self.assertEquals(page.pageInfo, REDIRECT)
     url = Url.join(self.baseUrl, "/redirect")
     config = PageFetchConfig(url)
     d = PageFetcher(config, self.fetchAddress, self.fetchPort).getPage()
     d.addCallback(page)
     return d
Пример #12
0
    def test_fetchRedirect(self):
        def page(page):
            self._basicPageTests(page)
            self._testPageNoContent(page)
            redirectUrl = Url("http://localhost/another/path")
            self.assertEquals(PageTools.getLocation(page.headers), redirectUrl)
            self.assertEquals(page.pageInfo, REDIRECT)

        url = Url.join(self.baseUrl, "/redirect")
        config = PageFetchConfig(url)
        d = PageFetcher(config, self.fetchAddress, self.fetchPort).getPage()
        d.addCallback(page)
        return d
Пример #13
0
 def test_netloc(self):
     urls = [("http://*****:*****@example.com/index.html?key=value",
              "user:[email protected]"),
             ("http://*****:*****@example.com:80/index.html?key=value",
              "user:[email protected]:80"),
             ("http://[email protected]/index.html?key=value",
              "*****@*****.**"),
             ("http://:[email protected]/index.html?key=value",
              ":[email protected]"),
             ("http://example.com/index.html?key=value", "example.com"),
             ("http://example.com:80/index.html?key=value",
              "example.com:80")]
     for string, netloc in urls:
         self.assertEquals(Url(string).netloc, netloc)
Пример #14
0
 def test_configPopulated(self):
     u = Url("http://example.com/path")
     headers = [Header("name", "value")]
     cookies = [
         Cookie.buildCookie("cookie1", "value1"),
         Cookie.buildCookie("cookie2", "value2"),
         Cookie.buildCookie("cookie3", "value3")
     ]
     config = PageFetchConfig(u,
                              method="POST",
                              postData="my string",
                              headers=headers,
                              agent="my agent",
                              timeout=1,
                              cookies=cookies)
     self.assertEquals(config.url, u)
     self.assertEquals(config.method, "POST")
     self.assertEquals(config.postData, "my string")
     self.assertEquals(config.headers, headers)
     self.assertEquals(config.agent, "my agent")
     self.assertEquals(config.timeout, 1)
     self.assertEquals(config.cookies, cookies)
Пример #15
0
 def setUp(self):
     self.startServer()
     self.baseUrl = Url("http://127.0.0.1:8000/")
     self.fetchAddress = Address(self.baseUrl.host)
     self.fetchPort = self.baseUrl.port
Пример #16
0
 def page(page):
     self._basicPageTests(page)
     self._testPageNoContent(page)
     redirectUrl = Url("http://localhost/another/path")
     self.assertEquals(PageTools.getLocation(page.headers), redirectUrl)
     self.assertEquals(page.pageInfo, REDIRECT)
Пример #17
0
 def test_eq(self):
     urls = [("http://example.com", "http://example.com")]
     for init1, init2 in urls:
         self.assertEquals(Url(init1), Url(init2))