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); }
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); }
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); }