Skip to content

Commit 8836404

Browse files
author
Côme Bernigaud
committed
Fixed LDAP tests so that base can exists
Now you can set the base in the env var LDAP_TEST_BASE. The base has to exists. (before tests were attempting to create/delete the base itself)
1 parent e4917bc commit 8836404

File tree

57 files changed

+348
-406
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+348
-406
lines changed

ext/ldap/tests/bug48441.phpt

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ require_once('skipifbindfailure.inc');
1212
include "connect.inc";
1313

1414
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
15-
insert_dummy_data($link);
15+
insert_dummy_data($link, $base);
1616

17-
$dn = "dc=my-domain,dc=com";
17+
$dn = "$base";
1818
$filter = "(objectclass=person)";
1919

2020
var_dump(
@@ -36,7 +36,7 @@ var_dump(
3636
include "connect.inc";
3737

3838
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
39-
remove_dummy_data($link);
39+
remove_dummy_data($link, $base);
4040
?>
4141
--EXPECTF--
4242
resource(%d) of type (ldap result)
@@ -57,7 +57,7 @@ array(4) {
5757
["count"]=>
5858
int(1)
5959
["dn"]=>
60-
string(28) "cn=userA,dc=my-domain,dc=com"
60+
string(%d) "cn=userA,%s"
6161
}
6262
[1]=>
6363
array(4) {
@@ -73,7 +73,7 @@ array(4) {
7373
["count"]=>
7474
int(1)
7575
["dn"]=>
76-
string(28) "cn=userB,dc=my-domain,dc=com"
76+
string(%d) "cn=userB,%s"
7777
}
7878
[2]=>
7979
array(4) {
@@ -89,7 +89,7 @@ array(4) {
8989
["count"]=>
9090
int(1)
9191
["dn"]=>
92-
string(37) "cn=userC,cn=userB,dc=my-domain,dc=com"
92+
string(%d) "cn=userC,cn=userB,%s"
9393
}
9494
}
9595

@@ -110,7 +110,7 @@ array(2) {
110110
["count"]=>
111111
int(1)
112112
["dn"]=>
113-
string(28) "cn=userA,dc=my-domain,dc=com"
113+
string(%d) "cn=userA,%s"
114114
}
115115
}
116116
resource(%d) of type (ldap result)
@@ -131,7 +131,7 @@ array(4) {
131131
["count"]=>
132132
int(1)
133133
["dn"]=>
134-
string(28) "cn=userA,dc=my-domain,dc=com"
134+
string(%d) "cn=userA,%s"
135135
}
136136
[1]=>
137137
array(4) {
@@ -147,7 +147,7 @@ array(4) {
147147
["count"]=>
148148
int(1)
149149
["dn"]=>
150-
string(28) "cn=userB,dc=my-domain,dc=com"
150+
string(%d) "cn=userB,%s"
151151
}
152152
[2]=>
153153
array(4) {
@@ -163,7 +163,7 @@ array(4) {
163163
["count"]=>
164164
int(1)
165165
["dn"]=>
166-
string(37) "cn=userC,cn=userB,dc=my-domain,dc=com"
166+
string(%d) "cn=userC,cn=userB,%s"
167167
}
168168
}
169169
===DONE===

ext/ldap/tests/connect.inc

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
<?php
22

33
/*
4-
Default values are "localhost", "root", database "test" and empty password.
4+
Default values are "localhost", "cn=Manager,dc=my-domain,dc=com", and password "secret".
55
Change the LDAP_TEST_* environment values if you want to use another configuration.
66
*/
77

88
$host = getenv("LDAP_TEST_HOST") ? getenv("LDAP_TEST_HOST") : "localhost";
99
$port = getenv("LDAP_TEST_PORT") ? getenv("LDAP_TEST_PORT") : 389;
10-
$user = getenv("LDAP_TEST_USER") ? getenv("LDAP_TEST_USER") : "cn=Manager,dc=my-domain,dc=com";
10+
$base = getenv("LDAP_TEST_BASE") ? getenv("LDAP_TEST_BASE") : "dc=my-domain,dc=com";
11+
$user = getenv("LDAP_TEST_USER") ? getenv("LDAP_TEST_USER") : "cn=Manager,$base";
1112
$sasl_user = getenv("LDAP_TEST_SASL_USER") ? getenv("LDAP_TEST_SASL_USER") : "Manager";
1213
$passwd = getenv("LDAP_TEST_PASSWD") ? getenv("LDAP_TEST_PASSWD") : "secret";
1314
$protocol_version = getenv("LDAP_TEST_OPT_PROTOCOL_VERSION") ? getenv("LDAP_TEST_OPT_PROTOCOL_VERSION") : 3;
@@ -20,42 +21,40 @@ function ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version)
2021
return $link;
2122
}
2223

23-
function insert_dummy_data($link) {
24-
ldap_add($link, "dc=my-domain,dc=com", array(
24+
function insert_dummy_data($link, $base) {
25+
ldap_add($link, "o=test,$base", array(
2526
"objectClass" => array(
26-
"top",
27-
"dcObject",
28-
"organization"),
29-
"dc" => "my-domain",
30-
"o" => "my-domain",
27+
"top",
28+
"organization"),
29+
"o" => "test",
3130
));
32-
ldap_add($link, "cn=userA,dc=my-domain,dc=com", array(
31+
ldap_add($link, "cn=userA,$base", array(
3332
"objectclass" => "person",
3433
"cn" => "userA",
3534
"sn" => "testSN1",
3635
"userPassword" => "oops",
3736
"telephoneNumber" => "xx-xx-xx-xx-xx",
3837
"description" => "user A",
3938
));
40-
ldap_add($link, "cn=userB,dc=my-domain,dc=com", array(
39+
ldap_add($link, "cn=userB,$base", array(
4140
"objectclass" => "person",
4241
"cn" => "userB",
4342
"sn" => "testSN2",
4443
"userPassword" => "oopsIDitItAgain",
4544
"description" => "user B",
4645
));
47-
ldap_add($link, "cn=userC,cn=userB,dc=my-domain,dc=com", array(
46+
ldap_add($link, "cn=userC,cn=userB,$base", array(
4847
"objectclass" => "person",
4948
"cn" => "userC",
5049
"sn" => "testSN3",
5150
"userPassword" => "0r1g1na1 passw0rd",
5251
));
5352
}
5453

55-
function remove_dummy_data($link) {
56-
ldap_delete($link, "cn=userC,cn=userB,dc=my-domain,dc=com");
57-
ldap_delete($link, "cn=userA,dc=my-domain,dc=com");
58-
ldap_delete($link, "cn=userB,dc=my-domain,dc=com");
59-
ldap_delete($link, "dc=my-domain,dc=com");
54+
function remove_dummy_data($link, $base) {
55+
ldap_delete($link, "cn=userC,cn=userB,$base");
56+
ldap_delete($link, "cn=userA,$base");
57+
ldap_delete($link, "cn=userB,$base");
58+
ldap_delete($link, "o=test,$base");
6059
}
6160
?>

ext/ldap/tests/ldap_add_basic.phpt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ require "connect.inc";
1313
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
1414

1515
var_dump(
16-
ldap_add($link, "dc=my-domain,dc=com", array(
16+
ldap_add($link, "dc=my-domain,$base", array(
1717
"objectClass" => array(
1818
"top",
1919
"dcObject",
@@ -23,7 +23,7 @@ var_dump(
2323
)),
2424
ldap_get_entries(
2525
$link,
26-
ldap_search($link, "dc=my-domain,dc=com", "(o=my-domain)")
26+
ldap_search($link, "$base", "(o=my-domain)")
2727
)
2828
);
2929
?>
@@ -34,9 +34,9 @@ require "connect.inc";
3434

3535
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
3636

37-
ldap_delete($link, "dc=my-domain,dc=com");
37+
ldap_delete($link, "dc=my-domain,$base");
3838
?>
39-
--EXPECT--
39+
--EXPECTF--
4040
bool(true)
4141
array(2) {
4242
["count"]=>
@@ -77,7 +77,7 @@ array(2) {
7777
["count"]=>
7878
int(3)
7979
["dn"]=>
80-
string(19) "dc=my-domain,dc=com"
80+
string(%d) "dc=my-domain,%s"
8181
}
8282
}
8383
===DONE===

ext/ldap/tests/ldap_add_error.phpt

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@ $link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
1515
// Too few parameters
1616
var_dump(ldap_add());
1717
var_dump(ldap_add($link));
18-
var_dump(ldap_add($link, "dc=my-domain,dc=com"));
18+
var_dump(ldap_add($link, "$base"));
1919

2020
// Too many parameters
21-
var_dump(ldap_add($link, "dc=my-domain,dc=com", array(), "Additional data"));
21+
var_dump(ldap_add($link, "$base", array(), "Additional data"));
2222

23-
var_dump(ldap_add($link, "dc=my-domain,dc=com", array()));
23+
var_dump(ldap_add($link, "$base", array()));
2424

2525
// Invalid DN
2626
var_dump(
@@ -34,14 +34,14 @@ var_dump(
3434
// Duplicate entry
3535
for ($i = 0; $i < 2; $i++)
3636
var_dump(
37-
ldap_add($link, "dc=my-domain,dc=com", array(
38-
"objectClass" => array(
39-
"top",
40-
"dcObject",
41-
"organization"),
42-
"dc" => "my-domain",
43-
"o" => "my-domain",
44-
))
37+
ldap_add($link, "dc=my-domain,$base", array(
38+
"objectClass" => array(
39+
"top",
40+
"dcObject",
41+
"organization"),
42+
"dc" => "my-domain",
43+
"o" => "my-domain",
44+
))
4545
);
4646
var_dump(ldap_error($link), ldap_errno($link));
4747

@@ -64,7 +64,7 @@ var_dump(
6464

6565
// Invalid attribute
6666
var_dump(
67-
ldap_add($link, "dc=my-domain,dc=com", array(
67+
ldap_add($link, "$base", array(
6868
"objectClass" => array(
6969
"top",
7070
"dcObject",
@@ -78,7 +78,7 @@ var_dump(
7878
);
7979

8080
var_dump(
81-
ldap_add($link, "dc=my-domain,dc=com", array(array( "Oops"
81+
ldap_add($link, "$base", array(array( "Oops"
8282
)))
8383
/* Is this correct behaviour to still have "Undefined attribute type" as error/errno?
8484
,
@@ -94,7 +94,7 @@ require "connect.inc";
9494

9595
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
9696

97-
ldap_delete($link, "dc=my-domain,dc=com");
97+
ldap_delete($link, "dc=my-domain,$base");
9898
?>
9999
--EXPECTF--
100100
Warning: ldap_add() expects exactly 3 parameters, 0 given in %s on line %d

ext/ldap/tests/ldap_compare_basic.phpt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ Patrick Allaert <patrickallaert@php.net>
1111
require "connect.inc";
1212

1313
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
14-
insert_dummy_data($link);
14+
insert_dummy_data($link, $base);
1515
var_dump(
16-
ldap_compare($link, "cn=userA,dc=my-domain,dc=com", "sn", "testSN1"),
17-
ldap_compare($link, "cn=userA,dc=my-domain,dc=com", "telephoneNumber", "yy-yy-yy-yy-yy")
16+
ldap_compare($link, "cn=userA,$base", "sn", "testSN1"),
17+
ldap_compare($link, "cn=userA,$base", "telephoneNumber", "yy-yy-yy-yy-yy")
1818
);
1919
?>
2020
===DONE===
@@ -23,7 +23,7 @@ var_dump(
2323
include "connect.inc";
2424

2525
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
26-
remove_dummy_data($link);
26+
remove_dummy_data($link, $base);
2727
?>
2828
--EXPECT--
2929
bool(true)

ext/ldap/tests/ldap_compare_error.phpt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Patrick Allaert <patrickallaert@php.net>
1111
require "connect.inc";
1212

1313
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
14-
insert_dummy_data($link);
14+
insert_dummy_data($link, $base);
1515

1616
// Too few parameters
1717
var_dump(ldap_compare($link));
@@ -22,7 +22,7 @@ var_dump(ldap_compare($link, $link, $link));
2222
var_dump(ldap_compare($link, $link, $link, $link, "Additional data"));
2323

2424
var_dump(
25-
ldap_compare($link, "cn=userNotAvailable,dc=my-domain,dc=com", "sn", "testSN1"),
25+
ldap_compare($link, "cn=userNotAvailable,$base", "sn", "testSN1"),
2626
ldap_error($link),
2727
ldap_errno($link)
2828
);
@@ -33,7 +33,7 @@ var_dump(
3333
include "connect.inc";
3434

3535
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
36-
remove_dummy_data($link);
36+
remove_dummy_data($link, $base);
3737
?>
3838
--EXPECTF--
3939
Warning: ldap_compare() expects exactly 4 parameters, 1 given in %s on line %d

ext/ldap/tests/ldap_connect_error.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ require "connect.inc";
1313

1414
// too many arguments
1515
var_dump(ldap_connect(null, null, null));
16-
var_dump(ldap_connect("ldap://$host:$port/dc=my-domain,dc=com"));
16+
var_dump(ldap_connect("ldap://$host:$port/$base"));
1717

1818
$links = array();
1919
$links[0] = ldap_connect($host, $port);

ext/ldap/tests/ldap_control_paged_results_variation1.phpt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ require_once('skipifbindfailure.inc');
1212
include "connect.inc";
1313

1414
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
15-
insert_dummy_data($link);
15+
insert_dummy_data($link, $base);
1616

17-
$dn = "dc=my-domain,dc=com";
18-
$filter = "(cn=*)";
17+
$dn = "$base";
18+
$filter = "(cn=user*)";
1919
var_dump(
2020
ldap_control_paged_result($link, 1),
2121
$result = ldap_search($link, $dn, $filter, array('cn')),
@@ -28,7 +28,7 @@ var_dump(
2828
include "connect.inc";
2929

3030
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
31-
remove_dummy_data($link);
31+
remove_dummy_data($link, $base);
3232
?>
3333
--EXPECTF--
3434
bool(true)
@@ -50,7 +50,7 @@ array(2) {
5050
["count"]=>
5151
int(1)
5252
["dn"]=>
53-
string(28) "cn=userA,dc=my-domain,dc=com"
53+
string(%d) "cn=userA,%s"
5454
}
5555
}
5656
===DONE===

ext/ldap/tests/ldap_control_paged_results_variation2.phpt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ require_once('skipifbindfailure.inc');
1212
include "connect.inc";
1313

1414
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
15-
insert_dummy_data($link);
15+
insert_dummy_data($link, $base);
1616

17-
$dn = "dc=my-domain,dc=com";
18-
$filter = "(cn=*)";
17+
$dn = "$base";
18+
$filter = "(cn=user*)";
1919
var_dump(
2020
ldap_control_paged_result($link, 2),
2121
$result = ldap_search($link, $dn, $filter, array('cn')),
@@ -28,7 +28,7 @@ var_dump(
2828
include "connect.inc";
2929

3030
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
31-
remove_dummy_data($link);
31+
remove_dummy_data($link, $base);
3232
?>
3333
--EXPECTF--
3434
bool(true)
@@ -50,7 +50,7 @@ array(3) {
5050
["count"]=>
5151
int(1)
5252
["dn"]=>
53-
string(28) "cn=userA,dc=my-domain,dc=com"
53+
string(%d) "cn=userA,%s"
5454
}
5555
[1]=>
5656
array(4) {
@@ -66,7 +66,7 @@ array(3) {
6666
["count"]=>
6767
int(1)
6868
["dn"]=>
69-
string(28) "cn=userB,dc=my-domain,dc=com"
69+
string(%d) "cn=userB,%s"
7070
}
7171
}
7272
===DONE===

0 commit comments

Comments
 (0)