Ejemplo n.º 1
0
        public void IsValid_Valid()
        {
            AccessControlEntryValidationResult result = new AccessControlEntryValidationResult();

            Assert.That(result.IsValid, Is.True);
            Assert.That(result.GetErrors(), Is.Empty);
        }
Ejemplo n.º 2
0
        public void SetError()
        {
            AccessControlEntryValidationResult result = new AccessControlEntryValidationResult();

            result.SetError(AccessControlEntryValidationError.IsSpecificTenantMissing);

            Assert.That(result.GetErrors(), Is.EquivalentTo(new[] { AccessControlEntryValidationError.IsSpecificTenantMissing }));
        }
Ejemplo n.º 3
0
        public void ValidateGroupHierarchyCondition_IsValid_IfOwningGroup()
        {
            AccessControlEntry ace = _testHelper.CreateAceWithOwningGroup();

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.IsValid, Is.True);
        }
Ejemplo n.º 4
0
        public void ValidateSpecificPosition_IsValid()
        {
            var ace = _testHelper.CreateAceWithPositionAndGroupCondition(_testHelper.CreatePosition("Position"), GroupCondition.None);

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.IsValid, Is.True);
        }
Ejemplo n.º 5
0
        public void IsValid_NotValid()
        {
            AccessControlEntryValidationResult result = new AccessControlEntryValidationResult();

            result.SetError(AccessControlEntryValidationError.IsSpecificTenantMissing);

            Assert.That(result.IsValid, Is.False);
        }
Ejemplo n.º 6
0
        public void Validate_IsValid()
        {
            AccessControlEntry ace = AccessControlEntry.NewObject();

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.IsValid, Is.True);
        }
Ejemplo n.º 7
0
        public void ValidateTenantHierarchyCondition_IsValid_IfSpecificTenant()
        {
            Tenant             tenant = _testHelper.CreateTenant("TestTenant");
            AccessControlEntry ace    = _testHelper.CreateAceWithSpecificTenant(tenant);

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.IsValid, Is.True);
        }
Ejemplo n.º 8
0
        public void ValidateGroupHierarchyCondition_IsValid_IfSpecificGroup()
        {
            var group = _testHelper.CreateGroup("TestGroup", null, _testHelper.CreateTenant("TestTenant"));
            var ace   = _testHelper.CreateAceWithSpecificGroup(group);

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.IsValid, Is.True);
        }
Ejemplo n.º 9
0
        public void ValidateSpecificGroupType_IsValid_IfBranchOfOwningGroup()
        {
            var groupType = GroupType.NewObject();
            var ace       = _testHelper.CreateAceWithBranchOfOwningGroup(groupType);

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.IsValid, Is.True);
        }
Ejemplo n.º 10
0
        public void ValidateSpecificPosition_IsNotValidWithNull()
        {
            var ace = _testHelper.CreateAceWithPositionAndGroupCondition(_testHelper.CreatePosition("Position"), GroupCondition.None);

            ace.SpecificPosition = null;

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.GetErrors(), Is.EqualTo(new object[] { AccessControlEntryValidationError.IsSpecificPositionMissing }));
        }
Ejemplo n.º 11
0
        public void ValidateTenantHierarchyCondition_IsNotValidWithParent_IfOwningTenant()
        {
            AccessControlEntry ace = _testHelper.CreateAceWithOwningTenant();

            ace.TenantHierarchyCondition = TenantHierarchyCondition.Parent;

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.GetErrors(), Is.EqualTo(new object[] { AccessControlEntryValidationError.IsTenantHierarchyConditionOnlyParent }));
        }
Ejemplo n.º 12
0
        public void ValidateGroupHierarchyCondition_IsNotValidWithChildren_IfOwningGroup()
        {
            AccessControlEntry ace = _testHelper.CreateAceWithOwningGroup();

            ace.GroupHierarchyCondition = GroupHierarchyCondition.Children;

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.GetErrors(), Is.EqualTo(new object[] { AccessControlEntryValidationError.IsGroupHierarchyConditionOnlyChildren }));
        }
Ejemplo n.º 13
0
        public void ValidateSpecificUser_IsValid()
        {
            var tenant = _testHelper.CreateTenant("TestTenant");
            var user   = _testHelper.CreateUser("TestUser", "user", "user", null, _testHelper.CreateGroup("TestGroup", null, tenant), tenant);
            var ace    = _testHelper.CreateAceWithSpecificUser(user);

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.IsValid, Is.True);
        }
