@@ -17,18 +17,34 @@ PDOTest::skip();
17
17
<?php
18
18
require_once getenv ('REDIR_TEST_DIR ' ) . 'pdo_test.inc ' ;
19
19
20
- class PDOTestDiscardCredentialParams extends PDOTest {
21
- public function __construct ($ dsn , $ user , $ pass , $ attr ) {
22
- return parent ::__construct ($ dsn , null , null , $ attr );
23
- }
24
- }
20
+ $ orgDsn = getenv ('PDOTEST_DSN ' );
21
+ $ orgUser = getenv ('PDOTEST_USER ' );
22
+ $ orgPass = getenv ('PDOTEST_PASS ' );
23
+
24
+ try
25
+ {
26
+ putenv ("PDOTEST_DSN= $ orgDsn;user= $ orgUser;password= $ orgPass " );
27
+ putenv ("PDOTEST_USER= " );
28
+ putenv ("PDOTEST_PASS= " );
29
+
30
+ $ link = PDOTest::factory ();
31
+ echo "using credentials in dsn: done \n" ;
25
32
26
- $ link = PDOTestDiscardCredentialParams::factory ('PDO ' , false , null , ['user ' => getenv ('PDOTEST_USER ' ), 'password ' => getenv ('PDOTEST_PASS ' )]);
27
- echo "using credentials in dsn: done \n" ;
28
33
29
- // test b/c - credentials in DSN are ignored when user/pass passed as separate params
30
- $ link = PDOTest::factory ('PDO ' , false , null , ['user ' => 'incorrect ' , 'password ' => 'ignored ' ]);
31
- echo "ignoring credentials in dsn: done \n" ;
34
+ // test b/c - credentials in DSN are ignored when user/pass passed as separate params
35
+ putenv ("PDOTEST_DSN= $ orgDsn;user=incorrect;password=ignored " );
36
+ putenv ("PDOTEST_USER= $ orgUser " );
37
+ putenv ("PDOTEST_PASS= $ orgPass " );
38
+
39
+ $ link = PDOTest::factory ();
40
+ echo "ignoring credentials in dsn: done \n" ;
41
+ }
42
+ finally
43
+ {
44
+ putenv ("PDOTEST_DSN= $ orgDsn " );
45
+ putenv ("PDOTEST_USER= $ orgUser " );
46
+ putenv ("PDOTEST_PASS= $ orgPass " );
47
+ }
32
48
?>
33
49
--EXPECTF--
34
50
using credentials in dsn: done
0 commit comments