forked from tomaskocfelda/zf2
/
OfflineTest.php
131 lines (122 loc) · 5.09 KB
/
OfflineTest.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<?php
/**
* Zend Framework (http://framework.zend.com/)
*
* @link http://github.com/zendframework/zf2 for the canonical source repository
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
* @package Zend_Ldap
*/
namespace ZendTest\Ldap;
use Zend\Config;
use Zend\Ldap;
use Zend\Ldap\Exception;
/**
* @category Zend
* @package Zend_Ldap
* @subpackage UnitTests
* @group Zend_Ldap
*/
class OfflineTest extends \PHPUnit_Framework_TestCase
{
/**
* Zend\Ldap\Ldap instance
*
* @var Ldap\Ldap
*/
protected $ldap = null;
/**
* Setup operations run prior to each test method:
*
* * Creates an instance of Zend\Ldap\Ldap
*
* @return void
*/
public function setUp()
{
if (!extension_loaded('ldap')) {
$this->markTestSkipped('LDAP is not enabled');
}
$this->ldap = new Ldap\Ldap();
}
/**
* @return void
*/
public function testInvalidOptionResultsInException()
{
$optionName = 'invalid';
try {
$this->ldap->setOptions(array($optionName => 'irrelevant'));
$this->fail('Expected Zend\Ldap\Exception\LdapException not thrown');
} catch (Exception\LdapException $e) {
$this->assertEquals("Unknown Zend\Ldap\Ldap option: $optionName", $e->getMessage());
}
}
public function testException()
{
$e = new Exception\LdapException(null, '', 0);
$this->assertEquals('no exception message', $e->getMessage());
$this->assertEquals(0, $e->getCode());
$e = new Exception\LdapException(null, '', 15);
$this->assertEquals('0xf: no exception message', $e->getMessage());
$this->assertEquals(15, $e->getCode());
}
public function testOptionsGetter()
{
$options = array(
'host' => TESTS_ZEND_LDAP_HOST,
'username' => TESTS_ZEND_LDAP_USERNAME,
'password' => TESTS_ZEND_LDAP_PASSWORD,
'baseDn' => TESTS_ZEND_LDAP_BASE_DN,
);
$ldap = new Ldap\Ldap($options);
$this->assertEquals(array(
'host' => TESTS_ZEND_LDAP_HOST,
'port' => 0,
'useSsl' => false,
'username' => TESTS_ZEND_LDAP_USERNAME,
'password' => TESTS_ZEND_LDAP_PASSWORD,
'bindRequiresDn' => false,
'baseDn' => TESTS_ZEND_LDAP_BASE_DN,
'accountCanonicalForm' => null,
'accountDomainName' => null,
'accountDomainNameShort' => null,
'accountFilterFormat' => null,
'allowEmptyPassword' => false,
'useStartTls' => false,
'optReferrals' => false,
'tryUsernameSplit' => true,
'networkTimeout' => null,
), $ldap->getOptions()
);
}
public function testConfigObject()
{
$config = new Config\Config(array(
'host' => TESTS_ZEND_LDAP_HOST,
'username' => TESTS_ZEND_LDAP_USERNAME,
'password' => TESTS_ZEND_LDAP_PASSWORD,
'baseDn' => TESTS_ZEND_LDAP_BASE_DN,
));
$ldap = new Ldap\Ldap($config);
$this->assertEquals(array(
'host' => TESTS_ZEND_LDAP_HOST,
'port' => 0,
'useSsl' => false,
'username' => TESTS_ZEND_LDAP_USERNAME,
'password' => TESTS_ZEND_LDAP_PASSWORD,
'bindRequiresDn' => false,
'baseDn' => TESTS_ZEND_LDAP_BASE_DN,
'accountCanonicalForm' => null,
'accountDomainName' => null,
'accountDomainNameShort' => null,
'accountFilterFormat' => null,
'allowEmptyPassword' => false,
'useStartTls' => false,
'optReferrals' => false,
'tryUsernameSplit' => true,
'networkTimeout' => null,
), $ldap->getOptions()
);
}
}