. */ namespace OCA\News\Tests\Unit\Db; use Doctrine\DBAL\Driver\Statement; use OCP\DB\QueryBuilder\IQueryBuilder; use OCP\IDBConnection; use PDOStatement; use PHPUnit\Framework\MockObject\MockObject; use PHPUnit\Framework\TestCase; /** * Simple utility class for testing mappers */ abstract class MapperTestUtility extends TestCase { /** * @var MockObject|IDBConnection */ protected $db; /** * @var MockObject|PDOStatement */ protected $query; /** * @var MockObject|IQueryBuilder */ protected $builder; /** * @var MockObject|Statement */ protected $cursor; /** * Run this function before the actual test to either set or initialize the * db. After this the db can be accessed by using $this->db */ protected function setUp(): void { parent::setUp(); $this->db = $this->getMockBuilder(IDBConnection::class) ->disableOriginalConstructor() ->getMock(); $this->query = $this->getMockBuilder(PDOStatement::class) ->getMock(); $this->builder = $this->getMockBuilder(IQueryBuilder::class) ->disableOriginalConstructor() ->getMock(); $this->cursor = $this->getMockBuilder(Statement::class) ->addMethods(['fetch', 'closeCursor']) ->getMockForAbstractClass(); } }