/**
  * {@inheritdoc}
  */
 public function createAdapter(array $options = [])
 {
     if (!empty($options['dsn'])) {
         $dsn = new DSN($options['dsn']);
         if (!$dsn->isValid()) {
             throw new \InvalidArgumentException('Invalid DSN: ' . $options['dsn']);
         }
         $this->DSN = $dsn;
     }
     return parent::createAdapter($options);
 }
示例#2
0
 /**
  * @param string $dsn
  * @param array  $parameters
  *
  * @dataProvider parameterValues
  */
 public function testParameterValues($dsn, $parameters)
 {
     $dsn = new DSN($dsn);
     foreach ($parameters as $key => $value) {
         $this->assertEquals($value, $dsn->getParameters()[$key]);
     }
 }