2009-08-17 21:16:55 -03:00
|
|
|
import unittest
|
2014-07-14 21:26:37 +08:00
|
|
|
from six.moves.urllib.parse import urlparse
|
2009-08-17 21:16:55 -03:00
|
|
|
|
|
|
|
from scrapy.http import Request
|
|
|
|
from scrapy.utils.httpobj import urlparse_cached
|
|
|
|
|
|
|
|
class HttpobjUtilsTest(unittest.TestCase):
|
|
|
|
|
|
|
|
def test_urlparse_cached(self):
|
|
|
|
url = "http://www.example.com/index.html"
|
|
|
|
request1 = Request(url)
|
|
|
|
request2 = Request(url)
|
|
|
|
req1a = urlparse_cached(request1)
|
|
|
|
req1b = urlparse_cached(request1)
|
|
|
|
req2 = urlparse_cached(request2)
|
2014-07-14 21:26:37 +08:00
|
|
|
urlp = urlparse(url)
|
2009-08-17 21:16:55 -03:00
|
|
|
|
|
|
|
assert req1a == req2
|
|
|
|
assert req1a == urlp
|
|
|
|
assert req1a is req1b
|
|
|
|
assert req1a is not req2
|
|
|
|
assert req1a is not req2
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
unittest.main()
|