本文整理汇总了Python中celery.backends.mongodb.MongoBackend._get_database方法的典型用法代码示例。如果您正苦于以下问题:Python MongoBackend._get_database方法的具体用法?Python MongoBackend._get_database怎么用?Python MongoBackend._get_database使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类celery.backends.mongodb.MongoBackend
的用法示例。
在下文中一共展示了MongoBackend._get_database方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_get_database_authfailure
# 需要导入模块: from celery.backends.mongodb import MongoBackend [as 别名]
# 或者: from celery.backends.mongodb.MongoBackend import _get_database [as 别名]
def test_get_database_authfailure(self):
x = MongoBackend(app=self.app)
x._get_connection = Mock()
conn = x._get_connection.return_value = {}
db = conn[x.database_name] = Mock()
db.authenticate.return_value = False
x.user = 'jerry'
x.password = 'cere4l'
with self.assertRaises(ImproperlyConfigured):
x._get_database()
db.authenticate.assert_called_with('jerry', 'cere4l')
示例2: test_get_database_authfailure
# 需要导入模块: from celery.backends.mongodb import MongoBackend [as 别名]
# 或者: from celery.backends.mongodb.MongoBackend import _get_database [as 别名]
def test_get_database_authfailure(self):
x = MongoBackend()
x._get_connection = Mock()
conn = x._get_connection.return_value = {}
db = conn[x.mongodb_database] = Mock()
db.authenticate.return_value = False
x.mongodb_user = "jerry"
x.mongodb_password = "cere4l"
with self.assertRaises(ImproperlyConfigured):
x._get_database()
db.authenticate.assert_called_with("jerry", "cere4l")
示例3: get_mongo_or_SkipTest
# 需要导入模块: from celery.backends.mongodb import MongoBackend [as 别名]
# 或者: from celery.backends.mongodb.MongoBackend import _get_database [as 别名]
def get_mongo_or_SkipTest():
def emit_no_mongo_msg(reason):
global _no_mongo_msg_emitted
if not _no_mongo_msg_emitted:
sys.stderr.write("\n" + _no_mongo_msg % reason + "\n")
_no_mongo_msg_emitted = True
try:
tb = MongoBackend()
try:
tb._get_database()
except AutoReconnect, exc:
emit_no_mongo_msg("not running")
raise SkipTest("Can't connect to MongoDB: %s" % (exc, ))
return tb
示例4: TestBackendMongoDb
# 需要导入模块: from celery.backends.mongodb import MongoBackend [as 别名]
# 或者: from celery.backends.mongodb.MongoBackend import _get_database [as 别名]
class TestBackendMongoDb(Case):
def setUp(self):
if pymongo is None:
raise SkipTest("pymongo is not installed.")
import datetime
from pymongo import binary
R = self._reset = {}
R["encode"], MongoBackend.encode = MongoBackend.encode, Mock()
R["decode"], MongoBackend.decode = MongoBackend.decode, Mock()
R["Binary"], binary.Binary = binary.Binary, Mock()
R["datetime"], datetime.datetime = datetime.datetime, Mock()
self.backend = MongoBackend()
def tearDown(self):
import datetime
from pymongo import binary
MongoBackend.encode = self._reset["encode"]
MongoBackend.decode = self._reset["decode"]
binary.Binary = self._reset["Binary"]
datetime.datetime = self._reset["datetime"]
def test_get_connection_connection_exists(self):
@patch("pymongo.connection.Connection")
def do_test(mock_Connection):
self.backend._connection = sentinel._connection
connection = self.backend._get_connection()
self.assertEquals(sentinel._connection, connection)
self.assertFalse(mock_Connection.called)
do_test()
def test_get_connection_no_connection_host(self):
@patch("pymongo.connection.Connection")
def do_test(mock_Connection):
self.backend._connection = None
self.backend.mongodb_host = MONGODB_HOST
self.backend.mongodb_port = MONGODB_PORT
mock_Connection.return_value = sentinel.connection
connection = self.backend._get_connection()
mock_Connection.assert_called_once_with(
MONGODB_HOST, MONGODB_PORT)
self.assertEquals(sentinel.connection, connection)
do_test()
def test_get_connection_no_connection_mongodb_uri(self):
@patch("pymongo.connection.Connection")
def do_test(mock_Connection):
mongodb_uri = "mongodb://%s:%d" % (MONGODB_HOST, MONGODB_PORT)
self.backend._connection = None
self.backend.mongodb_host = mongodb_uri
mock_Connection.return_value = sentinel.connection
connection = self.backend._get_connection()
mock_Connection.assert_called_once_with(mongodb_uri)
self.assertEquals(sentinel.connection, connection)
do_test()
@patch("celery.backends.mongodb.MongoBackend._get_connection")
def test_get_database_no_existing(self, mock_get_connection):
# Should really check for combinations of these two, to be complete.
self.backend.mongodb_user = MONGODB_USER
self.backend.mongodb_password = MONGODB_PASSWORD
mock_database = Mock()
mock_connection = MagicMock(spec=['__getitem__'])
mock_connection.__getitem__.return_value = mock_database
mock_get_connection.return_value = mock_connection
database = self.backend._get_database()
self.assertTrue(database is mock_database)
self.assertTrue(self.backend._database is mock_database)
mock_database.authenticate.assert_called_once_with(
MONGODB_USER, MONGODB_PASSWORD)
@patch("celery.backends.mongodb.MongoBackend._get_connection")
def test_get_database_no_existing_no_auth(self, mock_get_connection):
# Should really check for combinations of these two, to be complete.
self.backend.mongodb_user = None
self.backend.mongodb_password = None
mock_database = Mock()
mock_connection = MagicMock(spec=['__getitem__'])
mock_connection.__getitem__.return_value = mock_database
mock_get_connection.return_value = mock_connection
database = self.backend._get_database()
self.assertTrue(database is mock_database)
self.assertFalse(mock_database.authenticate.called)
self.assertTrue(self.backend._database is mock_database)
#.........这里部分代码省略.........