public void EqualsObject_WithEqual() { SecurityContext left = SecurityContext.CreateStateless(typeof(SecurableObject)); SecurityContext right = SecurityContext.CreateStateless(typeof(SecurableObject)); Assert.That(left.Equals((object)right), Is.True); }
public void HasAccess_WithoutRequiredAccessTypesMatchingAllowedAccessTypes_ReturnsFalse() { _securityProviderMock .Expect(_ => _.GetAccess(SecurityContext.CreateStateless(_securableType), _principalStub)) .Return( new[] { AccessType.Get(GeneralAccessTypes.Delete), AccessType.Get(GeneralAccessTypes.Read) }); bool hasAccess = _strategy.HasAccess( _securableType, _securityProviderMock, _principalStub, new[] { AccessType.Get(GeneralAccessTypes.Create), AccessType.Get(GeneralAccessTypes.Delete), AccessType.Get(GeneralAccessTypes.Read) }); Assert.That(hasAccess, Is.EqualTo(false)); _securityProviderMock.VerifyAllExpectations(); }
public void Equals_WithStatefulAndStateless() { SecurityContext left = SecurityContext.CreateStateless(typeof(File)); SecurityContext right = SecurityContext.Create(typeof(File), null, null, null, new Dictionary <string, Enum>(), new Enum[0]); Assert.That(left.Equals(right), Is.False); Assert.That(right.Equals(left), Is.False); }
public void Test_WithSubtransaction_ViaDomainObjectQuery_EventIsExecutedInRoot() { _testHelper.AddExtension(_extension); _testHelper.ExpectSecurityProviderGetAccess(SecurityContext.CreateStateless(typeof(SecurableObject)), GeneralAccessTypes.Find); _testHelper.ReplayAll(); _testHelper.Transaction.QueryManager.GetCollection(_testHelper.CreateSecurableObjectQuery()); _testHelper.VerifyAll(); }
public void HasAccess_WithRequiredAccessTypesEmpty_ThrowsArgumentException() { _securityProviderMock .Expect(_ => _.GetAccess(SecurityContext.CreateStateless(_securableType), _principalStub)) .Return( new[] { AccessType.Get(GeneralAccessTypes.Read) }); Assert.That( () => _strategy.HasAccess(_securableType, _securityProviderMock, _principalStub, new AccessType[0]), Throws.ArgumentException.With.Message.EqualTo("Parameter 'requiredAccessTypes' cannot be empty.\r\nParameter name: requiredAccessTypes")); }
public void HasAccess_WithAllowedAccessTypesAreNull_ThrowsInvalidOperationException() { _securityProviderMock .Expect(_ => _.GetAccess(SecurityContext.CreateStateless(_securableType), _principalStub)) .Return(null); Assert.That( () => _strategy.HasAccess( _securableType, _securityProviderMock, _principalStub, new[] { AccessType.Get(GeneralAccessTypes.Find) }), Throws.InvalidOperationException.With.Message.EqualTo("GetAccess evaluated and returned null.")); _securityProviderMock.VerifyAllExpectations(); }
public void HasAccess_StaticMethod() { var securityContext = SecurityContext.CreateStateless(typeof(SecurableObject)); var securityContextFactoryStub = MockRepository.GenerateStub <ISecurityContextFactory>(); securityContextFactoryStub.Stub(mock => mock.CreateSecurityContext()).Return(securityContext); _securityProviderStub .Stub(mock => mock.GetAccess(securityContext, _securityPrincipalStub)) .Return(new[] { AccessType.Get(GeneralAccessTypes.Read) }); var securityClient = new SecurityClient( _securityProviderStub, new PermissionReflector(), _principalProviderStub, new FunctionalSecurityStrategy(), new ReflectionBasedMemberResolver()); var methodInfo = typeof(SecurableObject).GetMethod("IsValid", new[] { typeof(SecurableObject) }); var hasMethodAccess = securityClient.HasStaticMethodAccess(typeof(SecurableObject), methodInfo); Assert.That(hasMethodAccess, Is.True); }
private SecurityContext CreateContext <TClass>() where TClass : ISecurableObject { return(SecurityContext.CreateStateless(typeof(TClass))); }
private SecurityContext CreateStatelessTestSecurityContext() { return(SecurityContext.CreateStateless(typeof(File))); }
public void EqualsObject_WithObject() { SecurityContext context = SecurityContext.CreateStateless(typeof(SecurableObject)); Assert.That(context.Equals(new object()), Is.False); }
public void Equals_WithSame() { SecurityContext context = SecurityContext.CreateStateless(typeof(File)); Assert.That(context.Equals(context), Is.True); }
public void Equals_WithNull() { SecurityContext context = SecurityContext.CreateStateless(typeof(SecurableObject)); Assert.That(context.Equals(null), Is.False); }
ISecurityContext ISecurityContextFactory.CreateSecurityContext() { return(SecurityContext.CreateStateless(GetPublicDomainObjectType())); }