Replaced old manager references with crawler

This commit is contained in:
Pablo Hoffman 2010-08-25 19:31:04 -03:00
parent 8fc78c4d0a
commit ef7a097272
4 changed files with 18 additions and 18 deletions

View File

@ -6,14 +6,14 @@ class EngineStatusResource(JsonResource):
ws_name = 'enginestatus'
def __init__(self, spider_name=None, _manager=crawler):
def __init__(self, spider_name=None, _crawler=crawler):
JsonResource.__init__(self)
self._spider_name = spider_name
self.isLeaf = spider_name is not None
self._manager = _manager
self._crawler = _crawler
def render_GET(self, txrequest):
status = get_engine_status(self._manager.engine)
status = get_engine_status(self._crawler.engine)
if self._spider_name is None:
return status
for sp, st in status['spiders'].items():
@ -21,4 +21,4 @@ class EngineStatusResource(JsonResource):
return st
def getChild(self, name, txrequest):
return EngineStatusResource(name, self._manager)
return EngineStatusResource(name, self._crawler)

View File

@ -4,10 +4,10 @@ from cStringIO import StringIO
from scrapy.utils.jsonrpc import jsonrpc_client_call, jsonrpc_server_call, \
JsonRpcError, jsonrpc_errors
from scrapy.utils.serialize import ScrapyJSONDecoder
from scrapy.tests.test_utils_serialize import ExecutionMangerStub
from scrapy.tests.test_utils_serialize import CrawlerMock
from scrapy.utils.py26 import json
class urllib_stub(object):
class urllib_mock(object):
def __init__(self, result=None, error=None):
response = {}
if result:
@ -33,11 +33,11 @@ class TestTarget(object):
class JsonRpcUtilsTestCase(unittest.TestCase):
def setUp(self):
crawler = ExecutionMangerStub([])
crawler = CrawlerMock([])
self.json_decoder = ScrapyJSONDecoder(crawler=crawler)
def test_jsonrpc_client_call_request(self):
ul = urllib_stub(1)
ul = urllib_mock(1)
jsonrpc_client_call('url', 'test', 'one', 2, _urllib=ul)
req = json.loads(ul.request)
assert 'id' in req
@ -47,12 +47,12 @@ class JsonRpcUtilsTestCase(unittest.TestCase):
self.assertEqual(req['params'], ['one', 2])
def test_jsonrpc_client_call_response(self):
ul = urllib_stub()
ul = urllib_mock()
# must return result or error
self.assertRaises(ValueError, jsonrpc_client_call, 'url', 'test', _urllib=ul)
ul = urllib_stub(result={'one': 1})
ul = urllib_mock(result={'one': 1})
self.assertEquals(jsonrpc_client_call('url', 'test', _urllib=ul), {'one': 1})
ul = urllib_stub(error={'code': 123, 'message': 'hello', 'data': 'some data'})
ul = urllib_mock(error={'code': 123, 'message': 'hello', 'data': 'some data'})
raised = False
try:

View File

@ -10,13 +10,13 @@ from scrapy.spider import BaseSpider
from scrapy.http import Request, Response
class ExecutionEngineStub(object):
class _EngineMock(object):
def __init__(self, open_spiders):
self.open_spiders = open_spiders
class ExecutionMangerStub(object):
class CrawlerMock(object):
def __init__(self, open_spiders):
self.engine = ExecutionEngineStub(open_spiders)
self.engine = _EngineMock(open_spiders)
class BaseTestCase(unittest.TestCase):
@ -24,8 +24,8 @@ class BaseTestCase(unittest.TestCase):
self.spider1 = BaseSpider('name1')
self.spider2 = BaseSpider('name2')
open_spiders = set([self.spider1, self.spider2])
manager = ExecutionMangerStub(open_spiders)
self.spref = SpiderReferencer(manager)
crawler = CrawlerMock(open_spiders)
self.spref = SpiderReferencer(crawler)
self.encoder = ScrapyJSONEncoder(spref=self.spref)
self.decoder = ScrapyJSONDecoder(spref=self.spref)

View File

@ -22,7 +22,7 @@ class SpiderReferencer(object):
def __init__(self, crawler=None):
if crawler is None:
from scrapy.project import crawler
self.manager = crawler
self.crawler = crawler
def get_reference_from_spider(self, spider):
return 'spider:%x:%s' % (id(spider), spider.name)
@ -35,7 +35,7 @@ class SpiderReferencer(object):
m = self.spider_ref_re.search(ref)
if m:
spid, spname = m.groups()
for spider in self.manager.engine.open_spiders:
for spider in self.crawler.engine.open_spiders:
if "%x" % id(spider) == spid or spider.name == spname:
return spider
raise RuntimeError("Spider not running: %s" % ref)