示例#1
0
 def test_uri_input(self):
     test = connection.ConnectionPool()
     yield test.disconnect()
     test = connection.ConnectionPool("mongodb://127.0.0.1/dbname")
     yield test.disconnect()
     test = connection.ConnectionPool(u"mongodb://127.0.0.1/dbname")
     yield test.disconnect()
     self.assertRaises(AssertionError, connection.ConnectionPool, object)
     self.assertRaises(AssertionError, connection.ConnectionPool, 1)
示例#2
0
 def setUp(self):
     self.conn = connection.ConnectionPool("mongodb://127.0.0.1/dbname")
     self.db = self.conn['dbname']
     self.gfs = gridfs.GridFS(self.db)
     for n in range(0, 10):
         data = "Hello" + str(n)
         yield self.gfs.put(data.encode('utf-8'), filename="world")
示例#3
0
 def test_ByURI(self):
     uri = "mongodb://{0}:{1}@{2}:{3}/{4}?authMechanism=MONGODB-CR".format(
         self.login1, self.password1, mongo_host, mongo_port, self.db1)
     conn = connection.ConnectionPool(uri)
     try:
         yield conn[self.db1][self.coll].insert_one({'x': 42})
     finally:
         yield conn.disconnect()
示例#4
0
    def test_ConnectionPool(self):
        conn = connection.ConnectionPool(mongo_uri)

        try:
            yield conn[self.db1].authenticate(self.login1,
                                              self.password1,
                                              mechanism="MONGODB-CR")
            yield conn[self.db1][self.coll].insert_one({'x': 42})
        finally:
            yield conn.disconnect()
示例#5
0
    def test_Fail(self):
        conn = connection.ConnectionPool(mongo_uri)

        try:
            yield conn[self.db1].authenticate(self.login1,
                                              self.password1 + 'x',
                                              mechanism="MONGODB-CR")
            query = conn[self.db1][self.coll].insert_one({'x': 42})
            yield self.assertFailure(query, OperationFailure)
        finally:
            yield conn.disconnect()
示例#6
0
    def test_AuthConnectionPoolUriAuthSource(self):
        def authenticate(database, username, password, mechanism):
            self.assertEqual(database, self.db2)

        with patch('txmongo.connection.ConnectionPool.authenticate',
                   side_effect=authenticate):
            conn = connection.ConnectionPool(
                "mongodb://{0}:{1}@{2}:{3}/{4}?authSource={5}".format(
                    self.login1, self.password1, mongo_host, mongo_port,
                    self.db1, self.db2))
            yield conn.disconnect()
示例#7
0
    def test_AuthConnectionPoolUri(self):
        pool_size = 5

        conn = connection.ConnectionPool(
            "mongodb://{0}:{1}@{2}:{3}/{4}".format(self.login1, self.password1,
                                                   mongo_host, mongo_port,
                                                   self.db1))
        db = conn.get_default_database()
        coll = db[self.coll]

        n = pool_size + 1

        try:
            yield defer.gatherResults(
                [coll.insert({'x': 42}) for _ in range(n)])

            cnt = yield coll.count()
            self.assertEqual(cnt, n)
        finally:
            yield conn.disconnect()
示例#8
0
 def __get_connection(self, pool_size=1):
     return connection.ConnectionPool(mongo_uri, pool_size)
示例#9
0
 def setUp(self):
     self.named_conn = connection.ConnectionPool(
         "mongodb://127.0.0.1/dbname")
     self.unnamed_conn = connection.ConnectionPool("127.0.0.1")
示例#10
0
 def setUp(self):
     self.conn = connection.ConnectionPool()
     self.db = self.conn.db
     self.coll = self.db.coll
     yield self.coll.insert({'x': 42})
     yield self.assert_coll_count(1)