skipif.inc 980 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. // This script prints "skip" unless:
  3. // * the pgsql extension is built-in or loadable, AND
  4. // * there is a database called "test" accessible
  5. // with no username/password, AND
  6. // * we have create/drop privileges on the entire "test"
  7. // database
  8. include("config.inc");
  9. include("lcmess.inc");
  10. if (!extension_loaded("pgsql")) {
  11. die("skip\n");
  12. }
  13. $conn = @pg_connect($conn_str);
  14. if (!is_resource($conn)) {
  15. die("skip could not connect\n");
  16. }
  17. function skip_server_version($version, $op = '<')
  18. {
  19. $pg = pg_parameter_status('server_version');
  20. if (version_compare($pg, $version, $op)) {
  21. die("skip Server version {$pg} is {$op} {$version}\n");
  22. }
  23. return $pg;
  24. }
  25. function skip_bytea_not_hex()
  26. {
  27. $out = pg_escape_bytea("\xFF");
  28. if (strpos($out, '377') !== false) {
  29. die("skip libpq or backend < 9.0\n");
  30. }
  31. }
  32. function skip_bytea_not_escape()
  33. {
  34. $out = pg_escape_bytea("\xFF");
  35. if (strpos($out, '377') === false) {
  36. die("skip libpq or backend >= 9.0\n");
  37. }
  38. }
  39. ?>