示例#1
0
    class custom_database_wrapper(object):
        def __init__(self, settings, **kwargs):
            self.new_wrapper = DatabaseWrapper(dict(connection.settings_dict, **settings), **kwargs)

        def __enter__(self):
            self._old_connection = getattr(connections._connections, "default")
            connections._connections.default = self.new_wrapper
            self.new_wrapper._connect()
            return self.new_wrapper

        def __exit__(self, *exc_info):
            self.new_wrapper.connection.disconnect()
            connections._connections.default = self._old_connection
示例#2
0
    class custom_database_wrapper(object):
        def __init__(self, settings, **kwargs):
            self.new_wrapper = DatabaseWrapper(
                dict(connection.settings_dict, **settings), **kwargs)

        def __enter__(self):
            self._old_connection = getattr(connections._connections, 'default')
            connections._connections.default = self.new_wrapper
            self.new_wrapper._connect()
            return self.new_wrapper

        def __exit__(self, *exc_info):
            self.new_wrapper.connection.close()
            connections._connections.default = self._old_connection
示例#3
0
    def test_databasewrapper_api(self):
        from pymongo.connection import Connection
        from pymongo.database import Database
        from pymongo.collection import Collection
        from random import shuffle

        if settings.DEBUG:
            from django_mongodb_engine.utils import CollectionDebugWrapper as Collection

        for wrapper in [connection, DatabaseWrapper(connection.settings_dict)]:
            calls = [
                lambda: self.assertIsInstance(wrapper.get_collection('foo'), Collection),
                lambda: self.assertIsInstance(wrapper.database, Database),
                lambda: self.assertIsInstance(wrapper.connection, Connection)
            ]
            shuffle(calls)
            for call in calls:
                call()
示例#4
0
 def __init__(self, settings, **kwargs):
     self.new_wrapper = DatabaseWrapper(
         dict(connection.settings_dict, **settings),
         **kwargs)
示例#5
0
 def __init__(self, settings, **kwargs):
     self.new_wrapper = DatabaseWrapper(
         dict(connection.settings_dict, **settings), **kwargs)