public void ActionWith4RefArguments_AnnotatedWithMultipleOnMethodBoundaryAspects_ReturnsTheCorrectSequenceOfAdvices() { var instance = container.Resolve<IActionWith4RefArgumentsComposite>(); var joinPoints = new MultipleOnMethodBoundaryAspectOrderedJoinPoints().Calculate(); instance.MultipleOnMethodBoundaryAspects(ref i, ref j, ref k, ref l); Assert.AreEqual(i, joinPoints); Assert.AreEqual(j, joinPoints); Assert.AreEqual(k, joinPoints); Assert.AreEqual(l, joinPoints); }
public void ActionWith5Arguments_AnnotatedWithOnMethodBoundaryAspectThatRaisesAnExceptionInMethodInvocationWithDefaultFlowBehaviour_ThrowsException() { var instance = container.Resolve<IActionWith5ArgumentsComposite>(); var first = new List<AspectJoinPoints>(); var second = new List<AspectJoinPoints>(); var third = new List<AspectJoinPoints>(); var fourth = new List<AspectJoinPoints>(); var fifth = new List<AspectJoinPoints>(); var joinPoints = new MultipleOnMethodBoundaryAspectOrderedJoinPoints(); instance.OnMethodBoundaryAspectThatRaiseAnExceptionInMethodImpl(first, second, third, fourth, fifth); }
public void ActionWith5Arguments_AnnotatedWithMultipleOnMethodBoundaryAspects_ReturnsTheCorrectSequenceOfAdvices() { var instance = container.Resolve<IActionWith5ArgumentsComposite>(); var first = new List<AspectJoinPoints>(); var second = new List<AspectJoinPoints>(); var third = new List<AspectJoinPoints>(); var fourth = new List<AspectJoinPoints>(); var fifth = new List<AspectJoinPoints>(); var joinPoints = new MultipleOnMethodBoundaryAspectOrderedJoinPoints(); instance.MultipleOnMethodBoundaryAspects(first, second, third, fourth, fifth); CollectionAssert.AreEqual(first, joinPoints); CollectionAssert.AreEqual(second, joinPoints); CollectionAssert.AreEqual(third, joinPoints); CollectionAssert.AreEqual(fourth, joinPoints); CollectionAssert.AreEqual(fifth, joinPoints); CollectionAssert.DoesNotContain(first, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(second, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(third, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(fourth, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(fifth, AspectJoinPoints.OnException); }
public void FunctionWith8Arguments_AnnotatedWithMultipleOnMethodBoundaryAspects_ReturnsTheCorrectSequenceOfAdvices() { var instance = container.Resolve<IFunctionWith8ArgumentsComposite>(); var first = new List<AspectJoinPoints>(); var second = new List<AspectJoinPoints>(); var third = new List<AspectJoinPoints>(); var fourth = new List<AspectJoinPoints>(); var fifth = new List<AspectJoinPoints>(); var sixth = new List<AspectJoinPoints>(); var seventh = new List<AspectJoinPoints>(); var eighth = new List<AspectJoinPoints>(); var joinPoints = new MultipleOnMethodBoundaryAspectOrderedJoinPoints(); var result = instance.MultipleOnMethodBoundaryAspects(first, second, third, fourth, fifth, sixth, seventh, eighth); CollectionAssert.AreEqual(first, joinPoints); CollectionAssert.AreEqual(second, joinPoints); CollectionAssert.AreEqual(third, joinPoints); CollectionAssert.AreEqual(fourth, joinPoints); CollectionAssert.AreEqual(fifth, joinPoints); CollectionAssert.AreEqual(sixth, joinPoints); CollectionAssert.AreEqual(seventh, joinPoints); CollectionAssert.AreEqual(eighth, joinPoints); CollectionAssert.DoesNotContain(first, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(second, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(third, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(fourth, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(fifth, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(sixth, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(seventh, AspectJoinPoints.OnException); CollectionAssert.DoesNotContain(eighth, AspectJoinPoints.OnException); Assert.AreEqual(result, new ReturnValueAspectOrderedJoinPoints(joinPoints).ToString()); }
public void FunctionWith7RefArguments_AnnotatedWithMultipleOnMethodBoundaryAspects_ReturnsTheCorrectSequenceOfAdvices() { var instance = container.Resolve<IFunctionWith7RefArgumentsComposite>(); var result = instance.MultipleOnMethodBoundaryAspects(ref i, ref j, ref k, ref l, ref m, ref n, ref o); var joinPoints = new MultipleOnMethodBoundaryAspectOrderedJoinPoints(); var calculated = joinPoints.Calculate(); Assert.AreEqual(i, calculated); Assert.AreEqual(j, calculated); Assert.AreEqual(k, calculated); Assert.AreEqual(l, calculated); Assert.AreEqual(m, calculated); Assert.AreEqual(n, calculated); Assert.AreEqual(o, calculated); Assert.AreEqual(result, new ReturnValueAspectOrderedJoinPoints(joinPoints).ToString()); }
public void FunctionWith1Argument_AnnotatedWithMultipleOnMethodBoundaryAspects_ReturnsTheCorrectSequenceOfAdvices() { var instance = container.Resolve<IFunctionWith1ArgumentComposite>(); var list = new List<AspectJoinPoints>(); var joinPoints = new MultipleOnMethodBoundaryAspectOrderedJoinPoints(); var result = instance.MultipleOnMethodBoundaryAspects(list); CollectionAssert.AreEqual(list, joinPoints); CollectionAssert.DoesNotContain(list, AspectJoinPoints.OnException); Assert.AreEqual(result, new ReturnValueAspectOrderedJoinPoints(joinPoints).ToString()); }