Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
PostgresDatabaseCreator
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 2
6
0.00% covered (danger)
0.00%
0 / 1
 existsInConnection
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 createInConnection
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace MediaWiki\Installer;
4
5use MediaWiki\Status\Status;
6use Wikimedia\Rdbms\IDatabase;
7
8class PostgresDatabaseCreator extends NetworkedDatabaseCreator {
9    /** @inheritDoc */
10    protected function existsInConnection( IDatabase $conn, $database ) {
11        return (bool)$conn->selectField( 'pg_catalog.pg_database', '1',
12            [ 'datname' => $database ], __METHOD__ );
13    }
14
15    /** @inheritDoc */
16    protected function createInConnection( IDatabase $conn, $database ): Status {
17        $safedb = $conn->addIdentifierQuotes( $database );
18        $conn->query( "CREATE DATABASE $safedb", __METHOD__ );
19        return Status::newGood();
20    }
21}