@@ -18,7 +18,7 @@ if (getenv('PDOTEST_DSN') === false) {
1818class  PDOTest {
1919    // create an instance of the PDO driver, based on 
2020    // the current environment 
21-     static  function  factory ($ classname  = PDO ::class) {
21+     static  function  factory ($ classname  = PDO ::class,  bool   $ useConnectMethod  =  false ) {
2222        $ dsn  = getenv ('PDOTEST_DSN ' );
2323        $ user  = getenv ('PDOTEST_USER ' );
2424        $ pass  = getenv ('PDOTEST_PASS ' );
@@ -32,7 +32,11 @@ class PDOTest {
3232        if  ($ user  === false ) $ user  = NULL ;
3333        if  ($ pass  === false ) $ pass  = NULL ;
3434
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+         }
3640
3741        if  (!$ db ) {
3842            die ("Could not create PDO object (DSN= $ dsn, user= $ user) \n" );
@@ -54,12 +58,12 @@ class PDOTest {
5458        }
5559    }
5660
57-     static  function  test_factory ($ file , $ classname  = PDO ::class) {
61+     static  function  test_factory ($ file , $ classname  = PDO ::class,  bool   $ useConnectMethod  =  false ) {
5862        $ config  = self ::get_config ($ file );
5963        foreach  ($ config ['ENV ' ] as  $ k  => $ v ) {
6064            putenv ("$ k= $ v " );
6165        }
62-         return  self ::factory ($ classname );
66+         return  self ::factory ($ classname,  $ useConnectMethod  );
6367    }
6468
6569    static  function  get_config ($ file ) {
0 commit comments