2009-08-24 08:07:20 -03:00
|
|
|
import unittest
|
|
|
|
|
|
|
|
from scrapy.http import Request
|
2015-04-20 21:23:05 -03:00
|
|
|
from scrapy.downloadermiddlewares.httpauth import HttpAuthMiddleware
|
2015-05-09 04:20:09 -03:00
|
|
|
from scrapy.spiders import Spider
|
2009-08-24 08:07:20 -03:00
|
|
|
|
2013-12-28 00:47:32 +06:00
|
|
|
class TestSpider(Spider):
|
2009-08-24 08:07:20 -03:00
|
|
|
http_user = 'foo'
|
|
|
|
http_pass = 'bar'
|
|
|
|
|
|
|
|
class HttpAuthMiddlewareTest(unittest.TestCase):
|
|
|
|
|
|
|
|
def setUp(self):
|
|
|
|
self.mw = HttpAuthMiddleware()
|
2010-09-06 00:50:56 -03:00
|
|
|
self.spider = TestSpider('foo')
|
2013-10-08 17:36:13 -02:00
|
|
|
self.mw.spider_opened(self.spider)
|
2009-08-24 08:07:20 -03:00
|
|
|
|
|
|
|
def tearDown(self):
|
|
|
|
del self.mw
|
|
|
|
|
|
|
|
def test_auth(self):
|
|
|
|
req = Request('http://scrapytest.org/')
|
2010-09-06 00:50:56 -03:00
|
|
|
assert self.mw.process_request(req, self.spider) is None
|
2009-08-24 08:07:20 -03:00
|
|
|
self.assertEquals(req.headers['Authorization'], 'Basic Zm9vOmJhcg==')
|
|
|
|
|
2010-09-06 00:50:56 -03:00
|
|
|
def test_auth_already_set(self):
|
|
|
|
req = Request('http://scrapytest.org/', headers=dict(Authorization='Digest 123'))
|
|
|
|
assert self.mw.process_request(req, self.spider) is None
|
|
|
|
self.assertEquals(req.headers['Authorization'], 'Digest 123')
|
|
|
|
|
2009-08-24 08:07:20 -03:00
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
unittest.main()
|