/** * @covers Veles\DataBase\Adapters\PdoAdapter::getStmt */ public function testGetStmt() { $stmt = $this->getMockBuilder('\\PDOStatement')->setMethods(['fetchColumn'])->getMock(); $stmt->expects($this->once())->method('fetchColumn'); $resource = $this->getMockBuilder('\\PDO')->disableOriginalConstructor()->setMethods(['prepare'])->getMock(); $resource->expects($this->once())->method('prepare')->willReturn($stmt); $conn = $this->getMockBuilder('\\Veles\\DataBase\\Connections\\PdoConnection')->setConstructorArgs(['master'])->setMethods(['getResource'])->getMock(); $conn->expects($this->once())->method('getResource')->willReturn($resource); $pool = $this->getMockBuilder('\\Veles\\DataBase\\ConnectionPools\\ConnectionPool')->setMethods(['getConnection'])->getMock(); $pool->expects($this->once())->method('getConnection')->willReturn($conn); $this->object->setPool($pool); $this->object->value('sql query', [], null); $actual = $this->object->getStmt(); $msg = 'PdoAdapter::getStmt() returns wrong result!'; $this->assertSame($stmt, $actual, $msg); }