public void SetUp()
        {
            _builderMock = MockRepository.GenerateStrictMock <IAdviceBuilder>();
            _adviceBuilderFactoryMock = MockRepository.GenerateStrictMock <IAdviceBuilderFactory>();

            _transform = new CustomAttributeProviderTransform(_adviceBuilderFactoryMock);
        }
Пример #2
0
 public AspectBuilder(IAdviceBuilder adviceBuilder, IPointcutBuilder pointcutBuilder, IOrderingBuilder orderingBuilder, IInterTypeBuilder interTypeBuilder)
 {
     _adviceBuilder    = adviceBuilder;
     _pointcutBuilder  = pointcutBuilder;
     _orderingBuilder  = orderingBuilder;
     _interTypeBuilder = interTypeBuilder;
 }
        public void SetUp()
        {
            _attributeDeclarationProviderMock = MockRepository.GenerateStrictMock <IAttributeDeclarationProvider>();
            _customAttributeDataHelperMock    = MockRepository.GenerateStrictMock <ICustomAttributeDataHelper>();

            _provider = new MemberAttributeDeclarationProvider(_attributeDeclarationProviderMock, _customAttributeDataHelperMock);

            _fakeAdviceBuilder1 = ObjectMother.GetAdviceBuilder();
            _fakeAdviceBuilder2 = ObjectMother.GetAdviceBuilder();
            _fakeAdviceBuilder3 = ObjectMother.GetAdviceBuilder();
        }
Пример #4
0
        public void ModifyType_ContinuesForEmptyAdvices()
        {
            var emptyAdvices = new IAdviceBuilder[0];

            _adviceDeclarationProviderMock.Expect(x => x.GetDeclarations()).Return(emptyAdvices);
            _adviceDeclarationProviderMock.Expect(x => x.GetDeclarations(_mutableType)).Return(emptyAdvices);
            _adviceDeclarationProviderMock.Expect(x => x.GetDeclarations(Arg <MethodInfo> .Is.Anything)).Return(emptyAdvices).Repeat.Any();
            _adviceComposerMock
            .Expect(x => x.Compose(Arg <IEnumerable <IAdviceBuilder> > .Is.Anything, Arg <JoinPoint> .Is.Anything))
            .Return(new Advice[0]).Repeat.Any();

            _assembler.ModifyType(_mutableType);

            _weaverMock.AssertWasNotCalled(x => x.Weave(Arg <MethodInfo> .Is.Anything, Arg <IEnumerable <Advice> > .Is.Anything));
        }
        public void GetDeclarations()
        {
            var memberAttributeDeclarationProviderMock = MockRepository.GenerateStrictMock <IMemberAttributeDeclarationProvider> ();
            var method            = NormalizingMemberInfoFromExpressionUtility.GetMethod((DomainType obj) => obj.Method());
            var baseMethod        = NormalizingMemberInfoFromExpressionUtility.GetMethod((DomainTypeBase obj) => obj.Method());
            var fakeAdviceBuilder = new IAdviceBuilder[0];

            memberAttributeDeclarationProviderMock
            .Expect(x => x.GetAdviceBuilders(Arg.Is(method), Arg <IEnumerable <MemberInfo> > .List.Equal(new[] { method, baseMethod })))
            .Return(fakeAdviceBuilder);

            var provider = new MethodAttributeDeclarationProvider(memberAttributeDeclarationProviderMock);
            var result   = provider.GetDeclarations(method);

            memberAttributeDeclarationProviderMock.VerifyAllExpectations();
            Assert.That(result, Is.SameAs(fakeAdviceBuilder));
        }
Пример #6
0
        public void GetAdviceBuilders()
        {
            var customAttributeData     = ObjectMother.GetCustomAttributeData(typeof(AspectAttributeBase));
            var fakeAdviceBuilders1     = new IAdviceBuilder[0];
            var fakeAdviceBuilder1      = ObjectMother.GetAdviceBuilder();
            var fakeAdviceBuilder2      = ObjectMother.GetAdviceBuilder();
            var fakeClassAdviceBuilders = new[] { fakeAdviceBuilder1, fakeAdviceBuilder2 };

            _classDeclarationProviderMock
            .Expect(x => x.GetAdviceBuilders(typeof(AspectAttributeBase)))
            .Return(fakeAdviceBuilders1.AsOneTime());
            _customAttributeDataTransformMock
            .Expect(x => x.UpdateAdviceBuilders(customAttributeData, fakeAdviceBuilders1))
            .Return(fakeClassAdviceBuilders);

            var result = _provider.GetAdviceBuilders(customAttributeData).ToList();

            _classDeclarationProviderMock.VerifyAllExpectations();
            _customAttributeDataTransformMock.VerifyAllExpectations();
            Assert.That(result, Is.EquivalentTo(new[] { fakeAdviceBuilder1, fakeAdviceBuilder2 }));
        }