Example #1
0
        public void Should_return_first_handler_returned_by_convention()
        {
            var expectedHandler = new ExceptionPolicyViolationHandler();
            var convention1     = new MockConvention(null);
            var convention2     = new MockConvention(expectedHandler);
            var convention3     = new MockConvention(null);
            var conventions     = new List <IPolicyViolationHandlerConvention>
            {
                convention1,
                convention2,
                convention3
            };

            var policy       = new IgnorePolicy();
            var policyResult = PolicyResult.CreateFailureResult(policy, "Access denied");
            var exception    = new PolicyViolationException(policyResult);
            var selector     = new PolicyViolationHandlerSelector(conventions);

            // Act
            var handler = selector.FindHandlerFor(exception);

            // Assert
            Assert.That(handler, Is.EqualTo(expectedHandler));
            Assert.That(convention1.WasCalled, Is.True);
            Assert.That(convention2.WasCalled, Is.True);
            Assert.That(convention3.WasCalled, Is.False);
        }
        public void Should_add_convention()
        {
            // Arrange
            var expectedConvention = new MockConvention();
            var conventions        = new Conventions();
            var expression         = new ViolationConfigurationExpression(conventions);

            // Act
            expression.AddConvention(expectedConvention);

            // Assert
            Assert.That(conventions.First(), Is.EqualTo(expectedConvention));
        }
        public void Should_add_convention()
        {
            // Arrange
            var model = new SecurityRuntime();
            var advancedConfiguration = new AdvancedConfiguration(model);
            var expectedConvention    = new MockConvention();

            // Act
            advancedConfiguration.Conventions(conventions => conventions.Add(expectedConvention));

            // Assert
            Assert.That(model.Conventions.Contains(expectedConvention), Is.True);
        }
Example #4
0
        public void Should_add_convention()
        {
            // Arrange
            var expectedConvention = new MockConvention();
            var conventions        = new List <IConvention>();
            var configuration      = TestDataFactory.CreatedValidViolationConfiguration(conventions);

            // Act
            configuration.AddConvention(expectedConvention);

            // Assert
            Assert.That(conventions.First(), Is.EqualTo(expectedConvention));
        }
        public void Should_remove_convention()
        {
            // Arrange
            var model = new SecurityRuntime();
            var advancedConfiguration = new AdvancedConfiguration(model);
            var convention            = new MockConvention();

            advancedConfiguration.Conventions(conventions => conventions.Add(convention));
            Assert.That(model.Conventions.Contains(convention), Is.True);

            // Act
            advancedConfiguration.Conventions(conventions => conventions.Remove(convention));

            // Assert
            Assert.That(model.Conventions.Contains(convention), Is.False);
        }
Example #6
0
        public void Should_return_null_when_no_convention_returns_handler()
        {
            var convention1 = new MockConvention(null);
            var convention2 = new MockConvention(null);
            var conventions = new List <IPolicyViolationHandlerConvention>
            {
                convention1,
                convention2
            };

            var policy       = new IgnorePolicy();
            var policyResult = PolicyResult.CreateFailureResult(policy, "Access denied");
            var exception    = TestDataFactory.CreatePolicyViolationException(policyResult);
            var selector     = new PolicyViolationHandlerSelector(conventions);

            // Act
            var handler = selector.FindHandlerFor(exception);

            // Assert
            Assert.That(handler, Is.Null);
            Assert.That(convention1.WasCalled, Is.True);
            Assert.That(convention2.WasCalled, Is.True);
        }