def setUp(self): """Prepare the test fixture.""" self.__get_pool = iterators.get_pool self.clients = {"eggs": MockClient("eggs", ['127.0.0.1:9160']), "tomato": MockClient("tomato", ['127.0.0.1:9160'])} iterators.get_pool = lambda pool: self.clients[pool] self.client = self.clients["eggs"]
def test_batch_load(self): records, keys = [], [] for x in range(10): record = Record() record.key = Key('eggs', 'bacon') record['number'] = x record['square'] = x * x records.append(record) keys.append(record.key) backing = {} for record in records: backing[record.key.key] = [ColumnOrSuperColumn(col) for col in record._columns.values()] mock_client = MockClient("Eggs", []) mock_client.multiget_slice = \ lambda keys, parent, pred, clvl: backing sets.itr.get_pool = lambda ks: mock_client out_records = self.object._batch_load(Record, keys) for record in out_records: self.assert_(isinstance(record, Record)) self.assert_(record.key in keys) orig = records[records.index(record)] self.assert_(orig['number'] == record['number']) self.assert_(orig['square'] == record['square'])
def setUp(self): """Prepare the text fixture.""" obj = view.View() obj.key = Key(keyspace='eggs', column_family='bacon', key='dummy_view') obj.record_key = Key(keyspace='spam', column_family='tomato') self.client = MockClient(['localhost:1234']) obj._get_cas = lambda: self.client self.object = obj
def test_iter(self): """Make sure FaultTolerantView.__iter__ ignores load errors.""" class IntermittentFailureRecord(object): def load(self, key): if key % 2 == 0: raise Exception("Failed to load") self.key = key return self ftv = view.FaultTolerantView() client = MockClient(['localhost:1234']) client.get_count = lambda *args: 99 ftv._get_cas = lambda: client ftv.record_class = IntermittentFailureRecord ftv._keys = lambda: range(10) res = tuple(ftv) self.assert_(len(res) == 5) for record in res: self.assert_(record.key % 2 != 0)
def setUp(self): super(TestClient, self).setUp() self.client = MockClient('Keyspace1', ['localhost:1234', 'localhost:5678'])