private function createConnection() { $connection = new Database(new LazyDBConnectionProvider(DB_SLAVE), new LazyDBConnectionProvider(DB_MASTER)); $connection->setDBPrefix($GLOBALS['wgDBprefix']); $connection->resetTransactionProfiler($this->resetTransactionProfiler); return $connection; }
/** * @dataProvider dbTypeProvider */ public function testTableNameMethod($type) { $database = $this->getMockBuilder('\\DatabaseBase')->disableOriginalConstructor()->setMethods(array('tableName', 'getType'))->getMockForAbstractClass(); $database->expects($this->any())->method('tableName')->with($this->equalTo('Foo'))->will($this->returnValue('Foo')); $database->expects($this->once())->method('getType')->will($this->returnValue($type)); $connectionProvider = $this->getMockBuilder('\\SMW\\DBConnectionProvider')->disableOriginalConstructor()->getMock(); $connectionProvider->expects($this->atLeastOnce())->method('getConnection')->will($this->returnValue($database)); $instance = new Database($connectionProvider); $instance->setDBPrefix('bar_'); $expected = $type === 'sqlite' ? 'bar_Foo' : 'Foo'; $this->assertEquals($expected, $instance->tableName('Foo')); }