/usr/share/php/Horde/Test/Factory/Mongo.php is in php-horde-test 2.2.6-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | <?php
/**
* Copyright 2013 Horde LLC (http://www.horde.org/)
*
* See the enclosed file COPYING for license information (LGPL). If you
* did not receive this file, see http://www.horde.org/licenses/lgpl21.
*
* @category Horde
* @license http://www.horde.org/licenses/lgpl21 LGPL
* @link http://www.horde.org/components/Horde_Test
* @package Test
*/
/**
* Generates test MongoDB database.
*
* @author Michael Slusarz <slusarz@horde.org>
* @category Horde
* @copyright 2013 Horde LLC
* @ignore
* @license http://www.horde.org/licenses/lgpl21 LGPL
* @link http://www.horde.org/components/Horde_Test
* @package Test
*/
class Horde_Test_Factory_Mongo
{
const DEFAULT_DB = 'horde_mongo_testdb';
/**
* Create a connector to a temporary MongoDB instance.
*
* @params array $params Additional options:
* <pre>
* - config: (array) Configuration for Horde_Mongo_Client.
* - dbname: (string) Database name to use.
* </pre>
*
* @return Horde_Mongo_Client|null The DB object.
*/
public function create(array $params = array())
{
$mongo = null;
if (extension_loaded('mongo') &&
class_exists('Horde_Mongo_Client') &&
!empty($params['config'])) {
try {
$mongo = new Horde_Mongo_Client($params['config']);
$mongo->dbname = isset($params['dbname'])
? $params['dbname']
: self::DEFAULT_DB;
$mongo->selectDB(null)->drop();
} catch (Exception $e) {}
}
return $mongo;
}
}
|