]> git.mxchange.org Git - friendica.git/blobdiff - tests/Util/Database/StaticDatabase.php
Merge branch '2021.03-rc' into copyright-2021
[friendica.git] / tests / Util / Database / StaticDatabase.php
index c95b690c635801bd04039ac9d19f93eb920cdb83..48b392978811934f53c82025da99ea51d644091d 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2020, Friendica
+ * @copyright Copyright (C) 2010-2021, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -22,6 +22,7 @@
 namespace Friendica\Test\Util\Database;
 
 use Friendica\Database\Database;
+use Friendica\Database\DatabaseException;
 use PDO;
 use PDOException;
 
@@ -57,7 +58,6 @@ class StaticDatabase extends Database
                $this->connection = self::$staticConnection;
                $this->connected = true;
                $this->emulate_prepares = false;
-               $this->pdo_emulate_prepares = false;
 
                return $this->connected;
        }
@@ -80,7 +80,7 @@ class StaticDatabase extends Database
        /**
         * Does a commit
         *
-        * @return boolean Was the command executed successfully?
+        * @return bool Was the command executed successfully?
         */
        public function commit()
        {
@@ -96,12 +96,14 @@ class StaticDatabase extends Database
         * Either through explicit calling or through implicit using the Database
         *
         * @param array $server $_SERVER variables
+        *
+        * @throws \Exception
         */
        public static function statConnect(array $server)
        {
                // Use environment variables for mysql if they are set beforehand
                if (!empty($server['MYSQL_HOST'])
-                   && (!empty($server['MYSQL_USERNAME'] || !empty($server['MYSQL_USER'])))
+                   && (!empty($server['MYSQL_USERNAME']) || !empty($server['MYSQL_USER']))
                    && $server['MYSQL_PASSWORD'] !== false
                    && !empty($server['MYSQL_DATABASE']))
                {
@@ -119,6 +121,10 @@ class StaticDatabase extends Database
                        $db_data = $server['MYSQL_DATABASE'];
                }
 
+               if (empty($db_host) || empty($db_user) || empty($db_data)) {
+                       throw new DatabaseException('Either one of the following settings are missing: Host, User or Database', 999, 'CONNECT');
+               }
+
                $port       = 0;
                $serveraddr = trim($db_host);
                $serverdata = explode(':', $serveraddr);
@@ -128,7 +134,7 @@ class StaticDatabase extends Database
                }
                $server  = trim($server);
                $user    = trim($db_user);
-               $pass    = trim($db_pw);
+               $pass    = trim($db_pw ?? '');
                $db      = trim($db_data);
 
                if (!(strlen($server) && strlen($user))) {