private void ListPermissions() { listACL.Items.Clear(); hMailServer.IMAPFolderPermissions permissions = _folder.Permissions; for (int i = 0; i < permissions.Count; i++) { hMailServer.IMAPFolderPermission permission = permissions[i]; ListPermission(permission); } Marshal.ReleaseComObject(permissions); }
private void ConfirmPublicFolders() { if (_backupMessages) { hMailServer.Domain domain = _application.Domains[0]; hMailServer.IMAPFolders publicFolders = _application.Settings.PublicFolders; Assert.IsNotNull(publicFolders.get_ItemByName("Test1")); Assert.IsNotNull(publicFolders.get_ItemByName("Test2")); Assert.IsNotNull(publicFolders.get_ItemByName("Test3")); Assert.IsNotNull(publicFolders.get_ItemByName("ACL")); hMailServer.IMAPFolderPermissions permissions = publicFolders.get_ItemByName("ACL").Permissions; Assert.AreEqual(1, permissions.Count); hMailServer.Account account1 = domain.Accounts.get_ItemByAddress("*****@*****.**"); hMailServer.IMAPFolderPermission permission = permissions[0]; Assert.AreEqual(hMailServer.eACLPermissionType.ePermissionTypeUser, permission.PermissionType); Assert.AreEqual(account1.ID, permission.PermissionAccountID); Assert.IsTrue(permission.get_Permission(hMailServer.eACLPermission.ePermissionAdminister)); Assert.IsTrue(permission.get_Permission(hMailServer.eACLPermission.ePermissionInsert)); Assert.IsFalse(permission.get_Permission(hMailServer.eACLPermission.ePermissionRead)); Assert.IsFalse(permission.get_Permission(hMailServer.eACLPermission.ePermissionWriteSeen)); hMailServer.Group group1 = _application.Settings.Groups.get_ItemByName("ACLTestGroup"); permissions = publicFolders.get_ItemByName("ACL").SubFolders.get_ItemByName("MySubFolder").Permissions; permission = permissions[0]; Assert.AreEqual(hMailServer.eACLPermissionType.ePermissionTypeGroup, permission.PermissionType); Assert.AreEqual(group1.ID, permission.PermissionGroupID); Assert.IsTrue(permission.get_Permission(hMailServer.eACLPermission.ePermissionLookup)); Assert.IsTrue(permission.get_Permission(hMailServer.eACLPermission.ePermissionDeleteMailbox)); Assert.IsFalse(permission.get_Permission(hMailServer.eACLPermission.ePermissionRead)); Assert.IsFalse(permission.get_Permission(hMailServer.eACLPermission.ePermissionWriteSeen)); } }