예제 #1
0
    def test_insert_failure(self, mock_warning, mock_BucketLoader, mock_uuid4,
                            mock_dumps):
        db = mock.Mock(
            **{
                'lrange.return_value': ['record1', 'record2'],
                'linsert.return_value': -1,
            })
        limit = mock.Mock(bucket_class='bucket_class')

        compactor.compact_bucket(db, 'bucket_key', limit)

        db.assert_has_calls([
            mock.call.lrange('bucket_key', 0, -1),
            mock.call.linsert('bucket_key', 'after', 'last_record',
                              dict(bucket='bucket', uuid='bucket_uuid')),
        ])
        self.assertEqual(len(db.method_calls), 2)
        mock_BucketLoader.assert_called_once_with('bucket_class',
                                                  db,
                                                  limit,
                                                  'bucket_key',
                                                  ['record1', 'record2'],
                                                  stop_summarize=True)
        mock_warning.assert_called_once_with(
            "Bucket compaction on bucket_key failed; will retry")
예제 #2
0
    def test_normal(self, mock_warning, mock_BucketLoader, mock_uuid4,
                    mock_dumps):
        db = mock.Mock(
            **{
                'lrange.return_value': ['record1', 'record2'],
                'linsert.return_value': 23,
            })
        limit = mock.Mock(bucket_class='bucket_class')

        compactor.compact_bucket(db, 'bucket_key', limit)

        db.assert_has_calls([
            mock.call.lrange('bucket_key', 0, -1),
            mock.call.linsert('bucket_key', 'after', 'last_record',
                              dict(bucket='bucket', uuid='bucket_uuid')),
            mock.call.ltrim('bucket_key', 18, -1),
        ])
        self.assertEqual(len(db.method_calls), 3)
        mock_BucketLoader.assert_called_once_with('bucket_class',
                                                  db,
                                                  limit,
                                                  'bucket_key',
                                                  ['record1', 'record2'],
                                                  stop_summarize=True)
        self.assertFalse(mock_warning.called)
예제 #3
0
    def test_insert_failure(self, mock_warning, mock_BucketLoader, mock_uuid4,
                            mock_dumps):
        db = mock.Mock(**{
            'lrange.return_value': ['record1', 'record2'],
            'linsert.return_value': -1,
        })
        limit = mock.Mock(bucket_class='bucket_class')

        compactor.compact_bucket(db, 'bucket_key', limit)

        db.assert_has_calls([
            mock.call.lrange('bucket_key', 0, -1),
            mock.call.linsert('bucket_key', 'after', 'last_record',
                              dict(bucket='bucket', uuid='bucket_uuid')),
        ])
        self.assertEqual(len(db.method_calls), 2)
        mock_BucketLoader.assert_called_once_with(
            'bucket_class', db, limit, 'bucket_key', ['record1', 'record2'],
            stop_summarize=True)
        mock_warning.assert_called_once_with(
            "Bucket compaction on bucket_key failed; will retry")
예제 #4
0
    def test_normal(self, mock_warning, mock_BucketLoader, mock_uuid4,
                    mock_dumps):
        db = mock.Mock(**{
            'lrange.return_value': ['record1', 'record2'],
            'linsert.return_value': 23,
        })
        limit = mock.Mock(bucket_class='bucket_class')

        compactor.compact_bucket(db, 'bucket_key', limit)

        db.assert_has_calls([
            mock.call.lrange('bucket_key', 0, -1),
            mock.call.linsert('bucket_key', 'after', 'last_record',
                              dict(bucket='bucket', uuid='bucket_uuid')),
            mock.call.ltrim('bucket_key', 18, -1),
        ])
        self.assertEqual(len(db.method_calls), 3)
        mock_BucketLoader.assert_called_once_with(
            'bucket_class', db, limit, 'bucket_key', ['record1', 'record2'],
            stop_summarize=True)
        self.assertFalse(mock_warning.called)