diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/groups/rm-capability-groups-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/groups/rm-capability-groups-context.xml index 65153f5118..5e28301e6b 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/groups/rm-capability-groups-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/groups/rm-capability-groups-context.xml @@ -22,12 +22,6 @@ - - - - - @@ -46,9 +40,9 @@ - - + @@ -70,15 +64,15 @@ - - + - - + diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-config-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-config-context.xml new file mode 100644 index 0000000000..7bd40ea259 --- /dev/null +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-config-context.xml @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-event-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-event-context.xml new file mode 100644 index 0000000000..3ed05e48aa --- /dev/null +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-event-context.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + RECORD_FOLDER + RECORD + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-fileplan-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-fileplan-context.xml index 6c62f754ab..a94603f85b 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-fileplan-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-fileplan-context.xml @@ -16,7 +16,7 @@ - + diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-list-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-list-context.xml deleted file mode 100644 index 9c1d7c2d2c..0000000000 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-list-context.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-record-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-record-context.xml index 2ff7fa2548..2b1e0a57df 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-record-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-record-context.xml @@ -250,19 +250,6 @@ - - - - - - - - - - - - diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-recordfolder-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-recordfolder-context.xml index af88249e43..afc80e15bb 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-recordfolder-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-recordfolder-context.xml @@ -46,19 +46,6 @@ - - - - - - - - - - - - @@ -79,4 +66,19 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-reference-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-reference-context.xml new file mode 100644 index 0000000000..39ec906d7a --- /dev/null +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-reference-context.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-rule-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-rule-context.xml index bee709a5d7..518f6a42f0 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-rule-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-rule-context.xml @@ -7,7 +7,7 @@ parent="declarativeCapability"> - + diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-security-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-security-context.xml new file mode 100644 index 0000000000..2e21669949 --- /dev/null +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/capability/rm-capabilities-security-context.xml @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015-capabilities-classification-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015-capabilities-classification-context.xml new file mode 100644 index 0000000000..f4dfcfb640 --- /dev/null +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015-capabilities-classification-context.xml @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015-context.xml index bb2d6a5f11..48816440e8 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015-context.xml @@ -16,5 +16,17 @@ + + + + + + alfresco.module.org_alfresco_module_rm.dod5015.dod5015 + + + + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015.properties b/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015.properties new file mode 100644 index 0000000000..7cb876b369 --- /dev/null +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/dod5015/dod5015.properties @@ -0,0 +1,8 @@ +# Classified Records Capabilities +capability.group.classifiedRecords.title=Classified Records +capability.UpdateClassificationDates.title=Update Classification Dates +capability.CreateModifyDestroyClassificationGuides.title=Create Modify Destroy Classification Guides +capability.UpgradeDowngradeAndDeclassifyRecords.title=Upgrade Downgrade And Declassify Records +capability.UpdateExemptionCategories.title=Update Exemption Categories +capability.MapClassificationGuideMetadata.title=Map Classification Guide Metadata +capability.CreateModifyDestroyTimeframes.title=Create Modify Destroy Time frames \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/messages/capability-service.properties b/rm-server/config/alfresco/module/org_alfresco_module_rm/messages/capability-service.properties index 84da4903e2..91890828e2 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/messages/capability-service.properties +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/messages/capability-service.properties @@ -27,7 +27,7 @@ capability.CycleVitalRecords.title=Cycle Vital Records capability.PlanningReviewCycles.title=Planning Review Cycles # References and Links -capability.group.referencesAndLinks.title=References and Links +capability.group.references.title=References capability.ChangeOrDeleteReferences.title=Change Or Delete References capability.DeleteLinks.title=Delete Links @@ -67,8 +67,8 @@ capability.SelectAuditMetadata.title=Select Audit Metadata capability.AccessAudit.title=Access Audit capability.ExportAudit.title=Export Audit -# Roles and Access Rights -capability.group.rolesAndAccessRights.title=Roles and Access Rights +# Security +capability.group.security.title=Security capability.CreateModifyDestroyRoles.title=Create Modify Destroy Roles capability.CreateModifyDestroyUsersAndGroups.title=Create Modify Destroy Users And Groups capability.PasswordControl.title=Password Control @@ -76,8 +76,8 @@ capability.DisplayRightsReport.title=Display Rights Report capability.ManageAccessControls.title=Manage Access Controls capability.ManageAccessRights.title=Manage Access Rights -# File Plan Metadata, Lists and Email -capability.group.filePlanMetadataListsAndEmail.title=File Plan Metadata, Lists and Email +# Configuration +capability.group.config.title=Configuration capability.CreateModifyDestroyFileplanMetadata.title=Create Modify Destroy File Plan Metadata capability.CreateModifyDestroyFileplanTypes.title=Create Modify Destroy File Plan Types capability.CreateModifyDestroyRecordTypes.title=Create Modify Destroy Record Types @@ -88,15 +88,6 @@ capability.AttachRulesToMetadataProperties.title=Attach Rules To Metadata Proper capability.MakeOptionalParametersMandatory.title=Make Optional Parameters Mandatory capability.MapEmailMetadata.title=Map Email Metadata -# Classified Records -capability.group.classifiedRecords.title=Classified Records -capability.UpdateClassificationDates.title=Update Classification Dates -capability.CreateModifyDestroyClassificationGuides.title=Create Modify Destroy Classification Guides -capability.UpgradeDowngradeAndDeclassifyRecords.title=Upgrade Downgrade And Declassify Records -capability.UpdateExemptionCategories.title=Update Exemption Categories -capability.MapClassificationGuideMetadata.title=Map Classification Guide Metadata -capability.CreateModifyDestroyTimeframes.title=Create Modify Destroy Time frames - # Rules capability.group.rules.title=Rules capability.ManageRules.title=Manage Rules \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-capabilities-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-capabilities-context.xml index 9050fac6d5..8392047960 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-capabilities-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-capabilities-context.xml @@ -28,114 +28,6 @@ parent="rmBaseCapability" class="org.alfresco.module.org_alfresco_module_rm.capability.declarative.CompositeCapability" /> - - - - - - RECORD_FOLDER - RECORD - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -160,84 +52,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -274,22 +88,7 @@ - - - - - - - - - - - - - - + @@ -335,13 +134,22 @@ - - - + + + + + + + + + + + + \ No newline at end of file diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/security/rm-default-roles-bootstrap.json b/rm-server/config/alfresco/module/org_alfresco_module_rm/security/rm-default-roles-bootstrap.json index fad2e3720b..512936feb2 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/security/rm-default-roles-bootstrap.json +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/security/rm-default-roles-bootstrap.json @@ -48,10 +48,6 @@ "ReOpenFolders", "CycleVitalRecords", "PlanningReviewCycles", - "UpdateClassificationDates", - "CreateModifyDestroyClassificationGuides", - "UpgradeDowngradeAndDeclassifyRecords", - "UpdateExemptionCategories", "RequestRecordInformation" ] }, @@ -92,7 +88,6 @@ "UndeclareRecords", "DeclareAuditAsRecord", "DeleteAudit", - "CreateModifyDestroyTimeframes", "AuthorizeNominatedTransfers", "EditSelectionLists", "AuthorizeAllTransfers", @@ -114,11 +109,6 @@ "AccessAudit", "ExportAudit", "CreateModifyDestroyReferenceTypes", - "UpdateClassificationDates", - "CreateModifyDestroyClassificationGuides", - "UpgradeDowngradeAndDeclassifyRecords", - "UpdateExemptionCategories", - "MapClassificationGuideMetadata", "RequestRecordInformation" ] }, @@ -159,7 +149,6 @@ "UndeclareRecords", "DeclareAuditAsRecord", "DeleteAudit", - "CreateModifyDestroyTimeframes", "AuthorizeNominatedTransfers", "EditSelectionLists", "AuthorizeAllTransfers", @@ -181,11 +170,6 @@ "AccessAudit", "ExportAudit", "CreateModifyDestroyReferenceTypes", - "UpdateClassificationDates", - "CreateModifyDestroyClassificationGuides", - "UpgradeDowngradeAndDeclassifyRecords", - "UpdateExemptionCategories", - "MapClassificationGuideMetadata", "ManageAccessControls", "ManageRules", "RequestRecordInformation" diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/forms/RecordsManagementTypeFormFilter.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/forms/RecordsManagementTypeFormFilter.java index 28aa892093..e2a56cbb83 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/forms/RecordsManagementTypeFormFilter.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/forms/RecordsManagementTypeFormFilter.java @@ -102,9 +102,6 @@ public class RecordsManagementTypeFormFilter extends RecordsManagementFormFilter addCustomRMProperties(aspect, form); } } - - // Group fields - // groupFields(form); } /** @@ -144,41 +141,4 @@ public class RecordsManagementTypeFormFilter extends RecordsManagementFormFilter { } - /** - * Puts all fields in a group to workaround ALF-6089. - * - * @param form The form being generated - */ -// protected void groupFields(Form form) -// { -// // to control the order of the fields add the name, title and description fields to -// // a field group containing just that field, all other fields that are not already -// // in a group go into an "other" field group. The client config can then declare a -// // client side set with the same id and order them correctly. -// -// List fieldDefs = form.getFieldDefinitions(); -// for (FieldDefinition fieldDef : fieldDefs) -// { -// FieldGroup group = fieldDef.getGroup(); -// if (group == null) -// { -// if (fieldDef.getName().equals(ContentModel.PROP_NAME.toPrefixString(this.namespaceService))) -// { -// fieldDef.setGroup(NAME_FIELD_GROUP); -// } -// else if (fieldDef.getName().equals(ContentModel.PROP_TITLE.toPrefixString(this.namespaceService))) -// { -// fieldDef.setGroup(TITLE_FIELD_GROUP); -// } -// else if (fieldDef.getName().equals(ContentModel.PROP_DESCRIPTION.toPrefixString(this.namespaceService))) -// { -// fieldDef.setGroup(DESC_FIELD_GROUP); -// } -// else -// { -// fieldDef.setGroup(OTHER_FIELD_GROUP); -// } -// } -// } -// } } diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv21CapabilityPatch.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv21CapabilityPatch.java index 517286a888..2cb9322df4 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv21CapabilityPatch.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv21CapabilityPatch.java @@ -167,6 +167,5 @@ public class RMv21CapabilityPatch extends AbstractModuleComponent } } } - } - + } } diff --git a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/CapabilitiesTestSuite.java b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/CapabilitiesTestSuite.java index a21edd0d7c..8afdbbe829 100644 --- a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/CapabilitiesTestSuite.java +++ b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/CapabilitiesTestSuite.java @@ -21,9 +21,8 @@ package org.alfresco.module.org_alfresco_module_rm.test; import junit.framework.Test; import junit.framework.TestSuite; -import org.alfresco.module.org_alfresco_module_rm.test.capabilities.CapabilitiesTest; -import org.alfresco.module.org_alfresco_module_rm.test.capabilities.DeclarativeCapabilityTest; import org.alfresco.module.org_alfresco_module_rm.test.capabilities.CompositeCapabilityTest; +import org.alfresco.module.org_alfresco_module_rm.test.capabilities.DeclarativeCapabilityTest; /** @@ -41,7 +40,6 @@ public class CapabilitiesTestSuite extends TestSuite public static Test suite() { TestSuite suite = new TestSuite(); - suite.addTestSuite(CapabilitiesTest.class); suite.addTestSuite(DeclarativeCapabilityTest.class); suite.addTestSuite(CompositeCapabilityTest.class); return suite; diff --git a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/capabilities/CapabilitiesTest.java b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/capabilities/CapabilitiesTest.java deleted file mode 100644 index d43e722fd2..0000000000 --- a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/capabilities/CapabilitiesTest.java +++ /dev/null @@ -1,3504 +0,0 @@ -/* - * Copyright (C) 2005-2012 Alfresco Software Limited. - * - * This file is part of Alfresco - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - */ -package org.alfresco.module.org_alfresco_module_rm.test.capabilities; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.alfresco.module.org_alfresco_module_rm.capability.Capability; -import org.alfresco.module.org_alfresco_module_rm.capability.RMPermissionModel; -import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel; -import org.alfresco.module.org_alfresco_module_rm.test.util.BaseRMTestCase; -import org.alfresco.repo.security.authentication.AuthenticationUtil; -import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; -import org.alfresco.service.cmr.repository.NodeRef; -import org.alfresco.service.cmr.security.AccessPermission; -import org.alfresco.service.cmr.security.AccessStatus; -import org.alfresco.service.cmr.security.PermissionService; - -/** - * Test the RM permissions model - * - * @author Andy Hind - * @author Roy Wetherall - */ -public class CapabilitiesTest extends BaseRMTestCase implements - RMPermissionModel, RecordsManagementModel -{ - private NodeRef record; - private PermissionService permissionService; - - @Override - protected void initServices() - { - super.initServices(); - permissionService = (PermissionService) applicationContext.getBean("PermissionService"); - } - - @Override - protected boolean isUserTest() - { - return true; - } - - @Override - protected boolean isFillingForAllUsers() - { - return true; - } - - @Override - protected void setupTestDataImpl() - { - super.setupTestDataImpl(); - - record = utils.createRecord(rmFolder, "CapabilitiesTest.txt"); - } - - protected void check(Map access, String name, AccessStatus accessStatus) - { - Capability capability = capabilityService.getCapability(name); - assertNotNull(capability); - assertEquals(accessStatus, access.get(capability)); - } - - /** - * Test file plan as system - */ - public void testFilePlanAsSystem() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - // As system user - AuthenticationUtil - .setFullyAuthenticatedUser(AuthenticationUtil - .getSystemUserName()); - - Map access = capabilityService.getCapabilitiesAccessState(filePlan); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - public void testFilePlanAsAdmin() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(AuthenticationUtil - .getAdminUserName()); - Map access = capabilityService.getCapabilitiesAccessState(filePlan); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test file plan as administrator - */ - public void testFilePlanAsAdministrator() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(rmAdminName); - Map access = capabilityService.getCapabilitiesAccessState(filePlan); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - public void testFilePlanAsRecordsManager() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - Set permissions = permissionService - .getAllSetPermissions(filePlan); - for (AccessPermission ap : permissions) - { - System.out.println(ap.getAuthority() + " -> " - + ap.getPermission() + " (" - + ap.getPosition() + ")"); - } - - AuthenticationUtil - .setFullyAuthenticatedUser(recordsManagerName); - Map access = capabilityService.getCapabilitiesAccessState(filePlan); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - public void testFilePlanAsSecurityOfficer() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - List temp = new ArrayList(); - temp.add("ACCESS_AUDIT"); - capabilityService.getCapabilitiesAccessState(filePlan, temp); - - - AuthenticationUtil - .setFullyAuthenticatedUser(securityOfficerName); - Map access = capabilityService.getCapabilitiesAccessState(filePlan); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test file plan as power user - */ - public void testFilePlanAsPowerUser() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(powerUserName); - Map access = capabilityService.getCapabilitiesAccessState(filePlan); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.DENIED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.DENIED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.DENIED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test file plan as user - */ - public void testFilePlanAsUser() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(rmUserName); - Map access = capabilityService.getCapabilitiesAccessState(filePlan); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.DENIED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.DENIED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.DENIED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record category as system - */ - public void testRecordCategoryAsSystem() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(AuthenticationUtil.SYSTEM_USER_NAME); - - Map access = capabilityService.getCapabilitiesAccessState(rmContainer); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record category as admin - */ - public void testRecordCategoryAsAdmin() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(AuthenticationUtil - .getAdminUserName()); - Map access = capabilityService.getCapabilitiesAccessState(rmContainer); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record category as administrator - */ - public void testRecordCategoryAsAdministrator() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(rmAdminName); - Map access = capabilityService.getCapabilitiesAccessState(rmContainer); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record category as records manager - */ - public void testRecordCategoryAsRecordsManager() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(recordsManagerName); - // permissionService.setPermission(recordCategory_1, - // rm_records_manager, FILING, true); - Map access = capabilityService.getCapabilitiesAccessState(rmContainer); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record category as security officer - */ - public void testRecordCategoryAsSecurityOfficer() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(securityOfficerName); - // permissionService.setPermission(recordCategory_1, - // securityOfficerName, FILING, true); - Map access = capabilityService - .getCapabilitiesAccessState(rmContainer); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record category as power user - */ - public void testRecordCategoryAsPowerUser() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(powerUserName); - // permissionService.setPermission(rmContainer, - // powerUserName, FILING, true); - Map access = capabilityService - .getCapabilitiesAccessState(rmContainer); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.DENIED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.DENIED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.DENIED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record category as user - */ - public void testRecordCategoryAsUser() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(rmUserName); - // permissionService.setPermission(rmContainer, - // rmUserName, FILING, true); - Map access = capabilityService - .getCapabilitiesAccessState(rmContainer); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.DENIED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.DENIED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.DENIED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record folder as system - */ - public void testRecordFolderAsSystem() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(AuthenticationUtil.SYSTEM_USER_NAME); - - Map access = capabilityService - .getCapabilitiesAccessState(rmFolder); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.ALLOWED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.ALLOWED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.ALLOWED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); // rmFolder - // is - // not - // a - // vital - // record - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.ALLOWED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.ALLOWED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.ALLOWED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - - } - - /** - * Test record folder as admin - */ - public void testRecordFolderAsAdmin() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(AuthenticationUtil - .getAdminUserName()); - Map access = capabilityService - .getCapabilitiesAccessState(rmFolder); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.ALLOWED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.ALLOWED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.ALLOWED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.ALLOWED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.ALLOWED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.ALLOWED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - - } - - /** - * Test record folder as administrator - */ - public void testRecordFolderAsAdministrator() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(rmAdminName); - Map access = capabilityService - .getCapabilitiesAccessState(rmFolder); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.ALLOWED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.ALLOWED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.ALLOWED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.ALLOWED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.ALLOWED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.ALLOWED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record folder as records manager - */ - public void testRecordFolderAsRecordsManager() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil.setFullyAuthenticatedUser(recordsManagerName); - //setFilingOnRecordFolder(rmFolder, recordsManagerName); - Map access = capabilityService.getCapabilitiesAccessState(rmFolder); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.ALLOWED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.ALLOWED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.ALLOWED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.ALLOWED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.ALLOWED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.ALLOWED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record folder as security officer - */ - public void testRecordFolderAsSecurityOfficer() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil.setFullyAuthenticatedUser(securityOfficerName); - //setFilingOnRecordFolder(rmFolder, securityOfficerName); - Map access = capabilityService.getCapabilitiesAccessState(rmFolder); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.ALLOWED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.ALLOWED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record folder as power user - */ - public void testRecordFolderAsPowerUser() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil.setFullyAuthenticatedUser(powerUserName); - //setFilingOnRecordFolder(rmFolder, powerUserName); - Map access = capabilityService.getCapabilitiesAccessState(rmFolder); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.ALLOWED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.ALLOWED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.DENIED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.DENIED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.DENIED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record folder as user - */ - public void testRecordFolderAsUser() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(rmUserName); - //setFilingOnRecordFolder(rmFolder, rmUserName); - Map access = capabilityService - .getCapabilitiesAccessState(rmFolder); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.DENIED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.DENIED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.DENIED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record as system - */ - public void testRecordAsSystem() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil.setFullyAuthenticatedUser(AuthenticationUtil.SYSTEM_USER_NAME); - Map access = capabilityService.getCapabilitiesAccessState(record); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.ALLOWED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.ALLOWED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.ALLOWED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.UNDETERMINED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record as admin - */ - public void testRecordAsAdmin() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(AuthenticationUtil - .getAdminUserName()); - Map access = capabilityService - .getCapabilitiesAccessState(record); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.ALLOWED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.ALLOWED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.ALLOWED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.UNDETERMINED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record as administrator - */ - public void testRecordAsAdministrator() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(rmAdminName); - Map access = capabilityService - .getCapabilitiesAccessState(record); - - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.ALLOWED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.ALLOWED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.ALLOWED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.UNDETERMINED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record as records manager - */ - public void testRecordAsRecordsManager() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(recordsManagerName); - // setFilingOnRecord(record, recordsManagerName); - Map access = capabilityService - .getCapabilitiesAccessState(record); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.ALLOWED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.ALLOWED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.ALLOWED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.UNDETERMINED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS, AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.ALLOWED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.ALLOWED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.ALLOWED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_SELECTION_LISTS, - AccessStatus.ALLOWED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.ALLOWED); - check(access, EXPORT_AUDIT, AccessStatus.ALLOWED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.ALLOWED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.ALLOWED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, - AccessStatus.ALLOWED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.ALLOWED); - check(access, MAP_EMAIL_METADATA, AccessStatus.ALLOWED); - check(access, MOVE_RECORDS, AccessStatus.UNDETERMINED); - check(access, PASSWORD_CONTROL, AccessStatus.ALLOWED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.ALLOWED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.ALLOWED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record as security officer - */ - public void testRecordAsSecurityOfficer() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(securityOfficerName); - // setFilingOnRecord(record, securityOfficerName); - Map access = capabilityService - .getCapabilitiesAccessState(record); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.ALLOWED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.ALLOWED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.ALLOWED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.ALLOWED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test records as power user - */ - public void testRecordAsPowerUser() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - - AuthenticationUtil - .setFullyAuthenticatedUser(powerUserName); - // setFilingOnRecord(record, powerUserName); - Map access = capabilityService - .getCapabilitiesAccessState(record); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_RECORD_METADATA, - AccessStatus.ALLOWED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.DENIED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.DENIED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.DENIED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - /** - * Test record as user - */ - public void testRecordAsUser() - { - retryingTransactionHelper.doInTransaction( - new RetryingTransactionCallback() - { - @Override - public Object execute() throws Throwable - { - AuthenticationUtil - .setFullyAuthenticatedUser(rmUserName); - // setFilingOnRecord(record, rmUserName); - Map access = capabilityService - .getCapabilitiesAccessState(record); - // 58 + File - check(access, ACCESS_AUDIT, AccessStatus.DENIED); - check(access, ADD_MODIFY_EVENT_DATES, - AccessStatus.DENIED); - check(access, APPROVE_RECORDS_SCHEDULED_FOR_CUTOFF, - AccessStatus.DENIED); - check(access, ATTACH_RULES_TO_METADATA_PROPERTIES, - AccessStatus.DENIED); - check(access, AUTHORIZE_ALL_TRANSFERS, - AccessStatus.DENIED); - check(access, AUTHORIZE_NOMINATED_TRANSFERS, - AccessStatus.DENIED); - check(access, CHANGE_OR_DELETE_REFERENCES, - AccessStatus.DENIED); - check(access, CLOSE_FOLDERS, AccessStatus.DENIED); - check(access, CREATE_AND_ASSOCIATE_SELECTION_LISTS, - AccessStatus.DENIED); - check(access, - CREATE_MODIFY_DESTROY_CLASSIFICATION_GUIDES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_EVENTS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_METADATA, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FILEPLAN_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_FOLDERS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_RECORD_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_REFERENCE_TYPES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_ROLES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_TIMEFRAMES, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_DESTROY_USERS_AND_GROUPS, - AccessStatus.DENIED); - check(access, CREATE_MODIFY_RECORDS_IN_CUTOFF_FOLDERS, - AccessStatus.DENIED); - check(access, CYCLE_VITAL_RECORDS, AccessStatus.DENIED); - check(access, DECLARE_AUDIT_AS_RECORD, - AccessStatus.DENIED); - check(access, DECLARE_RECORDS, AccessStatus.ALLOWED); - check(access, DECLARE_RECORDS_IN_CLOSED_FOLDERS, - AccessStatus.DENIED); - check(access, DELETE_AUDIT, AccessStatus.DENIED); - check(access, DELETE_LINKS, AccessStatus.UNDETERMINED); - check(access, DELETE_RECORDS, AccessStatus.DENIED); - check(access, DESTROY_RECORDS, AccessStatus.DENIED); - check(access, - DESTROY_RECORDS_SCHEDULED_FOR_DESTRUCTION, - AccessStatus.DENIED); - check(access, DISPLAY_RIGHTS_REPORT, - AccessStatus.DENIED); - check(access, EDIT_DECLARED_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_NON_RECORD_METADATA, - AccessStatus.DENIED); - check(access, EDIT_RECORD_METADATA, AccessStatus.DENIED); - check(access, EDIT_SELECTION_LISTS, AccessStatus.DENIED); - check(access, ENABLE_DISABLE_AUDIT_BY_TYPES, - AccessStatus.DENIED); - check(access, EXPORT_AUDIT, AccessStatus.DENIED); - check(access, EXTEND_RETENTION_PERIOD_OR_FREEZE, - AccessStatus.DENIED); - check(access, MAKE_OPTIONAL_PARAMETERS_MANDATORY, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_CONTROLS, - AccessStatus.DENIED); - check(access, MANAGE_ACCESS_RIGHTS, AccessStatus.DENIED); - check(access, MANUALLY_CHANGE_DISPOSITION_DATES, - AccessStatus.DENIED); - check(access, MAP_CLASSIFICATION_GUIDE_METADATA, - AccessStatus.DENIED); - check(access, MAP_EMAIL_METADATA, AccessStatus.DENIED); - check(access, MOVE_RECORDS, AccessStatus.DENIED); - check(access, PASSWORD_CONTROL, AccessStatus.DENIED); - check(access, PLANNING_REVIEW_CYCLES, - AccessStatus.DENIED); - check(access, RE_OPEN_FOLDERS, AccessStatus.DENIED); - check(access, SELECT_AUDIT_METADATA, - AccessStatus.DENIED); - check(access, TRIGGER_AN_EVENT, AccessStatus.DENIED); - check(access, UNDECLARE_RECORDS, AccessStatus.DENIED); - check(access, UNFREEZE, AccessStatus.DENIED); - check(access, UPDATE_CLASSIFICATION_DATES, - AccessStatus.DENIED); - check(access, UPDATE_EXEMPTION_CATEGORIES, - AccessStatus.DENIED); - check(access, UPDATE_TRIGGER_DATES, AccessStatus.DENIED); - check(access, UPDATE_VITAL_RECORD_CYCLE_INFORMATION, - AccessStatus.DENIED); - check(access, UPGRADE_DOWNGRADE_AND_DECLASSIFY_RECORDS, - AccessStatus.DENIED); - check(access, VIEW_RECORDS, AccessStatus.ALLOWED); - check(access, VIEW_UPDATE_REASONS_FOR_FREEZE, - AccessStatus.DENIED); - - return null; - } - }, false, true); - } - - // private void setFilingOnRecord(NodeRef record, String authority) - // { - // NodeRef recordFolder = - // nodeService.getPrimaryParent(record).getParentRef(); - // permissionService.setPermission(recordFolder, authority, FILING, true); - // permissionService.setPermission(nodeService.getPrimaryParent(recordFolder).getParentRef(), - // authority, READ_RECORDS, true); - // } - // - // private void setFilingOnRecordFolder(NodeRef recordFolder, String - // authority) - // { - // permissionService.setPermission(recordFolder, authority, FILING, true); - // permissionService.setPermission(nodeService.getPrimaryParent(recordFolder).getParentRef(), - // authority, READ_RECORDS, true); - // } -}