@@ -18,7 +18,7 @@ if (getenv('PDOTEST_DSN') === false) {
18
18
class PDOTest {
19
19
// create an instance of the PDO driver, based on
20
20
// the current environment
21
- static function factory ($ classname = PDO ::class) {
21
+ static function factory ($ classname = PDO ::class, bool $ useConnectMethod = false ) {
22
22
$ dsn = getenv ('PDOTEST_DSN ' );
23
23
$ user = getenv ('PDOTEST_USER ' );
24
24
$ pass = getenv ('PDOTEST_PASS ' );
@@ -32,7 +32,11 @@ class PDOTest {
32
32
if ($ user === false ) $ user = NULL ;
33
33
if ($ pass === false ) $ pass = NULL ;
34
34
35
- $ db = new $ classname ($ dsn , $ user , $ pass , $ attr );
35
+ if ($ useConnectMethod ) {
36
+ $ db = $ classname ::connect ($ dsn , $ user , $ pass , $ attr );
37
+ } else {
38
+ $ db = new $ classname ($ dsn , $ user , $ pass , $ attr );
39
+ }
36
40
37
41
if (!$ db ) {
38
42
die ("Could not create PDO object (DSN= $ dsn, user= $ user) \n" );
@@ -54,12 +58,12 @@ class PDOTest {
54
58
}
55
59
}
56
60
57
- static function test_factory ($ file , $ classname = PDO ::class) {
61
+ static function test_factory ($ file , $ classname = PDO ::class, bool $ useConnectMethod = false ) {
58
62
$ config = self ::get_config ($ file );
59
63
foreach ($ config ['ENV ' ] as $ k => $ v ) {
60
64
putenv ("$ k= $ v " );
61
65
}
62
- return self ::factory ($ classname );
66
+ return self ::factory ($ classname, $ useConnectMethod );
63
67
}
64
68
65
69
static function get_config ($ file ) {
0 commit comments