xref: /PHP-8.2/ext/pdo_mysql/tests/config.inc (revision f4a600be)
1<?php
2/* Overrule global settings, if need be */
3
4if (false !== getenv('PDO_MYSQL_TEST_DSN')) {
5    # user set them from their shell
6    $config['ENV']['PDOTEST_DSN'] = getenv('PDO_MYSQL_TEST_DSN');
7    $config['ENV']['PDOTEST_USER'] = getenv('PDO_MYSQL_TEST_USER');
8    $config['ENV']['PDOTEST_PASS'] = getenv('PDO_MYSQL_TEST_PASS');
9    if (false !== getenv('PDO_MYSQL_TEST_ATTR')) {
10        $config['ENV']['PDOTEST_ATTR'] = getenv('PDO_MYSQL_TEST_ATTR');
11    }
12} else {
13    $config['ENV']['PDOTEST_DSN'] = 'mysql:host=localhost;dbname=test';
14    $config['ENV']['PDOTEST_USER'] = 'root';
15    $config['ENV']['PDOTEST_PASS'] = '';
16}
17
18foreach ($config['ENV'] as $k => $v) {
19    putenv("$k=$v");
20}
21
22/* MySQL specific settings */
23define('PDO_MYSQL_TEST_ENGINE', (false !== getenv('PDO_MYSQL_TEST_ENGINE')) ? getenv('PDO_MYSQL_TEST_ENGINE') : 'InnoDB');
24define('PDO_MYSQL_TEST_HOST', (false !== getenv('PDO_MYSQL_TEST_HOST')) ? getenv('PDO_MYSQL_TEST_HOST') : 'localhost');
25define('PDO_MYSQL_TEST_PORT', (false !== getenv('PDO_MYSQL_TEST_PORT')) ? getenv('PDO_MYSQL_TEST_PORT') : NULL);
26define('PDO_MYSQL_TEST_DB', (false !== getenv('PDO_MYSQL_TEST_DB')) ? getenv('PDO_MYSQL_TEST_DB') : 'test');
27define('PDO_MYSQL_TEST_SOCKET', (false !== getenv('PDO_MYSQL_TEST_SOCKET')) ? getenv('PDO_MYSQL_TEST_SOCKET') : NULL);
28define('PDO_MYSQL_TEST_DSN', (false !== getenv('PDO_MYSQL_TEST_DSN')) ? getenv('PDO_MYSQL_TEST_DSN') : $config['ENV']['PDOTEST_DSN']);
29define('PDO_MYSQL_TEST_USER', (false !== getenv('PDO_MYSQL_TEST_USER')) ? getenv('PDO_MYSQL_TEST_USER') : $config['ENV']['PDOTEST_USER']);
30define('PDO_MYSQL_TEST_PASS', (false !== getenv('PDO_MYSQL_TEST_PASS')) ? getenv('PDO_MYSQL_TEST_PASS') : $config['ENV']['PDOTEST_PASS']);
31define('PDO_MYSQL_TEST_CHARSET', (false !== getenv('PDO_MYSQL_TEST_CHARSET')) ? getenv('PDO_MYSQL_TEST_CHARSET') : NULL);
32
33if (!function_exists('sys_get_temp_dir')) {
34    function sys_get_temp_dir() {
35
36        if (!empty($_ENV['TMP']))
37            return realpath( $_ENV['TMP'] );
38        if (!empty($_ENV['TMPDIR']))
39            return realpath( $_ENV['TMPDIR'] );
40        if (!empty($_ENV['TEMP']))
41            return realpath( $_ENV['TEMP'] );
42
43        $temp_file = tempnam(md5(uniqid(rand(), TRUE)), '');
44        if ($temp_file) {
45            $temp_dir = realpath(dirname($temp_file));
46            unlink($temp_file);
47            return $temp_dir;
48        }
49        return FALSE;
50    }
51}
52?>
53