class TestCachingCarrier(TestCase): def setUp(self): self.carrier = CachingCarrier() self.carrier.default_queues = ['queue1', 'queue2'] @patch('parker.carriers.cache') @patch('parker.carriers.time') @patch('parker.carriers.publish') def test_publish(self, publish, time, cache): time.time.return_value = 100 self.carrier.publish('message') cache.set.assert_called_any('queue1', (100, 'message')) cache.set.assert_called_any('queue2', (100, 'message')) self.assertEqual(cache.set.call_count, 2) @patch('parker.carriers.cache') @patch('parker.carriers.publish') def test_publish_none(self, pub, cache): self.carrier.publish(None) self.assertFalse(pub.called) self.assertFalse(cache.set.called) @patch('parker.carriers.cache') def test_get_context(self, cache): cdict = {} for q, t in zip(self.carrier.default_queues, range(2)): cdict[self.carrier.cache_key % q] = (t, q) cache.get = lambda x: cdict[x] context = self.carrier.get_context(self.carrier.default_queues) self.assertEqual(context, 'queue2')
def setUp(self): self.carrier = CachingCarrier() self.carrier.default_queues = ['queue1', 'queue2']