1
0
mirror of synced 2024-12-15 07:36:03 +03:00
doctrine2/tests/Doctrine/Tests/Mocks/DriverMock.php

89 lines
1.8 KiB
PHP

<?php
namespace Doctrine\Tests\Mocks;
/**
* Mock class for Driver.
*/
class DriverMock implements \Doctrine\DBAL\Driver
{
/**
* @var \Doctrine\DBAL\Platforms\AbstractPlatform|null
*/
private $_platformMock;
/**
* @var \Doctrine\DBAL\Schema\AbstractSchemaManager|null
*/
private $_schemaManagerMock;
/**
* {@inheritdoc}
*/
public function connect(array $params, $username = null, $password = null, array $driverOptions = array())
{
return new DriverConnectionMock();
}
/**
* {@inheritdoc}
*/
public function getDatabasePlatform()
{
if ( ! $this->_platformMock) {
$this->_platformMock = new DatabasePlatformMock;
}
return $this->_platformMock;
}
/**
* {@inheritdoc}
*/
public function getSchemaManager(\Doctrine\DBAL\Connection $conn)
{
if ($this->_schemaManagerMock == null) {
return new SchemaManagerMock($conn);
} else {
return $this->_schemaManagerMock;
}
}
/* MOCK API */
/**
* @param \Doctrine\DBAL\Platforms\AbstractPlatform $platform
*
* @return void
*/
public function setDatabasePlatform(\Doctrine\DBAL\Platforms\AbstractPlatform $platform)
{
$this->_platformMock = $platform;
}
/**
* @param \Doctrine\DBAL\Schema\AbstractSchemaManager $sm
*
* @return void
*/
public function setSchemaManager(\Doctrine\DBAL\Schema\AbstractSchemaManager $sm)
{
$this->_schemaManagerMock = $sm;
}
/**
* {@inheritdoc}
*/
public function getName()
{
return 'mock';
}
/**
* {@inheritdoc}
*/
public function getDatabase(\Doctrine\DBAL\Connection $conn)
{
return;
}
}