예제 #1
0
class ItemTest(unittest.TestCase):
    def setUp(self):
        self.item = Item(MockPipeline(),
                         'FakeID',
                         1,
                         prepare_data_directory=False)

    def test_get_returns_none_for_undefined_keys(self):
        self.assertEquals(None, self.item.get('undefined_key'))

    def test_get_returns_property(self):
        self.item['foo'] = 'bar'

        self.assertEquals('bar', self.item.get('foo'))

    def test_property_events(self):
        non_local_dict = {}

        def my_callback(item, key, new_value, old_value):
            self.assertEquals(self.item, item)
            non_local_dict['callback_fired'] = True
            self.assertEqual('blah', key)
            self.assertEqual('blahblah', new_value)
            self.assertEqual(None, old_value)

        self.item.on_property.handle(my_callback)
        self.item['blah'] = 'blahblah'

        self.assertTrue(non_local_dict.get('callback_fired'))
예제 #2
0
class ItemTest(unittest.TestCase):
    def setUp(self):
        self.item = Item(MockPipeline(), 'FakeID', 1, prepare_data_directory=False)

    def test_get_returns_none_for_undefined_keys(self):
        self.assertEquals(None, self.item.get('undefined_key'))

    def test_get_returns_property(self):
        self.item['foo'] = 'bar'

        self.assertEquals('bar', self.item.get('foo'))
예제 #3
0
class ItemTest(unittest.TestCase):
    def setUp(self):
        self.item = Item(MockPipeline(),
                         'FakeID',
                         1,
                         prepare_data_directory=False)

    def test_get_returns_none_for_undefined_keys(self):
        self.assertEquals(None, self.item.get('undefined_key'))

    def test_get_returns_property(self):
        self.item['foo'] = 'bar'

        self.assertEquals('bar', self.item.get('foo'))
예제 #4
0
  def add_items(self):
    if self.pipeline:
      if self.max_items and self.max_items <= self.item_count:
        return

      items_required = int(realize(self.concurrent_items))
      while len(self.active_items) < items_required:
        self.item_count += 1
        item_id = "%d-%d" % (id(self), self.item_count)
        item = Item(pipeline=self.pipeline, item_id=item_id, item_number=self.item_count, keep_data=self.keep_data)
        self.on_create_item(self, item)
        self.active_items.add(item)
        self.pipeline.enqueue(item)
예제 #5
0
    def add_items(self):
        if self.pipeline:
            items_required = int(realize(self.concurrent_items))
            while len(self.active_items) < items_required:
                if self.max_items and self.max_items <= self.item_count:
                    return

                self.item_count += 1
                item_id = "{0}-{1}".format(seesaw.util.unique_id_str(),
                                           self.item_count)
                item = Item(pipeline=self.pipeline,
                            item_id=item_id,
                            item_number=self.item_count,
                            keep_data=self.keep_data)
                self.on_create_item(self, item)
                self.active_items.add(item)
                self.pipeline.enqueue(item)
예제 #6
0
 def setUp(self):
     self.item = Item(MockPipeline(),
                      'FakeID',
                      1,
                      prepare_data_directory=False)
예제 #7
0
 def setUp(self):
     self.item = Item(MockPipeline(), 'FakeID', 1, prepare_data_directory=False)