Ejemplo n.º 1
0
        public void get_entity_should_work()
        {
            //I will not mock the proxy factory and I will not mock any interceptor.

            var behaviorConfig = new Mock <IBehaviorConfigurator>();

            behaviorConfig.Setup(b => b.GetProxyInformation(typeof(A)))
            .Returns(new ProxyInformation(typeof(A),
                                          new List <Type> {
                typeof(INotifyPropertyChanged)
            },
                                          new List <Type> {
                typeof(NotifyPropertyChangedBehavior)
            }))
            .AtMostOnce();

            var kernelMock = new Mock <IKernel>();

            kernelMock.Setup(k => k[typeof(NotifyPropertyChangedBehavior)])
            .Returns(new NotifyPropertyChangedBehavior());

            var componentProxyFactory = new Castle.ComponentProxyFactory.ComponentProxyFactory(kernelMock.Object,
                                                                                               behaviorConfig.Object);

            var proxy = componentProxyFactory.GetEntity <A>();

            proxy.Should().Be.AssignableTo <A>();
            proxy.Should().Be.AssignableTo <INotifyPropertyChanged>();
        }
Ejemplo n.º 2
0
        public void when_entity_hasnot_behaviors_then_doesnt_generate_a_proxy()
        {
            //I will not mock the proxy factory and I will not mock any interceptor.

            var behaviorConfig = new Mock <IBehaviorConfigurator>();

            behaviorConfig.Setup(b => b.GetProxyInformation(typeof(A)))
            .Returns(new ProxyInformation(typeof(A),
                                          new List <Type>(),
                                          new List <Type>()))
            .AtMostOnce();

            var kernelMock = new Mock <IKernel>();

            var componentProxyFactory = new Castle.ComponentProxyFactory.ComponentProxyFactory(kernelMock.Object,
                                                                                               behaviorConfig.Object);

            var proxy = componentProxyFactory.GetEntity <A>();

            proxy.GetType().Should().Be.EqualTo(typeof(A));
        }