From fef3eccc61b310c750354b2829134bdce417d505 Mon Sep 17 00:00:00 2001 From: David Grudl Date: Wed, 4 Nov 2015 13:40:19 +0100 Subject: [PATCH] tests: added missing items to databases.sample.ini & etc --- tests/databases.sample.ini | 80 ++++++++++++++++++++++----------- tests/dibi/PdoMssql.limits.phpt | 2 +- tests/dibi/bootstrap.php | 4 +- tests/dibi/data/sqlsrv.sql | 46 +++++++++++++++++++ 4 files changed, 103 insertions(+), 29 deletions(-) create mode 100644 tests/dibi/data/sqlsrv.sql diff --git a/tests/databases.sample.ini b/tests/databases.sample.ini index 981c0a6d..f95d2bce 100644 --- a/tests/databases.sample.ini +++ b/tests/databases.sample.ini @@ -1,3 +1,18 @@ +[sqlite3] ; default +driver = sqlite3 +database = :memory: +system = sqlite + +[sqlite2] +driver = sqlite +database = :memory: +system = sqlite + +[sqlite-pdo] +driver = pdo +dsn = "sqlite::memory:" +system = sqlite + [mysql] driver = mysql host = 127.0.0.1 @@ -14,15 +29,12 @@ password = charset = utf8 system = mysql -[sqlite2] -driver = sqlite -database = :memory: -system = sqlite - -[sqlite3] ; default -driver = sqlite3 -database = :memory: -system = sqlite +[mysql-pdo] +driver = pdo +dsn = "mysql:host=127.0.0.1" +username = root +password = +system = mysql [postgre] driver = postgre @@ -31,9 +43,23 @@ username = postgres password = system = postgre +[postgre-pdo] +driver = pdo +dsn = "pgsql:host=127.0.0.1;dbname=dibi_test" +username = postgres +password = +system = postgre + [odbc] driver = odbc -dsn = "Driver={Microsoft Access Driver (*.mdb)}Dbq=data/odbc_tmp.mdb" +dsn = "Driver={Microsoft Access Driver (*.mdb)};Dbq=data/odbc.mdb" +system = odbc + +[odbc-pdo] +driver = pdo +dsn = "odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=data/odbc.mdb" +username = +password = system = odbc [mssql] @@ -41,14 +67,21 @@ driver = mssql host = 127.0.0.1 username = dibi password = -system = mssql +system = sqlsrv [mssql2005] driver = mssql2005 host = (local) username = dibi password = -system = mssql +system = sqlsrv + +[sqlsrv-pdo] +driver = pdo +dsn = "sqlsrv:Server=127.0.0.1" +username = dibi +password = +system = sqlsrv [oracle] driver = oracle @@ -56,21 +89,16 @@ username = dibi password = system = oracle -[sqlite-pdo] +[oracle-pdo] driver = pdo -dsn = "sqlite::memory:" -system = sqlite - -[mysql-pdo] -driver = pdo -dsn = "mysql:host=127.0.0.1" -username = root +dsn = "oci:dbname=dibi" +username = dibi password = -system = mysql +system = oracle -[postgre-pdo] -driver = pdo -dsn = "pgsql:host=127.0.0.1;dbname=dibi_test" -username = postgres +[firebird] +driver = firebird +database = database.fdb +username = dibi password = -system = postgre +system = firebird diff --git a/tests/dibi/PdoMssql.limits.phpt b/tests/dibi/PdoMssql.limits.phpt index 995381be..04c0f528 100644 --- a/tests/dibi/PdoMssql.limits.phpt +++ b/tests/dibi/PdoMssql.limits.phpt @@ -8,7 +8,7 @@ use Tester\Assert; require __DIR__ . '/bootstrap.php'; -if ($config['system'] !== 'mssql' || $config['driver'] !== 'pdo') { +if ($config['system'] !== 'sqlsrv' || $config['driver'] !== 'pdo') { Tester\Environment::skip("Not supported system '$config[system]'."); } diff --git a/tests/dibi/bootstrap.php b/tests/dibi/bootstrap.php index dcdfd52e..42dfa906 100644 --- a/tests/dibi/bootstrap.php +++ b/tests/dibi/bootstrap.php @@ -19,7 +19,7 @@ try { $config = Tester\Environment::loadData(); } catch (Exception $e) { $config = parse_ini_file(__DIR__ . '/../databases.ini', TRUE); - $config = $config['sqlite3']; + $config = reset($config); } @@ -63,7 +63,7 @@ function reformat($s) return strtr($s, '[]', '``'); } elseif ($config['system'] === 'postgre') { return strtr($s, '[]', '""'); - } elseif ($config['system'] === 'odbc' || $config['system'] === 'sqlite') { + } elseif (in_array($config['system'], array('odbc', 'sqlite', 'sqlsrv'))) { return $s; } else { trigger_error("Unsupported driver $config[system]", E_USER_WARNING); diff --git a/tests/dibi/data/sqlsrv.sql b/tests/dibi/data/sqlsrv.sql new file mode 100644 index 00000000..983ca4bf --- /dev/null +++ b/tests/dibi/data/sqlsrv.sql @@ -0,0 +1,46 @@ +IF OBJECT_ID('orders', 'U') IS NOT NULL DROP TABLE orders; +IF OBJECT_ID('products', 'U') IS NOT NULL DROP TABLE products; +IF OBJECT_ID('customers', 'U') IS NOT NULL DROP TABLE customers; + + +CREATE TABLE products ( + product_id int NOT NULL IDENTITY(11,1), + title varchar(50) NOT NULL, + PRIMARY KEY(product_id) +); + +SET IDENTITY_INSERT products ON; +INSERT INTO products (product_id, title) VALUES (1, 'Chair'); +INSERT INTO products (product_id, title) VALUES (2, 'Table'); +INSERT INTO products (product_id, title) VALUES (3, 'Computer'); +SET IDENTITY_INSERT products OFF; + +CREATE TABLE customers ( + customer_id int NOT NULL IDENTITY(11,1), + name varchar(50) NOT NULL, + PRIMARY KEY(customer_id) +); + +SET IDENTITY_INSERT customers ON; +INSERT INTO customers (customer_id, name) VALUES (1, 'Dave Lister'); +INSERT INTO customers (customer_id, name) VALUES (2, 'Arnold Rimmer'); +INSERT INTO customers (customer_id, name) VALUES (3, 'The Cat'); +INSERT INTO customers (customer_id, name) VALUES (4, 'Holly'); +INSERT INTO customers (customer_id, name) VALUES (5, 'Kryten'); +INSERT INTO customers (customer_id, name) VALUES (6, 'Kristine Kochanski'); +SET IDENTITY_INSERT customers OFF; + +CREATE TABLE orders ( + order_id int NOT NULL IDENTITY(11,1), + customer_id int NOT NULL, + product_id int NOT NULL, + amount float NOT NULL, + PRIMARY KEY(order_id) +); + +SET IDENTITY_INSERT orders ON; +INSERT INTO orders (order_id, customer_id, product_id, amount) VALUES (1, 2, 1, 7); +INSERT INTO orders (order_id, customer_id, product_id, amount) VALUES (2, 2, 3, 2); +INSERT INTO orders (order_id, customer_id, product_id, amount) VALUES (3, 1, 2, 3); +INSERT INTO orders (order_id, customer_id, product_id, amount) VALUES (4, 6, 3, 5); +SET IDENTITY_INSERT orders OFF;