コード例 #1
0
        public void ShouldBuildAbstractTypeThenGetDecoratedWith4Args()
        {
            MockClass4 actual    = builder.BuildAssemblyFromType <MockClass4>(typeof(MockClass4), null);
            Decorator  decorator = new ObjectDecorator(new ObjectInstantiator());

            decorator.Decorate <MockClass4>(actual);
            Assert.AreEqual("some1helpme", actual.DoSomeMagic("some", 1, "help", "me"));
        }
コード例 #2
0
    public void ResolveWithOutInterface()
    {
        container.Register <MockClass4>();
        container.Register <MockClass5>();
        container.Register <MockClass6>();

        MockClass4 mock4 = container.Resolve <MockClass4>() as MockClass4;
        MockClass5 mock5 = container.Resolve <MockClass5>() as MockClass5;
        MockClass6 mock6 = container.Resolve <MockClass6>() as MockClass6;

        // Check that contructors have only been called once.
        Assert.AreEqual(1, MockClass4.constructorCalls);
        Assert.AreEqual(1, MockClass5.constructorCalls);
        Assert.AreEqual(1, MockClass6.constructorCalls);

        // Check that references in obejcts has been set with the correct references.
        Assert.IsNotNull(mock4.mock5);
        Assert.IsNotNull(mock4.mock6);
        Assert.IsNotNull(mock5.mock6);
        Assert.AreSame(mock4.mock5, mock5);
        Assert.AreSame(mock4.mock6, mock6);
        Assert.AreSame(mock4.mock6, mock5.mock6);
    }