public void Should_resolve_instance_of_Handler2_and_return_it()
        {
            // Arrange
            var expectedHandler = new Handler2();
            var convention      = new DefaultPolicyViolationHandlerIsOfTypeConvention <Handler2>();

            convention.PolicyViolationHandlerProvider = t => expectedHandler;
            var exception = TestDataFactory.CreateExceptionFor(new IgnorePolicy());

            // Act
            var handler = convention.GetHandlerFor(exception);

            // Assert
            Assert.That(handler, Is.EqualTo(expectedHandler));
        }
        public void Should_resolve_instances_from_container()
        {
            // Arrange
            var expectedHandler = new Handler1();

            FakeIoC.GetAllInstancesProvider = () => new List <object> {
                expectedHandler
            };
            SecurityConfigurator.Configure(configuration => configuration.ResolveServicesUsing(FakeIoC.GetAllInstances));
            var convention = new DefaultPolicyViolationHandlerIsOfTypeConvention <Handler1>();
            var exception  = TestDataFactory.CreateExceptionFor(new IgnorePolicy());

            // Act
            var handler = convention.GetHandlerFor(exception);

            // Assert
            Assert.That(handler, Is.EqualTo(expectedHandler));
        }