本文整理汇总了Python中celery.backends.couchbase.CouchBaseBackend.get_key_for_chord方法的典型用法代码示例。如果您正苦于以下问题:Python CouchBaseBackend.get_key_for_chord方法的具体用法?Python CouchBaseBackend.get_key_for_chord怎么用?Python CouchBaseBackend.get_key_for_chord使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类celery.backends.couchbase.CouchBaseBackend
的用法示例。
在下文中一共展示了CouchBaseBackend.get_key_for_chord方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_CouchBaseBackend
# 需要导入模块: from celery.backends.couchbase import CouchBaseBackend [as 别名]
# 或者: from celery.backends.couchbase.CouchBaseBackend import get_key_for_chord [as 别名]
#.........这里部分代码省略.........
TODO Should test on key not exists
"""
self.app.conf.couchbase_backend_settings = {}
x = CouchBaseBackend(app=self.app)
x._connection = Mock()
mocked_get = x._connection.get = Mock()
mocked_get.return_value.value = sentinel.retval
# should return None
self.assertEqual(x.get('1f3fab'), sentinel.retval)
x._connection.get.assert_called_once_with('1f3fab')
def test_set(self):
"""
Test set method.
CouchBaseBackend.set should return None and take two params
db conn to couchbase is mocked.
"""
self.app.conf.couchbase_backend_settings = None
x = CouchBaseBackend(app=self.app)
x._connection = MagicMock()
x._connection.set = MagicMock()
# should return None
self.assertIsNone(x.set(sentinel.key, sentinel.value))
def test_delete(self):
"""
Test delete method.
CouchBaseBackend.delete should return and take two params
db conn to couchbase is mocked.
TODO Should test on key not exists.
"""
self.app.conf.couchbase_backend_settings = {}
x = CouchBaseBackend(app=self.app)
x._connection = Mock()
mocked_delete = x._connection.delete = Mock()
mocked_delete.return_value = None
# should return None
self.assertIsNone(x.delete('1f3fab'))
x._connection.delete.assert_called_once_with('1f3fab')
def test_config_params(self):
"""
Test config params are correct.
app.conf.couchbase_backend_settings is properly set.
"""
self.app.conf.couchbase_backend_settings = {
'bucket': 'mycoolbucket',
'host': ['here.host.com', 'there.host.com'],
'username': 'johndoe',
'password': 'mysecret',
'port': '1234',
}
x = CouchBaseBackend(app=self.app)
self.assertEqual(x.bucket, 'mycoolbucket')
self.assertEqual(x.host, ['here.host.com', 'there.host.com'],)
self.assertEqual(x.username, 'johndoe',)
self.assertEqual(x.password, 'mysecret')
self.assertEqual(x.port, 1234)
def test_backend_by_url(self, url='couchbase://myhost/mycoolbucket'):
"""Test that a CouchBaseBackend is loaded from the couchbase url."""
from celery.backends.couchbase import CouchBaseBackend
backend, url_ = backends.get_backend_by_url(url, self.app.loader)
self.assertIs(backend, CouchBaseBackend)
self.assertEqual(url_, url)
def test_backend_params_by_url(self):
"""Test config params are correct from config url."""
url = 'couchbase://johndoe:[email protected]:123/mycoolbucket'
with self.Celery(backend=url) as app:
x = app.backend
self.assertEqual(x.bucket, 'mycoolbucket')
self.assertEqual(x.host, 'myhost')
self.assertEqual(x.username, 'johndoe')
self.assertEqual(x.password, 'mysecret')
self.assertEqual(x.port, 123)
def test_correct_key_types(self):
"""
Test that the key is the correct type for the couchbase python API.
We check that get_key_for_task, get_key_for_chord, and
get_key_for_group always returns a python string. Need to use str_t
for cross Python reasons.
"""
keys = [
self.backend.get_key_for_task('task_id', bytes('key')),
self.backend.get_key_for_chord('group_id', bytes('key')),
self.backend.get_key_for_group('group_id', bytes('key')),
self.backend.get_key_for_task('task_id', 'key'),
self.backend.get_key_for_chord('group_id', 'key'),
self.backend.get_key_for_group('group_id', 'key'),
]
for key in keys:
self.assertIsInstance(key, str_t)
示例2: test_CouchBaseBackend
# 需要导入模块: from celery.backends.couchbase import CouchBaseBackend [as 别名]
# 或者: from celery.backends.couchbase.CouchBaseBackend import get_key_for_chord [as 别名]
class test_CouchBaseBackend(AppCase):
def setup(self):
self.backend = CouchBaseBackend(app=self.app)
def test_init_no_couchbase(self):
prev, module.Couchbase = module.Couchbase, None
try:
with self.assertRaises(ImproperlyConfigured):
CouchBaseBackend(app=self.app)
finally:
module.Couchbase = prev
def test_init_no_settings(self):
self.app.conf.couchbase_backend_settings = []
with self.assertRaises(ImproperlyConfigured):
CouchBaseBackend(app=self.app)
def test_init_settings_is_None(self):
self.app.conf.couchbase_backend_settings = None
CouchBaseBackend(app=self.app)
def test_get_connection_connection_exists(self):
with patch('couchbase.connection.Connection') as mock_Connection:
self.backend._connection = sentinel._connection
connection = self.backend._get_connection()
self.assertEqual(sentinel._connection, connection)
mock_Connection.assert_not_called()
def test_get(self):
self.app.conf.couchbase_backend_settings = {}
x = CouchBaseBackend(app=self.app)
x._connection = Mock()
mocked_get = x._connection.get = Mock()
mocked_get.return_value.value = sentinel.retval
# should return None
self.assertEqual(x.get('1f3fab'), sentinel.retval)
x._connection.get.assert_called_once_with('1f3fab')
def test_set(self):
self.app.conf.couchbase_backend_settings = None
x = CouchBaseBackend(app=self.app)
x._connection = MagicMock()
x._connection.set = MagicMock()
# should return None
self.assertIsNone(x.set(sentinel.key, sentinel.value))
def test_delete(self):
self.app.conf.couchbase_backend_settings = {}
x = CouchBaseBackend(app=self.app)
x._connection = Mock()
mocked_delete = x._connection.delete = Mock()
mocked_delete.return_value = None
# should return None
self.assertIsNone(x.delete('1f3fab'))
x._connection.delete.assert_called_once_with('1f3fab')
def test_config_params(self):
self.app.conf.couchbase_backend_settings = {
'bucket': 'mycoolbucket',
'host': ['here.host.com', 'there.host.com'],
'username': 'johndoe',
'password': 'mysecret',
'port': '1234',
}
x = CouchBaseBackend(app=self.app)
self.assertEqual(x.bucket, 'mycoolbucket')
self.assertEqual(x.host, ['here.host.com', 'there.host.com'],)
self.assertEqual(x.username, 'johndoe',)
self.assertEqual(x.password, 'mysecret')
self.assertEqual(x.port, 1234)
def test_backend_by_url(self, url='couchbase://myhost/mycoolbucket'):
from celery.backends.couchbase import CouchBaseBackend
backend, url_ = backends.get_backend_by_url(url, self.app.loader)
self.assertIs(backend, CouchBaseBackend)
self.assertEqual(url_, url)
def test_backend_params_by_url(self):
url = 'couchbase://johndoe:[email protected]:123/mycoolbucket'
with self.Celery(backend=url) as app:
x = app.backend
self.assertEqual(x.bucket, 'mycoolbucket')
self.assertEqual(x.host, 'myhost')
self.assertEqual(x.username, 'johndoe')
self.assertEqual(x.password, 'mysecret')
self.assertEqual(x.port, 123)
def test_correct_key_types(self):
keys = [
self.backend.get_key_for_task('task_id', bytes('key')),
self.backend.get_key_for_chord('group_id', bytes('key')),
self.backend.get_key_for_group('group_id', bytes('key')),
self.backend.get_key_for_task('task_id', 'key'),
self.backend.get_key_for_chord('group_id', 'key'),
self.backend.get_key_for_group('group_id', 'key'),
]
for key in keys:
#.........这里部分代码省略.........