<?php
-const PQ_TEST_DSN = "";
+ini_set("date.timezone", "UTC");
+ini_set("error_reporting", E_ALL);
-const PQ_TEST_TABLE_CREATE = <<<SQL
+define("PQ_TEST_DSN", getenv("PQ_TEST_DSN"));
+
+const PQ_TEST_SETUP_SQL = <<<SQL
+ create extension if not exists hstore;
+
drop table if exists test cascade;
create table test (
id serial primary key,
created timestamp,
counter int,
number decimal,
- data text
- )
-SQL;
-
-const PQ_TEST_TABLE_DROP = <<<SQL
- drop table if exists test cascade;
-SQL;
-
-const PQ_TEST_REFTABLE_CREATE = <<<SQL
+ data text,
+ list int[],
+ prop hstore
+ );
+
drop table if exists reftest cascade;
create table reftest (
test_id integer not null references test on delete cascade,
another_test_id integer not null references test on delete cascade
);
-SQL;
-
-const PQ_TEST_REFTABLE_DROP = <<<SQL
- drop table if exists reftest cascade;
-SQL;
-
-const PQ_TEST_DATA = <<<SQL
- insert into test values (default, 'yesterday', -1, -1.1, 'yesterday');
- insert into test values (default, 'today', 0, 0, 'today');
- insert into test values (default, 'tomorrow', 1, 1.1, 'tomorrow');
+
+ insert into test values (default, 'yesterday', -1, -1.1, 'yesterday', '{-1,0,1}');
+ insert into test values (default, 'today', 0, 0, 'today', '{0,1,2}');
+ insert into test values (default, 'tomorrow', 1, 1.1, 'tomorrow', '{1,2,3}');
insert into reftest values (1,3);
insert into reftest values (2,2);
insert into reftest values (3,1);
SQL;
-spl_autoload_register(function($c) {
- if (substr($c,0,3) == "pq\\") return require_once sprintf("%s/../lib/%s.php", __DIR__, strtr($c, "\\", "/"));
-});
+const PQ_TEST_TEARDOWN_SQL = <<<SQL
+ drop table if exists test cascade;
+ drop table if exists reftest cascade;
+SQL;
+
+require_once __DIR__ . "/../vendor/autoload.php";
function executeInConcurrentTransaction(\pq\Query\ExecutorInterface $exec, $sql, array $params = null) {
$conn = $exec->getConnection();