config.inc 2.4 KB

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