Annotation of embedaddon/php/ext/oci8/tests/password_2.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: oci_password_change() for persistent connections
3: --SKIPIF--
4: <?php
5: if (!extension_loaded('oci8')) die("skip no oci8 extension");
6: require(dirname(__FILE__)."/details.inc");
7: if (empty($dbase)) die ("skip requires database connection string be set");
8: if (strcasecmp($user, "system") && strcasecmp($user, "sys")) die("skip needs to be run as a DBA user");
9: if ($test_drcp) die("skip password change not supported in DRCP Mode");
10: ?>
11: --FILE--
12: <?php
13:
14: require(dirname(__FILE__)."/connect.inc");
15:
16: $stmtarray = array(
17: "drop user testuser cascade",
18: "create user testuser identified by testuserpwd",
19: "grant connect, create session to testuser"
20: );
21:
22: oci8_test_sql_execute($c, $stmtarray);
23:
24: // Connect (persistent) and change the password
25: $c1 = oci_pconnect("testuser", "testuserpwd", $dbase);
26: var_dump($c1);
27: $rn1 = (int)$c1;
28:
29: oci_password_change($c1, "testuser", "testuserpwd", "testuserpwd2");
30:
31: // Second connect should return a new resource because the hash string will be different from $c1
32: $c2 = oci_pconnect("testuser", "testuserpwd2", $dbase);
33: var_dump($c2);
34: $rn2 = (int)$c2;
35:
36: // Despite using the old password this connect should succeed and return the original resource
37: $c3 = oci_pconnect("testuser", "testuserpwd", $dbase);
38: var_dump($c3);
39: $rn3 = (int)$c3;
40:
41: // Connections should differ
42: if ($rn1 == $rn2) {
43: echo "First and second connections share a resource: Not OK\n";
44: var_dump($c1);
45: }
46: else {
47: echo "First and second connections are different: OK\n";
48: }
49:
50: // Connections should be the same
51: if ($rn1 == $rn3) {
52: echo "First and third connections share a resource: OK\n";
53: }
54: else {
55: echo "First and third connections are different: Not OK\n";
56: var_dump($c1);
57: var_dump($c2);
58: }
59:
60: echo "Done\n";
61:
62: ?>
63: --CLEAN--
64: <?php
65:
66: require(dirname(__FILE__)."/connect.inc");
67:
68: $stmtarray = array(
69: "drop user testuser cascade"
70: );
71:
72: oci8_test_sql_execute($c, $stmtarray);
73:
74: ?>
75: --EXPECTF--
76: resource(%d) of type (oci8 persistent connection)
77: resource(%d) of type (oci8 persistent connection)
78: resource(%d) of type (oci8 persistent connection)
79: First and second connections are different: OK
80: First and third connections share a resource: OK
81: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>