Changeset View
Changeset View
Standalone View
Standalone View
src/tests/Feature/Backends/LDAPTest.php
Show First 20 Lines • Show All 325 Lines • ▼ Show 20 Lines | public function testSharedFolder(): void | ||||
'objectclass' => [ | 'objectclass' => [ | ||||
'top', | 'top', | ||||
'kolabsharedfolder', | 'kolabsharedfolder', | ||||
'mailrecipient', | 'mailrecipient', | ||||
], | ], | ||||
'kolabfoldertype' => 'event', | 'kolabfoldertype' => 'event', | ||||
'kolabtargetfolder' => 'shared/test-folder@kolab.org', | 'kolabtargetfolder' => 'shared/test-folder@kolab.org', | ||||
'acl' => null, | 'acl' => null, | ||||
'alias' => null, | |||||
]; | ]; | ||||
foreach ($expected as $attr => $value) { | foreach ($expected as $attr => $value) { | ||||
$ldap_value = isset($ldap_folder[$attr]) ? $ldap_folder[$attr] : null; | $ldap_value = isset($ldap_folder[$attr]) ? $ldap_folder[$attr] : null; | ||||
$this->assertEquals($value, $ldap_value, "Shared folder $attr attribute"); | $this->assertEquals($value, $ldap_value, "Shared folder $attr attribute"); | ||||
} | } | ||||
// Update folder name and acl | // Update folder name and acl | ||||
$folder->name = 'Te(=ść)1'; | $folder->name = 'Te(=ść)1'; | ||||
$folder->save(); | $folder->save(); | ||||
$folder->setSetting('acl', '["john@kolab.org, read-write","anyone, read-only"]'); | $folder->setSetting('acl', '["john@kolab.org, read-write","anyone, read-only"]'); | ||||
$aliases = ['t1-' . $folder->email, 't2-' . $folder->email]; | |||||
$folder->setAliases($aliases); | |||||
LDAP::updateSharedFolder($folder); | LDAP::updateSharedFolder($folder); | ||||
$expected['kolabtargetfolder'] = 'shared/Te(=ść)1@kolab.org'; | $expected['kolabtargetfolder'] = 'shared/Te(=ść)1@kolab.org'; | ||||
$expected['acl'] = ['john@kolab.org, read-write', 'anyone, read-only']; | $expected['acl'] = ['john@kolab.org, read-write', 'anyone, read-only']; | ||||
$expected['dn'] = 'cn=Te(\\3dść)1,ou=Shared Folders,ou=kolab.org,' . $root_dn; | $expected['dn'] = 'cn=Te(\\3dść)1,ou=Shared Folders,ou=kolab.org,' . $root_dn; | ||||
$expected['cn'] = 'Te(=ść)1'; | $expected['cn'] = 'Te(=ść)1'; | ||||
$expected['alias'] = $aliases; | |||||
$ldap_folder = LDAP::getSharedFolder($folder->email); | $ldap_folder = LDAP::getSharedFolder($folder->email); | ||||
foreach ($expected as $attr => $value) { | foreach ($expected as $attr => $value) { | ||||
$ldap_value = isset($ldap_folder[$attr]) ? $ldap_folder[$attr] : null; | $ldap_value = isset($ldap_folder[$attr]) ? $ldap_folder[$attr] : null; | ||||
$this->assertEquals($value, $ldap_value, "Shared folder $attr attribute"); | $this->assertEquals($value, $ldap_value, "Shared folder $attr attribute"); | ||||
} | } | ||||
▲ Show 20 Lines • Show All 309 Lines • Show Last 20 Lines |