Ejemplo n.º 14
0
        public void ValidateGroupHierarchyCondition_IsNotValidWithChildren_IfSpecificGroup()
        {
            var group = _testHelper.CreateGroup("TestGroup", null, _testHelper.CreateTenant("TestTenant"));
            var ace   = _testHelper.CreateAceWithSpecificGroup(group);

            ace.GroupHierarchyCondition = GroupHierarchyCondition.Children;

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.GetErrors(), Is.EqualTo(new object[] { AccessControlEntryValidationError.IsGroupHierarchyConditionOnlyChildren }));
        }
Ejemplo n.º 15
0
        public void ValidateSpecificGroupType_IsNotValidWithNull_IfBranchOfOwningGroup()
        {
            var groupType = GroupType.NewObject();
            var ace       = _testHelper.CreateAceWithBranchOfOwningGroup(groupType);

            ace.SpecificGroupType = null;

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.GetErrors(), Is.EqualTo(new object[] { AccessControlEntryValidationError.IsSpecificGroupTypeMissing }));
        }
Ejemplo n.º 16
0
        public void ValidateSpecificGroup_IsNotValidWithNull()
        {
            var group = _testHelper.CreateGroup("TestGroup", null, _testHelper.CreateTenant("TestTenant"));
            var ace   = _testHelper.CreateAceWithSpecificGroup(group);

            ace.SpecificGroup = null;

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.GetErrors(), Is.EqualTo(new object[] { AccessControlEntryValidationError.IsSpecificGroupMissing }));
        }
Ejemplo n.º 17
0
        public void ValidateTenantHierarchyCondition_IsNotValidWithUndefined_IfSpecificTenant()
        {
            Tenant             tenant = _testHelper.CreateTenant("TestTenant");
            AccessControlEntry ace    = _testHelper.CreateAceWithSpecificTenant(tenant);

            ace.TenantHierarchyCondition = TenantHierarchyCondition.Undefined;

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.GetErrors(), Is.EqualTo(new object[] { AccessControlEntryValidationError.IsTenantHierarchyConditionMissing }));
        }
Ejemplo n.º 18
0
        public void ValidateSpecificTenant_IsNotValidWithNull()
        {
            Tenant             tenant = _testHelper.CreateTenant("TestTenant");
            AccessControlEntry ace    = _testHelper.CreateAceWithSpecificTenant(tenant);

            ace.SpecificTenant = null;

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.GetErrors(), Is.EqualTo(new object[] { AccessControlEntryValidationError.IsSpecificTenantMissing }));
        }
Ejemplo n.º 19
0
        public void ValidateSpecificUser_IsNotValidWithNull()
        {
            var tenant = _testHelper.CreateTenant("TestTenant");
            var user   = _testHelper.CreateUser("TestUser", "user", "user", null, _testHelper.CreateGroup("TestGroup", null, tenant), tenant);
            var ace    = _testHelper.CreateAceWithSpecificUser(user);

            ace.SpecificUser = null;

            AccessControlEntryValidationResult result = ace.Validate();

            Assert.That(result.GetErrors(), Is.EqualTo(new object[] { AccessControlEntryValidationError.IsSpecificUserMissing }));
        }
Ejemplo n.º 20
0
        public void ValidateGroupConditionWhenObjectIsDeleted_DoesNotThrow()
        {
            var group = _testHelper.CreateGroup("TestGroup", null, _testHelper.CreateTenant("TestTenant"));
            var ace   = _testHelper.CreateAceWithSpecificGroup(group);

            using (ClientTransaction.Current.CreateSubTransaction().EnterDiscardingScope())
            {
                ace.SpecificGroup = null;
                ace.Delete();

                AccessControlEntryValidationResult result = ace.Validate();

                Assert.That(result.IsValid, Is.True);
                Assert.That(ace.State, Is.EqualTo(StateType.Deleted));
            }
        }
Ejemplo n.º 21
0
        public void GetErrorMessage()
        {
            AccessControlEntryValidationResult result = new AccessControlEntryValidationResult();

            result.SetError(AccessControlEntryValidationError.IsSpecificGroupMissing);
            result.SetError(AccessControlEntryValidationError.IsSpecificTenantMissing);

            using (new CultureScope(""))
            {
                Assert.That(
                    result.GetErrorMessage(),
                    Is.EqualTo(
                        "The access control entry is in an invalid state:\r\n"
                        + "  The TenantCondition property is set to SpecificTenant, but no SpecificTenant is assigned.\r\n"
                        + "  The GroupCondition property is set to SpecificGroup, but no SpecificGroup is assigned."));
            }
        }