3 namespace Doctrine\Tests\Mocks;
5 class ConnectionMock extends \Doctrine\DBAL\Connection
7 private $_fetchOneResult;
8 private $_platformMock;
9 private $_lastInsertId = 0;
10 private $_inserts = array();
11 private $_executeUpdates = array();
13 public function __construct(array $params, $driver, $config = null, $eventManager = null)
15 $this->_platformMock = new DatabasePlatformMock();
17 parent::__construct($params, $driver, $config, $eventManager);
19 // Override possible assignment of platform to database platform mock
20 $this->_platform = $this->_platformMock;
26 public function getDatabasePlatform()
28 return $this->_platformMock;
34 public function insert($tableName, array $data, array $types = array())
36 $this->_inserts[$tableName][] = $data;
42 public function executeUpdate($query, array $params = array(), array $types = array())
44 $this->_executeUpdates[] = array('query' => $query, 'params' => $params, 'types' => $types);
50 public function lastInsertId($seqName = null)
52 return $this->_lastInsertId;
58 public function fetchColumn($statement, array $params = array(), $colnum = 0)
60 return $this->_fetchOneResult;
66 public function quote($input, $type = null)
68 if (is_string($input)) {
69 return "'" . $input . "'";
76 public function setFetchOneResult($fetchOneResult)
78 $this->_fetchOneResult = $fetchOneResult;
81 public function setDatabasePlatform($platform)
83 $this->_platformMock = $platform;
86 public function setLastInsertId($id)
88 $this->_lastInsertId = $id;
91 public function getInserts()
93 return $this->_inserts;
96 public function getExecuteUpdates()
98 return $this->_executeUpdates;
101 public function reset()
103 $this->_inserts = array();
104 $this->_lastInsertId = 0;