public function test() { $config = array(PDOConfig::KEY_HOST => 'localhost', PDOConfig::KEY_DATABASE => 'database_name', PDOConfig::KEY_ENGINE => 'mysql_engine', PDOConfig::KEY_USER => 'user_name', PDOConfig::KEY_PASS => 'password'); $pdoConfig = new PDOConfig($config); # # DNS # $actual = $pdoConfig->getDNS(); $expected = "mysql_engine:dbname=database_name;host=localhost;"; $this->assertEquals($expected, $actual); # # UserName # $actual = $pdoConfig->getUserName(); $expected = 'user_name'; $this->assertEquals($expected, $actual, __CLASS__ . "::" . __METHOD__ . ": line " . __LINE__); # # Password # $actual = $pdoConfig->getPassword(); $expected = 'password'; $this->assertEquals($expected, $actual, __CLASS__ . "::" . __METHOD__ . ": line " . __LINE__); # # Options (default) # $actual = $pdoConfig->getOptions(); $expected = array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''); $this->assertEquals($expected, $actual, __CLASS__ . "::" . __METHOD__ . ": line " . __LINE__); $config = array(PDOConfig::KEY_HOST => 'localhost', PDOConfig::KEY_DATABASE => 'database_name', PDOConfig::KEY_ENGINE => 'mysql_engine', PDOConfig::KEY_USER => 'user_name', PDOConfig::KEY_PASS => 'password', PDOConfig::KEY_OPTIONS => array('option1' => 'option value1')); # # Options # $pdoConfig = new PDOConfig($config); $actual = $pdoConfig->getOptions(); $expected = array('option1' => 'option value1'); $this->assertEquals($expected, $actual, __CLASS__ . "::" . __METHOD__ . ": line " . __LINE__); }
/** * @param PDOConfig $pdoConfig */ public function __construct($pdoConfig) { parent::__construct($pdoConfig->getDNS(), $pdoConfig->getUserName(), $pdoConfig->getPassword(), $pdoConfig->getOptions()); }