diff options
author | Côme Chilliet <come.chilliet@nextcloud.com> | 2024-04-04 17:37:19 +0200 |
---|---|---|
committer | Côme Chilliet <91878298+come-nc@users.noreply.github.com> | 2024-04-09 10:01:47 +0200 |
commit | d4229f9f590a2c3107906c21116d05edc7f13127 (patch) | |
tree | c13ba834502a151e04b0ee7a1bf1b61506cf8de8 /apps/user_ldap | |
parent | 0f348516d2c2f9fcd089b224d54312198dcf4b85 (diff) | |
download | nextcloud-server-d4229f9f590a2c3107906c21116d05edc7f13127.tar.gz nextcloud-server-d4229f9f590a2c3107906c21116d05edc7f13127.zip |
fix(user_ldap): Fix tests using wrong types
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Diffstat (limited to 'apps/user_ldap')
-rw-r--r-- | apps/user_ldap/lib/Connection.php | 6 | ||||
-rw-r--r-- | apps/user_ldap/tests/AccessTest.php | 14 | ||||
-rw-r--r-- | apps/user_ldap/tests/ConnectionTest.php | 8 | ||||
-rw-r--r-- | apps/user_ldap/tests/LDAPProviderTest.php | 10 | ||||
-rw-r--r-- | apps/user_ldap/tests/User_LDAPTest.php | 2 | ||||
-rw-r--r-- | apps/user_ldap/tests/WizardTest.php | 6 |
6 files changed, 30 insertions, 16 deletions
diff --git a/apps/user_ldap/lib/Connection.php b/apps/user_ldap/lib/Connection.php index 212bb2fd336..280cdcfa83f 100644 --- a/apps/user_ldap/lib/Connection.php +++ b/apps/user_ldap/lib/Connection.php @@ -650,7 +650,11 @@ class Connection extends LDAPUtility { return false; } - $this->ldapConnectionRes = $this->ldap->connect($host, $port); + $this->ldapConnectionRes = $this->ldap->connect($host, $port) ?: null; + + if ($this->ldapConnectionRes === null) { + throw new ServerNotAvailableException('Connection failed'); + } if (!$this->ldap->setOption($this->ldapConnectionRes, LDAP_OPT_PROTOCOL_VERSION, 3)) { throw new ServerNotAvailableException('Could not set required LDAP Protocol version.'); diff --git a/apps/user_ldap/tests/AccessTest.php b/apps/user_ldap/tests/AccessTest.php index 5469b9267e7..2387dab7708 100644 --- a/apps/user_ldap/tests/AccessTest.php +++ b/apps/user_ldap/tests/AccessTest.php @@ -114,6 +114,9 @@ class AccessTest extends TestCase { $connector = $this->getMockBuilder(Connection::class) ->setConstructorArgs([$lw, '', null]) ->getMock(); + $connector->expects($this->any()) + ->method('getConnectionResource') + ->willReturn(ldap_connect('ldap://example.com')); $um = $this->getMockBuilder(Manager::class) ->setConstructorArgs([ $this->createMock(IConfig::class), @@ -287,6 +290,11 @@ class AccessTest extends TestCase { ->method('isResource') ->willReturn(true); + $this->connection + ->expects($this->any()) + ->method('getConnectionResource') + ->willReturn(ldap_connect('ldap://example.com')); + $this->ldap->expects($this->any()) ->method('getAttributes') ->willReturn(['displayname' => ['bar', 'count' => 1]]); @@ -469,7 +477,7 @@ class AccessTest extends TestCase { $this->connection ->method('__get') ->willReturn(true); - $connection = $this->createMock(LDAP::class); + $connection = ldap_connect('ldap://example.com'); $this->connection ->expects($this->once()) ->method('getConnectionResource') @@ -492,7 +500,7 @@ class AccessTest extends TestCase { $this->connection ->method('__get') ->willReturn(true); - $connection = $this->createMock(LDAP::class); + $connection = ldap_connect('ldap://example.com'); $this->connection ->expects($this->any()) ->method('getConnectionResource') @@ -516,7 +524,7 @@ class AccessTest extends TestCase { $this->connection ->method('__get') ->willReturn(true); - $connection = $this->createMock(LDAP::class); + $connection = ldap_connect('ldap://example.com'); $this->connection ->expects($this->any()) ->method('getConnectionResource') diff --git a/apps/user_ldap/tests/ConnectionTest.php b/apps/user_ldap/tests/ConnectionTest.php index b4e26c922ed..1bacd433ed0 100644 --- a/apps/user_ldap/tests/ConnectionTest.php +++ b/apps/user_ldap/tests/ConnectionTest.php @@ -114,7 +114,7 @@ class ConnectionTest extends \Test\TestCase { $this->ldap->expects($this->exactly(3)) ->method('connect') - ->willReturn('ldapResource'); + ->willReturn(ldap_connect('ldap://example.com')); $this->ldap->expects($this->any()) ->method('errno') @@ -173,7 +173,7 @@ class ConnectionTest extends \Test\TestCase { $this->ldap->expects($this->once()) ->method('connect') - ->willReturn('ldapResource'); + ->willReturn(ldap_connect('ldap://example.com')); $this->ldap->expects($this->any()) ->method('errno') @@ -221,7 +221,7 @@ class ConnectionTest extends \Test\TestCase { $this->ldap->expects($this->any()) ->method('connect') - ->willReturn('ldapResource'); + ->willReturn(ldap_connect('ldap://example.com')); $this->ldap->expects($this->once()) ->method('bind') @@ -264,7 +264,7 @@ class ConnectionTest extends \Test\TestCase { $this->ldap->expects($this->any()) ->method('connect') - ->willReturn('ldapResource'); + ->willReturn(ldap_connect('ldap://example.com')); $this->ldap->expects($this->any()) ->method('setOption') diff --git a/apps/user_ldap/tests/LDAPProviderTest.php b/apps/user_ldap/tests/LDAPProviderTest.php index 3e34ce7bdbb..44a03f77edf 100644 --- a/apps/user_ldap/tests/LDAPProviderTest.php +++ b/apps/user_ldap/tests/LDAPProviderTest.php @@ -271,14 +271,15 @@ class LDAPProviderTest extends \Test\TestCase { $userBackend->expects($this->any()) ->method('userExists') ->willReturn(true); + $ldapConnection = ldap_connect('ldap://example.com'); $userBackend->expects($this->any()) ->method('getNewLDAPConnection') - ->willReturn(true); + ->willReturn($ldapConnection); $server = $this->getServerMock($userBackend, $this->getDefaultGroupBackendMock()); $ldapProvider = $this->getLDAPProvider($server); - $this->assertTrue($ldapProvider->getLDAPConnection('existing_user')); + $this->assertEquals($ldapConnection, $ldapProvider->getLDAPConnection('existing_user')); } @@ -317,14 +318,15 @@ class LDAPProviderTest extends \Test\TestCase { ->method('groupExists') ->willReturn(true); + $ldapConnection = ldap_connect('ldap://example.com'); $groupBackend->expects($this->any()) ->method('getNewLDAPConnection') - ->willReturn(true); + ->willReturn($ldapConnection); $server = $this->getServerMock($userBackend, $groupBackend); $ldapProvider = $this->getLDAPProvider($server); - $this->assertTrue($ldapProvider->getGroupLDAPConnection('existing_group')); + $this->assertEquals($ldapConnection, $ldapProvider->getGroupLDAPConnection('existing_group')); } diff --git a/apps/user_ldap/tests/User_LDAPTest.php b/apps/user_ldap/tests/User_LDAPTest.php index 35c692d634f..be892e1607f 100644 --- a/apps/user_ldap/tests/User_LDAPTest.php +++ b/apps/user_ldap/tests/User_LDAPTest.php @@ -320,7 +320,7 @@ class User_LDAPTest extends TestCase { ->willReturn($mapping); $this->connection->expects($this->any()) ->method('getConnectionResource') - ->willReturn('this is an ldap link'); + ->willReturn(ldap_connect('ldap://example.com')); $this->deletedUsersIndex->expects($this->once()) ->method('isUserMarked') diff --git a/apps/user_ldap/tests/WizardTest.php b/apps/user_ldap/tests/WizardTest.php index 5382a0c7f6f..9cd6afc8007 100644 --- a/apps/user_ldap/tests/WizardTest.php +++ b/apps/user_ldap/tests/WizardTest.php @@ -84,8 +84,8 @@ class WizardTest extends TestCase { private function prepareLdapWrapperForConnections(MockObject &$ldap) { $ldap->expects($this->once()) ->method('connect') - //dummy value, usually invalid - ->willReturn(true); + //dummy value + ->willReturn(ldap_connect('ldap://example.com')); $ldap->expects($this->exactly(3)) ->method('setOption') @@ -173,7 +173,7 @@ class WizardTest extends TestCase { $ldap->expects($this->any()) ->method('isResource') ->willReturnCallback(function ($r) { - if ($r === true) { + if ($r instanceof \LDAP\Connection) { return true; } if ($r % 24 === 0) { |