11<?php
22
3- require ' vendor/autoload.php ' ;
3+ namespace ezsql \ Tests ;
44
55use ezsql \ezSchema ;
6- use PHPUnit \Framework \TestCase ;
7-
8- class ezSchemaTest extends TestCase
9- {
10- /**
11- * constant string user name
12- */
13- const TEST_DB_USER = 'ez_test ' ;
14-
15- /**
16- * constant string password
17- */
18- const TEST_DB_PASSWORD = 'ezTest ' ;
19-
20- /**
21- * constant database name
22- */
23- const TEST_DB_NAME = 'ez_test ' ;
24-
25- /**
26- * constant database host
27- */
28- const TEST_DB_HOST = 'localhost ' ;
29-
30- /**
31- * constant database connection charset
32- */
33- const TEST_DB_CHARSET = 'utf8 ' ;
34-
35- /**
36- * constant database port
37- */
38- const TEST_DB_PORT = '5432 ' ;
39-
40- /**
41- * constant string path and file name of the SQLite test database
42- */
43- const TEST_SQLITE_DB = 'ez_test.sqlite3 ' ;
44- const TEST_SQLITE_DB_DIR = './tests/sqlite/ ' ;
6+ use ezsql \Tests \EZTestCase ;
457
8+ class ezSchemaTest extends EZTestCase
9+ {
4610 /**
4711 * @covers ezsql\ezSchema::vendor
4812 */
4913 public function testVendor ()
5014 {
51- setQuery ();
52- $ this ->assertEquals (null , ezSchema:: vendor ());
15+ clearInstance ();
16+ $ this ->assertEquals (null , getVendor ());
5317 $ this ->assertEquals (false , ezSchema::datatype (BLOB , NULLS ));
5418 $ this ->assertFalse (column ('id ' , INTR , 32 , AUTO , PRIMARY ));
5519 }
@@ -65,10 +29,8 @@ public function testVendor_mysqli()
6529 );
6630 }
6731
68- $ object = new ezSQL_mysqli ;
69- $ object ->quick_connect (self ::TEST_DB_USER , self ::TEST_DB_PASSWORD , self ::TEST_DB_NAME );
70-
71- $ this ->assertEquals (MYSQLI , ezSchema::vendor ());
32+ mysqlInstance ([self ::TEST_DB_USER , self ::TEST_DB_PASSWORD , self ::TEST_DB_NAME ]);
33+ $ this ->assertEquals (MYSQLI , getVendor ());
7234 $ this ->assertEquals ('BLOB NULL ' , ezSchema::datatype (BLOB , NULLS ));
7335 $ this ->assertEquals ('VARCHAR(256) NOT NULL ' , ezSchema::datatype (VARCHAR , 256 , notNULL));
7436 $ this ->assertEquals ('id INT(32) AUTO_INCREMENT PRIMARY KEY, ' , column ('id ' , INTR , 32 , AUTO , PRIMARY ));
@@ -85,9 +47,8 @@ public function testVendor_Pgsql()
8547 );
8648 }
8749
88- $ object = new ezSQL_postgresql ;
89- $ object ->quick_connect (self ::TEST_DB_USER , self ::TEST_DB_PASSWORD , self ::TEST_DB_NAME , self ::TEST_DB_HOST , self ::TEST_DB_PORT );
90- $ this ->assertEquals (PGSQL , ezSchema::vendor ());
50+ pgsqlInstance ([self ::TEST_DB_USER , self ::TEST_DB_PASSWORD , self ::TEST_DB_NAME , self ::TEST_DB_HOST , self ::TEST_DB_PORT ]);
51+ $ this ->assertEquals (PGSQL , getVendor ());
9152 $ this ->assertEquals ('TIMESTAMP NOT NULL ' , ezSchema::datatype (TIMESTAMP , notNULL));
9253 $ this ->assertEquals ('price NUMERIC(6,2) NULL, ' , column ('price ' , NUMERIC , 6 , 2 , NULLS ));
9354 $ this ->assertEquals ('id SERIAL PRIMARY KEY, ' , column ('id ' , AUTO , PRIMARY ));
@@ -104,8 +65,8 @@ public function testVendor_Sqlite3()
10465 );
10566 }
10667
107- $ object = new ezSQL_sqlite3 ( self ::TEST_SQLITE_DB_DIR , self ::TEST_SQLITE_DB );
108- $ this ->assertEquals (SQLITE3 , ezSchema:: vendor ());
68+ sqliteInstance ([ self ::TEST_SQLITE_DB_DIR , self ::TEST_SQLITE_DB ]);
69+ $ this ->assertEquals (SQLITE3 , getVendor ());
10970 }
11071
11172 /**
@@ -119,8 +80,23 @@ public function testVendor_Sqlsrv()
11980 );
12081 }
12182
122- $ object = new ezSQL_sqlsrv ;
123- $ object ->quick_connect (self ::TEST_DB_USER , self ::TEST_DB_PASSWORD , self ::TEST_DB_NAME );
124- $ this ->assertEquals (MSSQL , ezSchema::vendor ());
83+ mssqlInstance ([self ::TEST_DB_USER , self ::TEST_DB_PASSWORD , self ::TEST_DB_NAME ]);
84+ $ this ->assertEquals (MSSQL , getVendor ());
85+ }
86+
87+ /**
88+ * @covers ezsql\ezSchema::vendor
89+ */
90+ public function testVendor_Pdo ()
91+ {
92+ if ( ! \class_exists ('PDO ' ) ) {
93+ $ this ->markTestSkipped (
94+ 'The PDO Lib is not available. '
95+ );
96+ }
97+
98+ $ pdo_mysql = pdoInstance (['mysql:host= ' .self ::TEST_DB_HOST .';dbname= ' .self ::TEST_DB_NAME .';port=3306 ' , self ::TEST_DB_USER ,self ::TEST_DB_PASSWORD ]);
99+ $ pdo_mysql ->connect ();
100+ $ this ->assertEquals (MYSQLI , getVendor ());
125101 }
126102}
0 commit comments